Título: Problemas al insertar datos con php en mysql Publicado por: Ali Baba en 30 Junio 2018, 02:44 am Estoy intentando insertar el titulo de una pagina en una base de datos que un webcrawler me extrae. Este es el codigo php del webcrawler y me funciona perfectamente:
Código
pero en la parte de insertar en la tabla prueba el valor me sale este error que dice ser un error de sintaxis en sql, quisiera saber que error estoy cometiendo: Citar Fatal error: Uncaught PDOException: SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''title') VALUES (Google)' at line 1 in C:\xampp\htdocs\webcrawler\php-web-crawler\index.php:29 Stack trace: #0 C:\xampp\htdocs\webcrawler\php-web-crawler\index.php(29): PDOStatement->execute(Array) #1 {main} thrown in C:\xampp\htdocs\webcrawler\php-web-crawler\index.php on line 29 la linea 29 hace referencia al array que se pasa al execute() Título: Re: Problemas al insertar datos con php en mysql Publicado por: Necronomicon.93 en 30 Junio 2018, 03:59 am hola magodesian, espero poder ayudarte.. creo que tenes que poner comillas a
( ' title_out ' )"; por lo que veo dice que es un error de sintaxis en sql.. proba si es eso..no estoy del todo seguro..proba con las comillas , creo que va asi..sino proba de ponerlas de esta forma $sql = "INSERT INTO prueba('title') VALUES (' "$title_out ' ")"; escapando las comillas. Título: Re: Problemas al insertar datos con php en mysql Publicado por: Ali Baba en 30 Junio 2018, 04:19 am hola magodesian, espero poder ayudarte.. creo que tenes que poner comillas a ( ' title_out ' )"; por lo que veo dice que es un error de sintaxis en sql.. proba si es eso..no estoy del todo seguro..proba con las comillas , creo que va asi..sino proba de ponerlas de esta forma $sql = "INSERT INTO prueba('title') VALUES (' "$title_out ' ")"; escapando las comillas. Con esa sintaxis me da este error: Citar Parse error: syntax error, unexpected '$title_out' (T_VARIABLE) in C:\xampp\htdocs\webcrawler\php-web-crawler\index.php on line 24 Título: Re: Problemas al insertar datos con php en mysql Publicado por: Necronomicon.93 en 30 Junio 2018, 14:13 pm Asi con comillas simples ya probaste no tambien?
$sql = "INSERT INTO prueba('title') VALUES (' $title_out ')"; o asi $sql = "INSERT INTO prueba('title') VALUES (' . title_out . ')"; no puedo ayudarte mucho mas..no se me ocurre nada. Título: Re: Problemas al insertar datos con php en mysql Publicado por: #!drvy en 2 Julio 2018, 00:40 am Creo que te has liado con como funcionan las queries preparadas.
1. El problema que te tira, es que esas poniendo prueba('title'), cuando indicas que solo quieres afectar a X columnas de esa forma, no puedes poner los nombres entre comillas, ha de ir a pelo. 2. Si estas preparando una sentencia, no pases el valor antes de tiempo. Literalmente estas pasando el valor que obtienes en la propia sentencia, antes de prepararla. Y eso es no hacer nada. Además lo invocas de una forma errónea. Código
Saludos |