Foros del Web » Programando para Internet » PHP »

problema con comillas

Estas en el tema de problema con comillas en el foro de PHP en Foros del Web. tengo un formulario para enviar mails en html y le implementé una vista previa, cuando envío el formulario para la vista previa me muestra arriba ...
  #1 (permalink)  
Antiguo 03/04/2005, 12:23
Avatar de satake  
Fecha de Ingreso: julio-2004
Mensajes: 140
Antigüedad: 19 años, 8 meses
Puntos: 0
problema con comillas

tengo un formulario para enviar mails en html y le implementé una vista previa, cuando envío el formulario para la vista previa me muestra arriba el resultado y abajo un formulario para modificar algo si se quiere, pero lo que me pasa es que me muestra mal el texto en el campo del mensaje, ya que en el hay comillas del codigo html y me las toma mal, ya que en ese campo del formulario tengo esto:
Código HTML:
 <textarea rows="14" name="mensaje" cols="66" value="<?php echo $mensaje; ?>"></textarea> 
he probado con funciones como stripslashes y str_replace pero no he conseguido hacer nada, espero me puedan ayudar
__________________
:aplauso: www.aponlinevillaguay.com.ar :aplauso:

Cita:
Iniciado por alguien
El arca de Noé fue hecha por principiantes, el Titanic por "profesionales".
  #2 (permalink)  
Antiguo 03/04/2005, 12:29
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Hola satake

Me parece que en este caso no tiene porque afectarte las comillas. Lo que ocurres es que no has puesto la variable en el sitio adecuado:
Código PHP:
<textarea rows="14" name="mensaje" cols="66" ><?php echo $mensaje?></textarea>
Espero que te funcione. Saludos.
  #3 (permalink)  
Antiguo 03/04/2005, 12:33
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Se me olvidaba. Si en alguna ocasión necesitas que la variable vaya entre comillas, puedes utilizar htmlentities()
Código PHP:
<input type="input" value="<?php echo htmlentities($mensaje); ?>" />
Acabo de probarlo y me ha funcionado bien.

Saludos,
  #4 (permalink)  
Antiguo 04/04/2005, 20:25
Avatar de satake  
Fecha de Ingreso: julio-2004
Mensajes: 140
Antigüedad: 19 años, 8 meses
Puntos: 0
dos botones diferente accion

bueno, me funciono bien tu codigo, la verdad te recontra agradezco, ya que recien me estoy iniciando en esto de php y todavia no tengo claros algunos conceptos, pero avanzo cuando tengo tiempo, lo que quisiera saber ahora es si se puede poner por ejemplo en el formulario un boton de enviar y uno de vista previa y cuando haga clack en enviar me ejecute la accion enviar y cuando haga click en vista previa me ejecuta la accion previa, que seria index.php?accion=eviar y index.php?accion=previa
que son las dos acciones que tengo definidas en el codigo
__________________
:aplauso: www.aponlinevillaguay.com.ar :aplauso:

Cita:
Iniciado por alguien
El arca de Noé fue hecha por principiantes, el Titanic por "profesionales".
  #5 (permalink)  
Antiguo 05/04/2005, 08:22
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
satake

Eso lo puedes resolver de dos formas principalmente (con sus variantes):

Javascript
* Cambiando dinámicamente el valor de un campo oculto (hidden) para indicar el valor de tu variable de control "accion"

PHP
Basandote en el nombre de tu botón y su existencia .. así determinarás que hacer ..

<input type="submit" name="enviar" value=" Enviar Formulario ">
<input type="submit" name="previa" value=" Enviar Formulario ">

Código PHP:
if (isset($_POST['enviar'])){
// hacer lo que tengas que hacer ..
}

