[Php-avanzado] Comillas escapadas...

Silverzero silverzero.52 en gmail.com
Mar Mar 16 23:34:00 ARST 2010


Hola a todos,

Tengo un problema en el sitio de mi tesis.
En el php.ini hay: php_flag magic_quotes_gpc 0, y antes de insertar a
la DB utilizo mysql_real_escape_string.

Cuando el form no pasa la validación, imprime las advertencias e
imprime los campos que ya fueron completados, y éstos (aca viene el
problema) si contienen comillas simples las escapa y si hay comillas
dobles, todo el texto que encierran desaparece y en su lugar imprime
una barra invertida.

Ya hablé con el soporte del hosting y dicen que probaron poner
php_flag magic_quotes_gpc 0 de manera global, pero aún así no
funcionó. Probé instalando todo el sitio en otro hosting y sin embargo
sigue sucediendo lo mismo.

Acá les envío el formulario, pero lo resumí con un campo sólo, para
que sea más fácil la lectura.

Saludos!

<?php
//valor vacío asi no imprime errores cuando no encuentra definida la variable

$l_titulo="";

   if (isset($_POST['pub_lug'])){

       $seccion="lugares";
       $l_titulo=$_POST['titulo'];

       //valida
       if ($l_titulo==""){

            $l_alertTit="<span class=\"warning\">No te olvides de
completar el nombre del lugar.</span>";

       }else{

              $l_titulo=mysql_real_escape_string($titulo);

              $sql="INSERT INTO $seccion SET
                       titulo='$l_titulo'
                       fecha=NOW();";

             $result=mysql_query($sql,$link)or die(mysql_error());

            print "Publicacion exitosa";

            //doy valor vacío a los campos para q no se impriman luego
de enviado
           $l_titulo="";

        }
   }
?>


<form action="user.php?req=pub#lugares" method="post"
enctype="multipart/form-data" name="form">

<label>Nombre del lugar</label>
<?php print $l_alertTit; ?>
<input name="titulo" type="text" value="<?php print $l_titulo; ?>" />
<input name="pub_lug" type="submit" class="bttn" value="Publicar"
id="pub_lug" />

</form>

-- 
Carolina Derromediz
Cel. +54 223 5301599


Más información sobre la lista de distribución Php-avanzado