Foros del Web » Programando para Internet » PHP »

[Soluciondo]Comillas y los formularios

Estas en el tema de [Soluciondo]Comillas y los formularios en el foro de PHP en Foros del Web. Hola: Tengo un problema importante con mis formularios, y es que no puedo hacer para que cuando se escriban unas comillas (") se sustituyan por ...
  #1 (permalink)  
Antiguo 18/10/2009, 05:49
 
Fecha de Ingreso: noviembre-2007
Ubicación: Madrid, España
Mensajes: 23
Antigüedad: 16 años, 5 meses
Puntos: 1
Pregunta [Soluciondo]Comillas y los formularios

Hola:

Tengo un problema importante con mis formularios, y es que no puedo hacer para que cuando se escriban unas comillas (") se sustituyan por " (las comillas en html). Si fuese yo quen tuviese que actualizar las páginas con los formularios, no me importaría ponerlas directamente en html, pero es para un cliente que no tieneni idea de html, y necesito que cuando él coloque en el formulario algo entre comillas, que se cambien automáticamente por ".

Pensé, en un primer momento, que con htmlentities podría, paro veo que no, porque si coloca las comillas lo interpreta como que quiero cerrar la enumeración, y no es eso :S

Si alguien sabe como hacerlo, se lo agradecería. El formulario es en php y tiene dos páginas: Una para poner los datos, y otra que los procesa y los inserta en una base de datos.

Gracias de antemano,
Sorlak.

Última edición por Sorlak; 18/10/2009 a las 08:31 Razón: Solucionado.
  #2 (permalink)  
Antiguo 18/10/2009, 05:54
Avatar de Kenichi  
Fecha de Ingreso: enero-2009
Ubicación: Rosario, Argentina
Mensajes: 160
Antigüedad: 15 años, 3 meses
Puntos: 6
Respuesta: Comillas y los formularios

Hola sorlak,
para este problemas tienes mas de una solucion, pudes usar:
Código PHP:
<?php
// No entiendo porque dices que te daba problemas esto
htmlentities($texto);
// Aqui hay otra muy parecida a la anterior
htmlspecialchars($texto);
// O como me gusta decir a mi "lo hago manualmente":
str_replace('"','&quot;'$texto);
?>
Como ves tienes para elegir :P
__________________
Cansado de tener que hacer webs con doble login, o no entender nada del codigo de phpBB? Usa un sistema de foros simple, usa Linken Foros
  #3 (permalink)  
Antiguo 18/10/2009, 06:54
 
Fecha de Ingreso: noviembre-2007
Ubicación: Madrid, España
Mensajes: 23
Antigüedad: 16 años, 5 meses
Puntos: 1
Respuesta: Comillas y los formularios

hola:

No entiendo el primer uso que das, es de htmlentities. yo lo tengo así:
Código PHP:
<?php

require ("conexion.php");

echo 
$conexion;

$contenido $_POST["contenido"];
$titulo $_POST["titulo"];
$autor $_POST["autor"];
$seccion $_POST["seccion"];
$numero $_POST["numero"];

$cadena htmlentities("áÁÁÉíóúé´ñáéíóúÁÉÍÓÚàèìòùÀÈÌÒÙâêîôûÂÊÎÔÛäëïöüÄËÏÖÜñÑ<>");
echo  
$cadena;

mysql_query("INSERT INTO $sql_datos (titulo, autor, contenido, seccion, numero) VALUES ('$titulo','$autor','$contenido','seccion','numero')");

mysql_close();

?>
Donde conexión.php es donde tengo almacenados todos los datos de conexión con mysql y $conexion es la variable que te dice si se ha podido conectar o ha dado error. ¿Tu dices que lo devería poner así?:
Código PHP:
<?php

require ("conexion.php");

echo 
$conexion;

$contenido htmlentities($_POST["contenido"]);
$titulo htmlentities($_POST["titulo"]);
$autor htmlentities($_POST["autor"]);
$seccion htmlentities($_POST["seccion"]);
$numero htmlentities($_POST["numero"]);

mysql_query("INSERT INTO $sql_datos (titulo, autor, contenido, seccion, numero) VALUES ('$titulo','$autor','$contenido','seccion','numero')");

mysql_close();

?>
Gracias por responder,
Sorlak.
  #4 (permalink)  
Antiguo 18/10/2009, 07:43
Avatar de darkasecas  
Fecha de Ingreso: marzo-2005
Ubicación: SantaCata, NL, Mexico
Mensajes: 1.553
Antigüedad: 19 años, 1 mes
Puntos: 77
Respuesta: Comillas y los formularios

Exactamente, asi es como funciona htmlentities, le pasas como parametro la cadena que quieres convertir y la funcion devuelve una cadena ya con las entidades convertidas :)
  #5 (permalink)  
Antiguo 18/10/2009, 08:30
 
Fecha de Ingreso: noviembre-2007
Ubicación: Madrid, España
Mensajes: 23
Antigüedad: 16 años, 5 meses
Puntos: 1
Respuesta: Comillas y los formularios

Vale, muchas gracias por aclararme el concepto. (y tanto tiempo usándolo mal... ). Pues otra duda resuelta, muuuuchas gracias, en serio, a los dos.

Saludos y agradecimientos,
Sorlak.
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 18:26.