Problema con str_replace
Publicado por Ale (54 intervenciones) el 03/10/2016 03:29:52
Buenas, vuelvo a molestar por ayuda...tengo una carga de datos con Jeditable y utiliza un archivo save.php en donde toma el valor de campos de textos y los guarda en BD... como toma comentarios en italiano, las comillas simples me daba error, por el tema de ser letras prohibidas y reservadas para programcion, php no soporta escapar nada de esto, entonces recurrí al srt_replace para que, al colocar una comilla en alguna parte del comentario, ésta sea reemplazada por dos comillas y, así, poder guardar el comentario y mostrar solo una, escapándose por la doble comilla y mostrarndo solo una... el comando en cuestion que tengo armado y funcionando es éste:
El tema es que, con Jeditable, se actualiza en tiempo real al hacer "onblur" y, si apretan más de una vez el campo para escribir, sin recargar la página, se guardan dos comillas...entonces, ponen 1, aparecen 2 y si apretan nuevamente , son 4 y 8 y asi hasta el fin de los tiempos... hay alguna forma de que SOLO duplique cuando sea una sola comilla y no dos?
Por si no se entiende, dejo un gif que grabé con la animación del problema. Al hacer click fuera del campo, éste se guarda con dos comillas, que es lo que quiero, porque al recargar la página muestra una...pero si antes de recargarlahago click de nuevo, se regenera el doble de comillas...:

1
$value = htmlentities(str_replace(array("'"), "''", $_POST['value']));
El tema es que, con Jeditable, se actualiza en tiempo real al hacer "onblur" y, si apretan más de una vez el campo para escribir, sin recargar la página, se guardan dos comillas...entonces, ponen 1, aparecen 2 y si apretan nuevamente , son 4 y 8 y asi hasta el fin de los tiempos... hay alguna forma de que SOLO duplique cuando sea una sola comilla y no dos?
Por si no se entiende, dejo un gif que grabé con la animación del problema. Al hacer click fuera del campo, éste se guarda con dos comillas, que es lo que quiero, porque al recargar la página muestra una...pero si antes de recargarlahago click de nuevo, se regenera el doble de comillas...:

Valora esta pregunta


0