Test Foro de elhacker.net SMF 2.1

Programación => Desarrollo Web => 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 (php-brief) [Seleccionar]

$fname = "Impulso";
$lname = "SF";
$username = "1mpuls0";

$lname = mysql_real_escape_string($lname);
$query = "INSERT INTO ".$table." VALUES('".$fname."','".$lname."','".$username."');";
echo $query.PHP_EOL;
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
Cita de: GenR_18 en 22 Agosto 2013, 19:16 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