Foros del Web » Creando para Internet » HTML »

Mostrar una cadena que contiene comillas en un formulario

Estas en el tema de Mostrar una cadena que contiene comillas en un formulario en el foro de HTML en Foros del Web. Hola a todos, tengo un pequeño gran problema: En un campo tipo varchar de una base de datos MySQL tengo el siguiente dato: "A", a ...
  #1 (permalink)  
Antiguo 26/05/2005, 15:06
 
Fecha de Ingreso: mayo-2005
Mensajes: 3
Antigüedad: 18 años, 10 meses
Puntos: 0
Mostrar una cadena que contiene comillas en un formulario

Hola a todos, tengo un pequeño gran problema:

En un campo tipo varchar de una base de datos MySQL tengo el siguiente dato: "A", a la hora de traer los registros en un formulario mediante variables de php el campo no muestra nada, ya revise y efectivamente la variable si tiene el "A" pero no me muestra nada, que puedo hacer? si se pueden mostrar cadenas con comillas en un formulario?

Agradezco cualquier tipo de ayuda de antemano.

Suerte
  #2 (permalink)  
Antiguo 26/05/2005, 16:42
Avatar de monoswim
$moderador{'Esteban'}
 
Fecha de Ingreso: febrero-2002
Ubicación: Buenos Aires - Argentina
Mensajes: 8.762
Antigüedad: 22 años, 2 meses
Puntos: 90
Pues si se pueden mostrar cadenas con comillas pero ojo con eso, depende de como lo tengas ya que las comillas dobes en HTML son "

<input name="textfield" type="text" value="&quot;hola&quot;">

Si colocás el " así nomás se lo confunde con el de value=""

Espero que te sirva

Saludos
__________________
Esteban Quintana
  #3 (permalink)  
Antiguo 27/05/2005, 08:18
 
Fecha de Ingreso: mayo-2005
Mensajes: 3
Antigüedad: 18 años, 10 meses
Puntos: 0
Muchas gracias por atender a mi pregunta, la situación aquí es que la variable "hola" contiene dentro un caracter entrecomillado "A" y no me muestra lo que tiene, es algo como esto:

<input name="textfield" type="text" value="$hola">

donde $hola contiene "A"

El text no me muestra el contenido, he revisado el valor de $hola antes de pedir que lo muestre en el text y efectivamente contiene el valor "A".

Gracias.
  #4 (permalink)  
Antiguo 27/05/2005, 09:11
axz
 
Fecha de Ingreso: mayo-2005
Mensajes: 360
Antigüedad: 18 años, 10 meses
Puntos: 10
usa htmlspecialchars

intenta esto:
Código PHP:
<?php $hola htmlspecialchars$hola ); ?>
y luego alguna de las dos opciones siguientes:
1)
Código PHP:
<?php echo '<input name="textfield" type="text" value=' $hola '>'?>
2)
Código HTML:
<input name="textfield" type="text" value="<?php echo $hola; ?>"> 
... ojalá te sirva ...

Última edición por axz; 27/05/2005 a las 15:13 Razón: claridad
  #5 (permalink)  
Antiguo 27/05/2005, 09:11
Avatar de monoswim
$moderador{'Esteban'}
 
Fecha de Ingreso: febrero-2002
Ubicación: Buenos Aires - Argentina
Mensajes: 8.762
Antigüedad: 22 años, 2 meses
Puntos: 90
claro, es que lo que tenés que hacer para mostrarlo en HTML es reemplazar el " de la variable por &quot;

En PERL se hace mediante espresioner regulares, en PHP no se, seguramente habrá una función pare reemplazar un string por otro dentro de una variable

El contenido de la variable debe ser &quot; A &quot; ahí lo podrás imprimir sin problemas...

Saludos
__________________
Esteban Quintana
  #6 (permalink)  
Antiguo 28/05/2005, 04:48
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 7 meses
Puntos: 381
Te sugiero uses esta opción que te ha propuesto axz

Cita:
<?php $hola = htmlspecialchars( $hola ); ?>
  #7 (permalink)  
Antiguo 28/05/2005, 04:53
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 7 meses
Puntos: 381
agregando....

la razón por la que no te muestra nada es porque al tener esto

<input name="textfield" type="text" value="$hola">

lo que le llega al navegador es esto

<input name="textfield" type="text" value=""A"">

con lo cual interpreta que la segunda comilla cierra a la primera por lo tanto tiene un valor vacío. El resto lo ignora (la parte de A"")

No te recomiendo que reemplaces las comillas dobles del value por simples pues no existen las comillas simples dentro del html.

Lo ideal es que al navegador le llegue como te ha propuesto monoswim

<input name="textfield" type="text" value="&quot;hola&quot;">

y para que al navegador le llegue eso lo mejor que puedes hacer es usar htmlspecialchars como te sugirió axz
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 12:00.