if (isset(
$_POST['previa'])){
// etc 

Un saludo,
  #6 (permalink)  
Antiguo 05/04/2005, 10:21
Avatar de satake  
Fecha de Ingreso: julio-2004
Mensajes: 140
Antigüedad: 19 años, 8 meses
Puntos: 0
como hago esto?

como puedo hacer esto?

Código PHP:
if (isset($_POST['enviar'])){ 
//aqui tendría que enviarme hacia html.php?accion=enviar

if (isset(
$_POST['previa'])){ 
//y aqui tendría que enviarme hacia html.php?accion=previa

quisiera saber si se puede hacer esto, en vez de meter todo el codigo de cada accion entre llave y llave

tambien quuiero saber si esto se pondría así dentro de la acción "envío", o como iría sino es de esta forma

Código PHP:
elseif ($_GET["accion"] == "envio") {
if (isset(
$_POST['enviar'])){ 
//aqui tendría que enviarme hacia html.php?accion=enviar

if (isset(
$_POST['previa'])){ 
//y aqui tendría que enviarme hacia html.php?accion=previa
}

__________________
:aplauso: www.aponlinevillaguay.com.ar :aplauso:

Cita:
Iniciado por alguien
El arca de Noé fue hecha por principiantes, el Titanic por "profesionales".

Última edición por satake; 05/04/2005 a las 10:32
  #7 (permalink)  
Antiguo 05/04/2005, 11:43
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
No entendí lo que preguntas en la primera parte .. Pero, lo que corresponde a la solución vía PHP que te hacía mención se basa en la existencia de tal variable ..

Recuerda que isset() dice "verdadero" si existe .. y "falso" sino .. lo mismo que hacer $_GET['blabla'] == "valor" .. si coincide te devolverá "verdadero" y sino "falso".

Código PHP:
elseif (isset($_POST["accion"])) { 
Pero .. como te comenté .. vía javascript puedes resolver el tema también .. es más puedes tener una variable oculta hidden en tu fomualrio llamado "accion" y cambiar su valor dinámicamente por javacript ante la pulsación de tu botón+submit del formulario automático también por javascript.

Un saludo,
  #8 (permalink)  
Antiguo 05/04/2005, 16:27
Avatar de satake  
Fecha de Ingreso: julio-2004
Mensajes: 140
Antigüedad: 19 años, 8 meses
Puntos: 0
java

no pude hacer funcionar lo que me pasaste, alguien sabe como se hace con javascript?
__________________
:aplauso: www.aponlinevillaguay.com.ar :aplauso:

Cita:
Iniciado por alguien
El arca de Noé fue hecha por principiantes, el Titanic por "profesionales".
  #9 (permalink)  
Antiguo 06/04/2005, 01:37
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Hola de nuevo.

Con JavaScript puedes cambiar el action del form en el momento de pulsar el botón:
Código:
<input type="submit" onclick="this.form.action='tupagina.php'" />
Saludos,
  #10 (permalink)  
Antiguo 07/04/2005, 10:02
Avatar de satake  
Fecha de Ingreso: julio-2004
Mensajes: 140
Antigüedad: 19 años, 8 meses
Puntos: 0
listo

ya pude terminar lo que necesitaba, me sirvió mucho, muchas gracias, chau
__________________
:aplauso: www.aponlinevillaguay.com.ar :aplauso:

Cita:
Iniciado por alguien
El arca de Noé fue hecha por principiantes, el Titanic por "profesionales".
  #11 (permalink)  
Antiguo 08/04/2005, 09:06
Avatar de satake  
Fecha de Ingreso: julio-2004
Mensajes: 140
Antigüedad: 19 años, 8 meses
Puntos: 0
agrega barras

se me presentó el sigueinte problema, cuando hago la vista previa del mensaje en la parte inferior de la pagina tengo un formulario para modificarlo, el problema que tengo es que antes de cada comilla " me agrega una barra invertida \ , quisiera saber como eliminar este problema, probé con htmlentities pero no se si el problema es que no sirve o que no lo se usar bien, alguien conoce alguna funcion?
__________________
:aplauso: www.aponlinevillaguay.com.ar :aplauso:

Cita:
Iniciado por alguien
El arca de Noé fue hecha por principiantes, el Titanic por "profesionales".
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 00:10.