No puedo modificar la tabla DB porque me detecta ',

Iniciado por Drakaris, 18 Abril 2018, 22:21 PM

0 Miembros y 1 Visitante están viendo este tema.

Drakaris

Hola tengo un formulario dónde tengo que especificar que tabla de la base de datos tengo que modificar. Pero cuando le doy en modificar, me sale un error error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' materia=, asunto=ddddfdsffa, tarea=, evento=dddddfdWHERE fecha=2018-04-12, tipo' at line 1


<?php
$servername 
"xxxxxxx";
$username "xxxxxxxx";
$password "xxxxxxx";
$dbname "xxxxxxx";

// Create connection
$conn = new mysqli($servername$username$password$dbname);
// Check connection
if ($conn->connect_error) {
    die(
"Desconectado" $conn->connect_error);

$fecha$_POST['seleccionar_fecha'];
$tipoevento_se $_POST['especificar_tipoEventos'];
$materia_se $_POST['especificar_materiabox'];
$asunto_se $_POST['especificar_asuntobox'];
mysql_real_escape_string($conn$_POST['seleccionar_fecha']);
mysql_real_escape_string($conn$_POST['especificar_asuntobox']);
mysql_real_escape_string($conn$_POST['especificar_materiabox']);
mysql_real_escape_string($conn$_POST['especificar_TipoEventos']);
$tipoevento $_POST['modificar_tipoEventos'];
$otro $_POST['modificar_otroTipoEventos'];
$materia $_POST['modificar_materiabox'];
$asunto $_POST['modificar_asuntobox'];
$tarea $_POST['modificar_tareabox'];
$evento $_POST['modificar_eventobox'];
mysql_real_escape_string($conn$_POST['modificar_tipoEventos']);
mysql_real_escape_string($conn$_POST['modificar_otroTipoEventos']);
mysql_real_escape_string($conn$_POST['modificar_materiabox']);
mysql_real_escape_string($conn$_POST['modificar_asuntobox']);
mysql_real_escape_string($conn$_POST['modificar_tareabox']);
mysql_real_escape_string($conn$_POST['modificar_eventobox']);
$sql "UPDATE 1esoacalendar SET tipoevento=".$tipoevento.", otro=".$otro.", materia=".$materia.", asunto=".$asunto.", tarea=".$tarea.", evento=".$evento."WHERE fecha=".$fecha.", tipoevento=".$tipoevento_se.", materia=".$materia_se.", asunto=".$asunto_se."";

if (
$conn->query($sql) === TRUE) {
    echo 
$sql;
} else {
    echo 
"error: ".$conn-> error;
}
$conn->close();
?>


No sé de donde sale esa comilla. Y creo que en teoría esta bien.
$sql = "UPDATE 1esoacalendar SET tipoevento=".$tipoevento.", otro=".$otro.", materia=".$materia.", asunto=".$asunto.", tarea=".$tarea.", evento=".$evento."WHERE fecha=".$fecha.", tipoevento=".$tipoevento_se.", materia=".$materia_se.", asunto=".$asunto_se."";

Gracias por vuestra atención
Lo increible, no es lo que ves, sino como es

vicram10

todos los campos que son "string" deben ir dentro de comilla simple, y los numericos no hace falta, estas haciendo de esa manera?