Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Consulta guardar carácteres en bd - php

Estas en el tema de Consulta guardar carácteres en bd - php en el foro de PHP en Foros del Web. Hola, quiero hacer un insert de un campo texto en la base de datos mediante php. Tengo un problema, el campo texto es un campo ...
  #1 (permalink)  
Antiguo 09/05/2013, 07:28
 
Fecha de Ingreso: febrero-2012
Mensajes: 28
Antigüedad: 8 años
Puntos: 2
Consulta guardar carácteres en bd - php

Hola, quiero hacer un insert de un campo texto en la base de datos mediante php.
Tengo un problema, el campo texto es un campo en el cual se guardan descripciones grandes, de más de 300 carácteres.

EL problema reside aquí, en la descripción pueden haber " , ' ; puede haber cualquier tipo de carácter y quiero que se almacene, la cuestión es que al ejecutar en php la consulta peta porque lo interpreta como código html-php y no como datos a guardar.

Cómo puedo solucionar esto? Un saludo
  #2 (permalink)  
Antiguo 09/05/2013, 08:25
Avatar de repara2  
Fecha de Ingreso: septiembre-2010
Ubicación: München
Mensajes: 2.445
Antigüedad: 9 años, 5 meses
Puntos: 331
Respuesta: Consulta guardar carácteres en bd - php

peta porque lo interpreta como código html-php y no como datos a guardar. esto es incorrecto, simplemente estás haciendo mal la concatenación. Comprueba tu código, salu2.
__________________
Fere libenter homines, id quod volunt, credunt.
  #3 (permalink)  
Antiguo 09/05/2013, 08:29
 
Fecha de Ingreso: febrero-2012
Mensajes: 28
Antigüedad: 8 años
Puntos: 2
Respuesta: Consulta guardar carácteres en bd - php

Cita:
Iniciado por repara2 Ver Mensaje
peta porque lo interpreta como código html-php y no como datos a guardar. esto es incorrecto, simplemente estás haciendo mal la concatenación. Comprueba tu código, salu2.
Considero que lo estoy haciendo bien, dado que los inserts me los hace perfectamente. El problema es cuando en el campo texto un usuario guarda este tipo de signos: " " ' ' . Ahí el código se desmorona y deja de funcionar. A mí me interesa guardar esos carácteres dado que es para un catálogo con descripciones y lo necesito.
  #4 (permalink)  
Antiguo 09/05/2013, 10:06
 
Fecha de Ingreso: febrero-2012
Mensajes: 28
Antigüedad: 8 años
Puntos: 2
Respuesta: Consulta guardar carácteres en bd - php

Por si no me he explicado correctamente, voy a repetir lo que necesito explicándolo de otra forma.

Necesito guardar mediante una consulta lanzada desde php, en un campo de la base de datos cualquier tipo de carácter. Comillas simples, comillas dobles, punto y coma, cualquier tipo de carácter. El problema reside en que al lanzar la consulta me da fallos si añado estos carácteres anteriormente mencionados.

Todo esto estará en una variable llamada $texto la cual pondré en el insert into de la consulta.
  #5 (permalink)  
Antiguo 09/05/2013, 12:38
 
Fecha de Ingreso: abril-2008
Ubicación: El Salvador
Mensajes: 736
Antigüedad: 11 años, 10 meses
Puntos: 47
Respuesta: Consulta guardar carácteres en bd - php

Mira lo que necesitas hacer es escapar la cadena antes de insertarla en la base de datos.


http://php.net/manual/es/mysqli.real-escape-string.php
  #6 (permalink)  
Antiguo 09/05/2013, 13:55
 
Fecha de Ingreso: febrero-2012
Mensajes: 28
Antigüedad: 8 años
Puntos: 2
Respuesta: Consulta guardar carácteres en bd - php

Cita:
Iniciado por alex1084 Ver Mensaje
Mira lo que necesitas hacer es escapar la cadena antes de insertarla en la base de datos.


[url]http://php.net/manual/es/mysqli.real-escape-string.php[/url]
Gracias por responder, ya lo he hecho, y como me inserten un punto y coma después de unas comillas ya no inserta todo lo que va detrás
  #7 (permalink)  
Antiguo 09/05/2013, 14:08
 
Fecha de Ingreso: abril-2008
Ubicación: El Salvador
Mensajes: 736
Antigüedad: 11 años, 10 meses
Puntos: 47
Respuesta: Consulta guardar carácteres en bd - php

como asi?? podrias mostrar exactamente como te queda la consulta???
  #8 (permalink)  
Antiguo 09/05/2013, 16:51
 
Fecha de Ingreso: febrero-2012
Mensajes: 28
Antigüedad: 8 años
Puntos: 2
Respuesta: Consulta guardar carácteres en bd - php

Acabo de solucionarlo. Era la codificación, no la tenía en utf8 la tenía en utf8mb64 y por eso guardaba mal las comillas o directamente ni las guardaba.

Si a alguien le pasa lo mismo que a mí que cambie la codificación o como el usuario PiradoIV de otro foro me ha recomendado, que utilice la función serialize() - unserialize() para guardar los datos en un campo TEXT.

Eso en caso de que no necesitéis indexarlos. Un saludo.

Etiquetas: bd, html
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:57.