Foros del Web » Programando para Internet » PHP »

recuperar cadenas con espacios

Estas en el tema de recuperar cadenas con espacios en el foro de PHP en Foros del Web. Hola, agradecería mucho vuestra ayuda por favor (y si no es pedir demasiado pronto, pues debo solucionar esto para el fin de semana!) El problema ...
  #1 (permalink)  
Antiguo 01/08/2007, 10:31
 
Fecha de Ingreso: julio-2007
Mensajes: 9
Antigüedad: 16 años, 9 meses
Puntos: 0
recuperar cadenas con espacios

Hola, agradecería mucho vuestra ayuda por favor (y si no es pedir demasiado pronto, pues debo solucionar esto para el fin de semana!)

El problema que tengo es que con un codigo php introduzco los datos que los usuarios introducen a través de un formulario en una tabla de una base de datos mysql. Y esto se hace sin problemas, pues al comprobar la base de datos, todo es correcto. Sin embargo, con otro codigo php extraigo los datos para que los usuarios puedan modificarlos, por ejemplo para el nombre:

$result = mysql_query("SELECT * FROM loginphp
WHERE Uname='{$_SESSION['Uname']}'") or die(mysql_error());

$row = mysql_fetch_array( $result );

echo "Nombre*:</td><td><input type=text name=Fname size=20 value=" . $row['Fname'] . ">";

Fname está definida en la tabla como VARCHAR.

El problema es que me corta la cadena en el primer espacio que aparece. Es decir, si el usuario ha introducido "Pedro Perez", al recuperar el campo solo aparece "Pedro", lo que hay despues del espacio ya no aparece, pese a que en la base de datos está.

¿Qué estoy haciendo mal?

Gracias, un saludo.

Pedro.
  #2 (permalink)  
Antiguo 01/08/2007, 10:34
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Re: recuperar cadenas con espacios

Debes de poner entre comillas los valores de tus atributos en tus tags HTML, es decir debe de estar asi:
Código PHP:
<input type="text\" name=\"Fname\" size=\"20\" value=\"" $row['Fname'] . "\">" 
El caracter \ se usa para escapar la comilla y no te cause errores en el compilador de PHP.

Saludos.
  #3 (permalink)  
Antiguo 01/08/2007, 10:47
 
Fecha de Ingreso: julio-2007
Mensajes: 9
Antigüedad: 16 años, 9 meses
Puntos: 0
Re: recuperar cadenas con espacios

Gracias GatorV por tu respuesta inmediata. Acabo de probarlo, y ahora el codigo no funciona, me devuelve el siguiente error:

Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING
  #4 (permalink)  
Antiguo 01/08/2007, 10:58
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Re: recuperar cadenas con espacios

Como te digo tienes que escapar todas las comillas:
Código PHP:
echo "<input type=\"text\" name=\"Fname\" size=\"20\" value=\"" $row['Fname'] . "\">"
  #5 (permalink)  
Antiguo 01/08/2007, 11:04
 
Fecha de Ingreso: julio-2007
Mensajes: 9
Antigüedad: 16 años, 9 meses
Puntos: 0
Re: recuperar cadenas con espacios

Muchísimas GRACIAS!!!!!! FUNCIONA!!!!
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 20:10.