Foros del Web » Programando para Internet » PHP »

Problema con las malditas comillas, html, php y mysql.

Estas en el tema de Problema con las malditas comillas, html, php y mysql. en el foro de PHP en Foros del Web. Buenas, es algo que creo que todo el mundo que trabaja con html, php y una bbdd tiene. A ver, no soy capaz de escribir ...
  #1 (permalink)  
Antiguo 22/11/2012, 11:47
 
Fecha de Ingreso: abril-2011
Mensajes: 23
Antigüedad: 13 años
Puntos: 2
Problema con las malditas comillas, html, php y mysql.

Buenas, es algo que creo que todo el mundo que trabaja con html, php y una bbdd tiene.

A ver, no soy capaz de escribir una comilla ", pasarla a php como $quote; y que se grabe en la bbdd como $quote. Para que? Pues porque cuando leo de la bbdd cargo lo que leo en un link y claro, con las comillas dobles (o simples, me da lo mismo) el link se me fastidia y ya no puedo llamar bien a la funcion de javascript.

He probado todas las combinaciones que se me ocurren de "htmlentities", con el ENT_QUOTES, ENT_NOQUOTES y todo eso. También el utf8_encode y utf8_decode, pero no doy con la solución.

A ver si me podéis echar una manilla.

Un saludo.
  #2 (permalink)  
Antiguo 22/11/2012, 12:27
Avatar de bng5  
Fecha de Ingreso: junio-2009
Ubicación: 127.0.0.1
Mensajes: 269
Antigüedad: 14 años, 10 meses
Puntos: 24
Respuesta: Problema con las malditas comillas, html, php y mysql.

Si lo que pretendes es escribir comillas en una URL tendrías que usar la función urlencode.
  #3 (permalink)  
Antiguo 22/11/2012, 12:31
 
Fecha de Ingreso: abril-2011
Mensajes: 23
Antigüedad: 13 años
Puntos: 2
Respuesta: Problema con las malditas comillas, html, php y mysql.

Es que no es una url como tal, es así:

<a href="" onclick="javascript:enviaDatos(AQUI VA EL TEXTO QUE SACO DE LA BBDD)">
  #4 (permalink)  
Antiguo 22/11/2012, 18:07
 
Fecha de Ingreso: enero-2007
Mensajes: 285
Antigüedad: 17 años, 3 meses
Puntos: 21
Respuesta: Problema con las malditas comillas, html, php y mysql.

sera esto lo que pretendes?

Código PHP:
<a href="" onclick="javascript:enviaDatos('<?php echo $variable_de_bd;?>')">
el texto no deberia tener comillas y si las tiene.. usa alguna funcion de escape como addslashes();

Código PHP:
<a href="" onclick="javascript:enviaDatos('<?php echo addslashes$variable_de_bd);?>')">
ni tampoco saltos de linea en blanco.. osea

Código HTML:
hola <br> amigo
esta bien.. pero

Código HTML:
hola 
<br>
amigo
te va a dar error tendrias que ver que carateres tiene que generan esos salto y reemplazarlocon str_replace() si ese es tu problema avisa y lo vemos
  #5 (permalink)  
Antiguo 23/11/2012, 02:18
 
Fecha de Ingreso: abril-2011
Mensajes: 23
Antigüedad: 13 años
Puntos: 2
Respuesta: Problema con las malditas comillas, html, php y mysql.

Bueno, el problema de los caracteres de html lo tengo solucionado con htmlentities.

Mira, para que os hagais una idea este es el codigo:

[php]
while ($res = mysql_fetch_array($result_pag_data)) {
echo "<a class='editar' onclick='javascript:cambiarText(this,\"".htmlentit ies($res['ID_ENTRADA'])."\",\"".htmlentities($res['TITULO'])."\",\"".htmlentities($res['SUBTITULO'])."\",\"".htmlentities($res['TEXTO'])."\")'>
Editar </a>";
}
[php]

He quitado muchisimas cosas que hay entre medias, pero ese es el problema que tengo.

Si en "$res['TEXTO']" hay comillas (o en el resto de $res[algo]) se me fastidia el link.

$res['TEXTO'] lleva por ejemplo esto: <p>Hola esto es un ejemplo <strong>¡que bien!</strong></p>

Si dentro de ese ejemplo, no van comillas, funciona perfectamente, pero si hay, se fastidia todo.

Muchas gracias por la ayuda.

Un saludo.

P.D: voy a probar con el str_replace a ver que consigo.
  #6 (permalink)  
Antiguo 23/11/2012, 02:29
 
Fecha de Ingreso: abril-2011
Mensajes: 23
Antigüedad: 13 años
Puntos: 2
Respuesta: Problema con las malditas comillas, html, php y mysql.

Perfecto!

Por fin lo consigo. Lo he resuelto de esta manera:

htmlentities(addslashes($res['TEXTO']))

Así de simple, me escapea las comillas y me lo hace perfecto.

Muchas gracias :')

Un saludo!
  #7 (permalink)  
Antiguo 23/11/2012, 02:51
 
Fecha de Ingreso: octubre-2011
Mensajes: 113
Antigüedad: 12 años, 5 meses
Puntos: 5
Respuesta: Problema con las malditas comillas, html, php y mysql.

Cita:
Iniciado por Dracknes Ver Mensaje
Perfecto!

Por fin lo consigo. Lo he resuelto de esta manera:

htmlentities(addslashes($res['TEXTO']))

Así de simple, me escapea las comillas y me lo hace perfecto.

Muchas gracias :')

Un saludo!
precisamente te lo iba a comentar :DD

PHP tb tiene otra función que hace la función inversa.

Si lo que PHP no tenga,,,,
  #8 (permalink)  
Antiguo 23/11/2012, 02:53
 
Fecha de Ingreso: abril-2011
Mensajes: 23
Antigüedad: 13 años
Puntos: 2
Respuesta: Problema con las malditas comillas, html, php y mysql.

Sip, ya lo he visto, estoy dejando las cosas bien y tambien he visto mysql_real_escape_string que tambien me viene bien.

Bueno, pues eso es todo,

de nuevo muchas gracias.

Etiquetas: comillas, 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 21:44.