• Viernes 29 de Marzo de 2024, 07:15

Autor Tema:  Problemilla con Codigo?  (Leído 2351 veces)

Comodoro

  • Miembro activo
  • **
  • Mensajes: 73
    • Ver Perfil
Problemilla con Codigo?
« en: Viernes 4 de Marzo de 2011, 06:40 »
0
Hola Amigos como estan, les escribo en esta ocasion para planteale un Problemilla, el cual es el siguiente:

Tengo una Paginilla con Extension Php, en la cual tengo una tabla que me muestra a todos los usuarios registrados. En esa misma tabla tengo dos Link que uno es para Modificar lo Datos y el otro es para Eliminar los Datos.

Cuando le doy en el Link de Editar a un Usuario se pasa por URL el nombre del usuario a otra Paginilla que tiene un Formulario en el cual se va a mostrar los DATOS de ese Usuario.

Y en esta Paginilla en la que se debe mostrar la informacion para modificala, hay una Consultilla (Script en Php) que dice que muestre los datos, pero para que muestre los Datos en el Formulario tiene que ser igual al nombre de Usuario que se le paso por URL.

Pongo el Codigo:

Aqui le paso la Variable por URl

Código: PHP
  1.  
  2. <a href="editarAdmin.php?nombre_user= <?php print($fila['nombre_user']); ?> ">Editar</a>
  3.  
  4.  


Aqui supuestamente muestro la informacion en el Formulario


Código: PHP
  1.  
  2. include('Conexion.php');
  3.    
  4. $usuario = $_GET['nombre_user'];
  5. print($usuario) . "<br>";          //Imprimo la Variable que viene por URL para estar seguro que efectivamente la Pasa
  6. $consulta = "SELECT * FROM usuarios WHERE nombre_user = '$usuario'";   //
  7. $queryConsulta = mysql_query($consulta) or die ($Sql .mysql_error()."" );
  8. $fila = mysql_fetch_array($queryConsulta);
  9. print($consulta);      //Imprimo la consulta para estar seguro que realiza la comparacion
  10.  
  11.  


Aqui hice un Script en Javascript para ver si los Datos los tomaba de BD
No me muestra el DATO

Código: Text
  1.  
  2. <script language="javascript" type="text/javascript">
  3.     var variablePhp = " <?php print($fila['nombre_user']); ?> ";
  4.     document.write(variablePhp);
  5. </script>
  6.  
  7.  

Bueno el hecho es que cuando le doy clic en el Link efectivamente pasa la Variable de el Nombre de Usuario a la Otra Paginilla. Y lo he comprobado imprimido la Variable y tambien he imprimido la Consulta y si hace la comparacion.

Pero igual no se muestra nada en los Campos del Formulario. Por que coño es eso!

Agrego unas Imagenes:
El mensaje contiene 2 archivos adjuntos. Debes ingresar o registrarte para poder verlos y descargarlos.

shadow_rev

  • Miembro MUY activo
  • ***
  • Mensajes: 397
  • Nacionalidad: co
  • Un SPARTAN no muere en combate
    • Ver Perfil
    • http://shadowrev.blogspot.com
Re: Problemilla con Codigo?
« Respuesta #1 en: Lunes 7 de Marzo de 2011, 22:01 »
0
Intenta usando esto:
Código: PHP
  1. // ...
  2. $consulta = "SELECT * FROM usuarios WHERE nombre_user = '" . trim($usuario) . "'";
  3. // ...
  4.  

o esto:
Código: PHP
  1. // ...
  2. $consulta = "SELECT * FROM usuarios WHERE nombre_user LIKE '" . strtolower(trim($usuario)) . "'";
  3. // ...
  4.  

Por lo que veo, a la consulta se le está colando un espacio en blanco, y como haces una comparación estricta entre cadenas, pues la consulta no debería arrojarte resultados, a menos que en la base de datos exista el usuario ' Comodoro' (nótese el espacio en blanco antes del nombre de usuario). Pruébalo y nos cuentas.

:suerte:
Volará quien le ponga alas a sus sueños (Candidate for goddess)
Si el mal existe en este mundo, reside en el corazón de la humanidad (Edward D. Morrison - Tales of Phantasia)
Lo único que puedes cambiar del pasado, es lo que sientes por él en el presente (Lockon Stratos - Mobile Suit Gundam 00)
Ingeniero de Sistemas

Comodoro

  • Miembro activo
  • **
  • Mensajes: 73
    • Ver Perfil
Re: Problemilla con Codigo?
« Respuesta #2 en: Martes 8 de Marzo de 2011, 02:09 »
0
Hola Amiguillo shadow_rev, gracias por la Respuesta la Probe y efectivamente Funciono.

Una preguntilla me señalas que dejo en la Consulta un espacio en blanco,  tengo que decir que ese Espacio en Blanco, no lo veo, a que te refieres. El problemilla esta resuelto Gracias a ti, pero es que no me gusta que darme con las Dudas me podrias Iluminar!

shadow_rev

  • Miembro MUY activo
  • ***
  • Mensajes: 397
  • Nacionalidad: co
  • Un SPARTAN no muere en combate
    • Ver Perfil
    • http://shadowrev.blogspot.com
Re: Problemilla con Codigo?
« Respuesta #3 en: Martes 8 de Marzo de 2011, 15:19 »
0
Es simple, tu tienes esto:
Código: PHP
  1. <a href="editarAdmin.php?nombre_user= <?php print($fila['nombre_user']); ?> ">Editar</a>
  2.  
Aquí tienes un espacio en blanco entre el = y el <?php, y ese espacio en blanco lo está tomando PHP en la variable $_GET['nombre_user'] (te recomiendo que lo borres).

Suele ser un error frecuente, además, te recomiendo hacer trim también en los campos capturados de cualquier formulario, con excepción de los campos de contraseña, ya que los espacios en blanco al principio y al final, que pueden agregar los usuarios de la aplicación accidentalmente, pueden ser registrados en la base de datos y posteriormente dificultan las comparaciones de texto (te lo digo por experiencia propia).
Volará quien le ponga alas a sus sueños (Candidate for goddess)
Si el mal existe en este mundo, reside en el corazón de la humanidad (Edward D. Morrison - Tales of Phantasia)
Lo único que puedes cambiar del pasado, es lo que sientes por él en el presente (Lockon Stratos - Mobile Suit Gundam 00)
Ingeniero de Sistemas

Comodoro

  • Miembro activo
  • **
  • Mensajes: 73
    • Ver Perfil
Re: Problemilla con Codigo?
« Respuesta #4 en: Martes 8 de Marzo de 2011, 20:58 »
0
Clarisimo, la verdad no me hubiese dado cuenta del Problemilla. De nuevo Gracias por la Ayuda!