Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Problema con comillas dobles, simples en PHP + MYSQL

Estas en el tema de Problema con comillas dobles, simples en PHP + MYSQL en el foro de PHP en Foros del Web. Buenas! Tengo un problema al procesar un formulario HTML que contacta con un PHP que a su vez ingresa en MYSQL. Concretamente el problema viene ...
  #1 (permalink)  
Antiguo 25/04/2013, 20:32
Avatar de alberthp  
Fecha de Ingreso: abril-2013
Mensajes: 12
Antigüedad: 6 años, 7 meses
Puntos: 0
Problema con comillas dobles, simples en PHP + MYSQL

Buenas!

Tengo un problema al procesar un formulario HTML que contacta con un PHP que a su vez ingresa en MYSQL. Concretamente el problema viene cuando en uno de estos campos de formulario (exactamente el título) le pongo alguna comilla doble (") o simples (').

He estado googleando sobre cómo solucionarlo y he leído en varias ocasiones que se soluciona con el addslashes() y quitando el magic_quotes_gpc. Bien, lo he hecho. No funciona. He seguido mirando... he encontrado el mysql_real_escape_string() y tampoco me funciona. He visto un caso similar al mío que se solucionaba con el html_entities(addslashes($variable)).

A mi no me funciona...

Si alguien me pudiese ayudar... estoy bastante desesperado ya xD

Inserto fragmentos de código, a ver si ayudan en algo.

Código PHP:
<select id="edicion" name="edicion">
<option value=""> - Selecciona - </option>
<?php
$sql 
"SELECT * FROM tabla";
$ejecuta mysql_query($sql$con);
while (
$res mysql_fetch_array($ejecuta))
{
$titol stripslashes($res['titol']);
echo 
'<option value="'.$titol.'">'.$titol.'</option>';
}
?>
</select>
Código PHP:
if (isset($_POST['titol5'])) {$titol $_POST['titol5'];} else {$titol '';}


htmlentities(addslashes($titol));

if (
$titol != '')
{
    
$sql "INSERT INTO noticias (titol, texto) VALUES ('$titol', '$esp')";
    
$ejecuta mysql_query($sql$con);


Muchas gracias.
  #2 (permalink)  
Antiguo 25/04/2013, 20:49
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 11 años, 7 meses
Puntos: 2534
Respuesta: Problema con comillas dobles, simples en PHP + MYSQL

Pues es evidente que no sabes usar funciones, como aquí:
Código PHP:
htmlentities(addslashes($titol)); 
Esa linea no afecta en nada a la variable $titol pues no estás asignando el resultado de nuevo.

Así es como deberías usarla:
Código PHP:
$titol htmlentities(addslashes($titol)); 
Sentido común es lo que te hace falta, probablemente es por eso que de todos los intentos que haces ningún te sirve, curiosamente.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 26/04/2013, 04:51
Avatar de alberthp  
Fecha de Ingreso: abril-2013
Mensajes: 12
Antigüedad: 6 años, 7 meses
Puntos: 0
Respuesta: Problema con comillas dobles, simples en PHP + MYSQL

Muchas gracias por tu rápida y amable respuesta ;)

Y lo que me faltan son conocimientos, no sentido común, pero eso cada día se va solucionando.

Etiquetas: comillas, dobles, formulario, html, mysql, select, simples, sql, tabla
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 20:55.