Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: Lupin en 20 Agosto 2011, 00:55 am



Título: Problemas con comillas y slashes que se anidan !!!
Publicado por: Lupin en 20 Agosto 2011, 00:55 am
Una consulta muchachos , resulta que al poner comillas  "Hola" me sale al editar /"Hola/" y al editar de  nuevo  ///"Hola///"  y asi sucesivamente  hasta que se llena mi campo de la tabla :-\.
Tengo mi base de datos en mysql.
¿conocen laguna funcion que me evite anidar los "/" ?
Uso htmlentities
Gracias


Título: Re: Problemas con comillas y slashes que se anidan !!!
Publicado por: Shell Root en 20 Agosto 2011, 04:52 am
Muéstranos todo el código, no creo que solo sea esa función.


Título: Re: Problemas con comillas y slashes que se anidan !!!
Publicado por: Nakp en 20 Agosto 2011, 07:56 am
no guardes con htmlentities, usa mysql_real_escape_string()


Título: Re: Problemas con comillas y slashes que se anidan !!!
Publicado por: Lupin en 20 Agosto 2011, 21:16 pm
la verdad estoy ultilizando el editor de texto "Tiny_mce"
Rescato el texto en un formulario  de esta forma
Código
  1. <td>Texto:</td><td><textarea rows="15" cols="54"
  2.     name="texto"  /><?php echo htmlentities($texto); ?>
  3.  
  4.  

y lo guardo con esto:


Código
  1. $titulo2 = protege_entradas(substr($titulo,0,100));
  2. $encabezado2 = protege_entradas(substr($encabezado,0,348));
  3. $texto2 = $texto
  4. $sql="UPDATE Articulos SET titulo='$titulo2',".
  5.         "encabezado='$encabezado2', texto='$texto2', fecha=now()".
  6.          "WHERE id_articulo='$id'";
  7.  
  8. $result = mysql_query($sql);
  9.  
  10.  

Y de esta manera se me van acumulando los slash....por otro lado las entradas en "tiny_mce" no la puedo proteger porque se me acumula un monton de datos que rabasan el campo de mi tabla.... ¿algun idea? amigos  :-[ :-[ :-[
Probare con  mysql_real_escape_string
Gracias


Título: Re: Problemas con comillas y slashes que se anidan !!!
Publicado por: Shell Root en 22 Agosto 2011, 20:35 pm
Que tiene la función protege_entradas?


Título: Re: Problemas con comillas y slashes que se anidan !!!
Publicado por: Lupin en 23 Agosto 2011, 02:24 am
Solo una proteccion basica !!!
Código
  1. function protege_entradas($texto) {
  2. $texto = htmlentities ($texto);
  3. $texto = htmlspecialchars ($texto);
  4. $texto = trim ($texto);
  5. return $texto;
  6.  
  7.  
Pero el caso es que no lo uso al introducir datos con el "tiny_mce".


Título: Re: Problemas con comillas y slashes que se anidan !!!
Publicado por: Nakp en 23 Agosto 2011, 17:32 pm
pues guarda solo usando el mysql_real_scape_string() y al mostrar los datos (no al guardar) utiliza el htmlentities ENT_QUOTES y hasta ahí :P no necesitas mas


Título: Re: Problemas con comillas y slashes que se anidan !!!
Publicado por: Lupin en 15 Septiembre 2011, 02:45 am
Jeje Uff recien aparezco por aqui
Gracias por su ayuda muchachos pero solucione el asunto con 
stripslashes para mostrar
y addslashes para actualizar la base de datos (update)
La verdad estaba leyendo acerca de mysql_real_scape_string()  y no lo llege a entender  ;D


Título: Re: Problemas con comillas y slashes que se anidan !!!
Publicado por: Carluís en 1 Octubre 2011, 00:10 am
Bueno quiero dar una función que seguramente te será útil, estoy de acuerdo con Nakp
pues guarda solo usando el mysql_real_scape_string() y al mostrar los datos (no al guardar) utiliza el htmlentities ENT_QUOTES y hasta ahí :P no necesitas mas


Debería utilizar un código como el siguiente:

Código:
function Security($_Cadena) {
$_Cadena = htmlspecialchars(trim(addslashes(stripslashes(strip_tags($_Cadena)))));
$_Cadena = str_replace(chr(160),'',$_Cadena);
return mysql_real_escape_string($_Cadena);
}