update una tabla registros registro para insertar formulario ejemplos editar datos consulta con boton actualizar php mysql database phpmyadmin blogs

una - Actualizar consulta PHP MySQL



php mysql ejemplos (7)

Debe tener comillas simples para cualquier contenido de VARCHAR en sus consultas. Entonces su consulta de actualización debería ser:

mysql_query("UPDATE blogEntry SET content = ''$udcontent'', title = ''$udtitle'' WHERE id = $id");

Además, es una mala forma actualizar su base de datos directamente con el contenido de un POST. Debe desinfectar sus datos entrantes con la función mysql_real_escape_string.

¿Alguien puede ayudarme a entender por qué esta consulta de actualización no actualiza los campos en mi base de datos? Tengo esto en mi página php para recuperar los valores actuales de la base de datos:

<?php $query = mysql_query ("SELECT * FROM blogEntry WHERE username = ''bobjones'' ORDER BY id DESC"); while ($row = mysql_fetch_array ($query)) { $id = $row[''id'']; $username = $row[''username'']; $title = $row[''title'']; $date = $row[''date'']; $category = $row[''category'']; $content = $row[''content'']; ?>

Aquí estoy mi Formulario HTML:

<form method="post" action="editblogscript.php"> ID: <input type="text" name="id" value="<?php echo $id; ?>" /><br /> Username: <input type="text" name="username" value="<?php echo $_SESSION[''username'']; ?>" /><br /> Title: <input type="text" name="udtitle" value="<?php echo $title; ?>"/><br /> Date: <input type="text" name="date" value="<?php echo $date; ?>"/><br /> Message: <textarea name = "udcontent" cols="45" rows="5"><?php echo $content; ?></textarea><br /> <input type= "submit" name = "edit" value="Edit!"> </form>

y aquí está mi ''editblogscript'':

<?php mysql_connect ("localhost", "root", ""); mysql_select_db("blogass"); if (isset($_POST[''edit''])) { $id = $_POST[''id'']; $udtitle = $_POST[''udtitle'']; $udcontent = $_POST[''udcontent'']; mysql_query("UPDATE blogEntry SET content = $udcontent, title = $udtitle WHERE id = $id"); } header( ''Location: index.php'' ) ; ?>

No entiendo por qué no funciona.


Primero, debe definir "no funciona".
En segundo lugar, supongo que su campo de tabla ''contenido'' es varchar / text, por lo que debe encerrarlo entre comillas. content = ''{$content}''
Y por último pero no menos importante: use echo mysql_error() directamente después de una consulta para depurar.


Sin saber cuál es el error real que está recibiendo, supongo que le faltan comillas. intente lo siguiente:

mysql_query("UPDATE blogEntry SET content = ''$udcontent'', title = ''$udtitle'' WHERE id = ''$id''")


debes escribir comillas simples, luego comillas dobles, luego el punto antes del nombre del campo y después de ese modo

mysql_query("UPDATE blogEntry SET content =''".$udcontent."'', title = ''".$udtitle."'' WHERE id = ''".$id."'' ");


Aquí actualicé dos variables y presenté la fecha y la hora

$ id = "1";
$ title = "phpmyadmin";

$sql= mysql_query("UPDATE table_name SET id =''".$id."'', title = ''".$title."'',now() WHERE id = ''".$id."'' ");

la función now () actualiza la fecha y hora actual.

note: For update query we have define the particular id otherwise it update whole table defaulty


Es necesario agregar presupuesto para esa necesidad de usar el operador punto:

mysql_query("UPDATE blogEntry SET content = ''".$udcontent."'', title = ''".$udtitle."'' WHERE id = ''".$id."''");


Actualizar una fila o columna de una tabla

$update = "UPDATE daily_patients SET queue_status = ''pending'' WHERE doctor_id = $room_no and serial_number= $serial_num"; if ($con->query($update) === TRUE) { echo "Record updated successfully"; } else { echo "Error updating record: " . $con->error; }