No estoy seguro de cómo preguntar esto de manera concisa, así que lo explicaré a través del contexto situacional.Prevención de sobreescrituras simultáneas al editar una fila de MySQL a través de PHP
Usuario-A decide que quiere modificar una fila de MySQL a través de un formulario HTML. Simultáneamente, User-B decide que también quiere modificar la misma fila de MySQL de la misma manera.
diremos el MySQL-fila es un campo de texto que contiene el texto, 'Can\'t touch this'
Los dos usuarios no tienen conocimiento de eachothers intenciones.
El usuario A realiza un cambio significativo en la fila MySQL y la guarda en la base de datos. La fila MySQL se convierte en 'Can\'t touch this was a popular track by the Hip-Hop artist M.C. Hammer.'
El usuario B realiza un cambio menor en la fila MySQL y la guarda en la base de datos. El MySQL-fila se convierte en 'Cannot touch this. Please avoid contractions.'
Debido a que el usuario B decidió modificar el MySQL-fila antes de que el usuario Un terminó su modificación, la modificación del usuario-Un hecho se sobrescribe por la modificación realizada por el usuario-B.
¿Cómo lidiar con esto las secuencias de comandos que permiten la edición simultánea de filas de bases de datos (como MediaWiki o cualquier otro software wiki)?
AFAIK mediawiki no permite la edición simultánea de sus documentos. La última vez que revisé indican si alguien está editando el documento y le dicen que evite hacer cambios mientras tanto. – Gal
Hace unas semanas, SO permitió esta edición simultánea, sobrescribiendo sin rodeos las ediciones anteriores sin previo aviso. Por el momento, este sitio muestra un mensaje de error que alguien más editó una publicación (o propuso una edición), impidiéndome así (guardar temporalmente) un mensaje editado, permitiéndome perder tiempo y energía en una edición inútil. Por cierto, creo que intercambiaste los resultados en el penúltimo párrafo. –
@sombe Ese es el método que utilicé anteriormente. Sin embargo, encontré un error ya que el cierre tenía un tiempo de expiración que los usuarios legítimamente haciendo una edición larga excederían y luego no podrían enviar porque se convirtió en libre y fue bloqueado por otra persona. – Kairu