Programación Web y Scripting > PHP

 Problemilla con Codigo?

(1/1)

Comodoro:
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 --- <a href="editarAdmin.php?nombre_user= <?php print($fila['nombre_user']); ?> ">Editar</a>  

Aqui supuestamente muestro la informacion en el Formulario



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

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


--- Código: Text --- <script language="javascript" type="text/javascript">    var variablePhp = " <?php print($fila['nombre_user']); ?> ";    document.write(variablePhp);</script>  
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:

shadow_rev:
Intenta usando esto:

--- Código: PHP ---// ...$consulta = "SELECT * FROM usuarios WHERE nombre_user = '" . trim($usuario) . "'";// ... 
o esto:

--- Código: PHP ---// ...$consulta = "SELECT * FROM usuarios WHERE nombre_user LIKE '" . strtolower(trim($usuario)) . "'";// ... 
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:

Comodoro:
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:
Es simple, tu tienes esto:

--- Código: PHP ---<a href="editarAdmin.php?nombre_user= <?php print($fila['nombre_user']); ?> ">Editar</a> 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).

Comodoro:
Clarisimo, la verdad no me hubiese dado cuenta del Problemilla. De nuevo Gracias por la Ayuda!

Navegación

[0] Índice de Mensajes

Ir a la versión completa