Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: kakashi20 en 21 Agosto 2013, 17:42 pm



Título: error insertar comilla
Publicado por: kakashi20 en 21 Agosto 2013, 17:42 pm
hola

cuando trato de insetar en mysql texto en ingles tales como:

What's in the Box


me sale este 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 's in the BoxWhat's in the BoxVAIO T15 SVT151' at line 1


supongo que es por la comilla simple.

Como podría hacer para insertar el texto sin que me salga el error ?

gracias por la ayuda


Título: Re: error insertar comilla
Publicado por: 1mpuls0 en 21 Agosto 2013, 17:50 pm
Utiliza la función "mysql_real_escape_string" de PHP para escapar las comillas simples se encuentran dentro de una cadena de texto. Esto se logra agregando una barra invertida (/) antes de la comilla simple. Permitiendo que la comilla simple sea vista como parte del valor de cadena y se inserte correctamente.

Saludos.


Título: Re: error insertar comilla
Publicado por: kakashi20 en 21 Agosto 2013, 18:10 pm
gracias por la ayuda


Título: Re: error insertar comilla
Publicado por: 1mpuls0 en 21 Agosto 2013, 18:29 pm
Es algo así.

Código
  1. $fname = "Impulso";
  2. $lname = "SF";
  3. $username = "1mpuls0";
  4.  
  5. $lname = mysql_real_escape_string($lname);
  6. $query = "INSERT INTO ".$table." VALUES('".$fname."','".$lname."','".$username."');";
  7. echo $query.PHP_EOL;
  8.  


Título: Re: error insertar comilla
Publicado por: GenR_18 en 22 Agosto 2013, 19:16 pm
La liberia mysql_* está obsoleta, te recomiendo usar PDO ;D

Salu2


Título: Re: error insertar comilla
Publicado por: #!drvy en 22 Agosto 2013, 19:32 pm
La liberia mysql_* está obsoleta, te recomiendo usar PDO ;D

Salu2

O mysqli si va a trabajar específicamente con bases de datos mysql pues esta le gana hasta 6% mas de velocidad respecto a PDO.

Saludos