Foros del Web » Programando para Internet » PHP »

Query UPDATE no funciona correctamente

Estas en el tema de Query UPDATE no funciona correctamente en el foro de PHP en Foros del Web. Hola Buenas tardes tengo un pequeño problema espero que me puedan ayudar, veran tengo un problema con mi proyecto de trabajo de grado y me ...
  #1 (permalink)  
Antiguo 28/11/2012, 13:08
 
Fecha de Ingreso: noviembre-2012
Mensajes: 12
Antigüedad: 11 años, 4 meses
Puntos: 0
Pregunta Query UPDATE no funciona correctamente

Hola Buenas tardes tengo un pequeño problema espero que me puedan ayudar, veran tengo un problema con mi proyecto de trabajo de grado y me urge su ayuda.
Estoy usando NOTEPAD++ y WAMPSERVER

El problema que tengo es que no guarda los nuevos datos en la BD el pasa por las 3 partes normal no me da errores ni nada por el estilo solo que en el updateusuario2 meto datos nuevos luego me los muestra como que fue exitosa la actualizacion pero cuando me dirigo a la BD aun conserba los datos antiguos sin ningun cambio, ya e probado de todo y nada

Aqui le envio lo que tengo


updateusuario1.htm
(updateusuario.html) que consiste en la búsqueda de un usuario en la BD

Código HTML:
Ver original
  1. <script language="javascript"  type="Text/javascript">
  2. function validando(busc){
  3.    if(busc.opcion.value == ''){
  4.     alert('No se puede realizar la busqueda sin algun dato');
  5.     busc.opcion.focus();
  6.     return false;
  7.   }
  8.     return true;
  9. }
  10.  </script>
  11. </head>
  12. <body background='imagenes\portada.jpg'>
  13. <a href="principal.html"><img src='imagenes\atras.jpg'align="left" width=70 height=70></a> 
  14. <br><br>
  15. <br><br>
  16. <br><br>
  17. <br><br>
  18. <br><br>
  19.     <table id='miTabla' align='center' border="0"  width="348" height="200">
  20.         <tr width='50%'bgcolor='00A3C2'>
  21.             <td height='10%'>
  22.                 <p align='center'><font color='FFFFFF' size='5'>Listado de Usuarios</p>
  23.             </td>
  24.         </tr>
  25.         <tr bgcolor='LightBlue' width='50%'>
  26.             <td height='90%'>
  27.         <table align='center' border='0'>
  28.         <tr bgcolor='00A3C2'>
  29.                 <form action="updateusuario2.php" method="post" align='center' name='busc' onsubmit="return validando(this)">
  30.                     <p align='center'><font size='4' color='darkblue'>Criterio de Busqueda:<br>
  31.                     <select name="opcion" >
  32.                         <option value="NULO">------</option>
  33.                         <option value="id_usuario">Id Usuario</option>
  34.                         <option value="nombre">Nombre</option>
  35.                         <option value="apellido">Apellido</option>
  36.                     </select><br>
  37.                     <input type='text' name='cadena'><td>
  38.                     <input type="submit" value="Buscar" align='center'>
  39.                     </td>
  40.     </td>      
  41.                 </form>
  42.             </td>
  43.         </tr>
  44.     </table>
  45.     </table>   
  46. </body>


updateusuario2.php
(updateusuario2.php) que es la que se encarga de traer los datos buscados en el updateusuario1 y poder modificaros con nueva información

Código PHP:
Ver original
  1. <html>
  2.  
  3. <head>
  4. <script language="javascript"  type="Text/javascript">
  5. function validar(formulario){
  6.  
  7.   if(formulario.id_usuario.value == ''){
  8.     alert('Falta el Id del usuario');
  9.     formulario.id_usuario.focus();
  10.     return false;
  11.   }
  12.  
  13.   if(formulario.nombre.value == ''){
  14.     alert('Falta la contraseña del usuario');
  15.     formulario.nombre.focus();
  16.     return false;
  17.   }
  18.  
  19.   if(formulario.apellido.value == ''){
  20.     alert('Falta la contraseña del usuario');
  21.     formulario.apellido.focus();
  22.     return false;
  23.   }
  24.  
  25.   if(formulario.contrasena.value == ''){
  26.     alert('Falta la contraseña del usuario');
  27.     formulario.contrasena.focus();
  28.     return false;
  29.   }
  30.  
  31.   if(formulario.nivel_usuario.value == ''){
  32.     alert('Ingrese el nivel del usuario');
  33.     formulario.nivel_usuario.focus();
  34.     return false;
  35.   }
  36.    
  37.   return true;
  38. }
  39. </script>
  40. </head>
  41.  
  42. <body background='imagenes\portada.jpg'>
  43.  
  44.  
  45.  
  46. <a href="principal.html"><img src='imagenes\atras.jpg'align="left" width=70 height=70></a> 
  47.  
  48. <br><br>
  49. <br><br>
  50. <br>
  51. <tr><td>
  52. </td></tr>
  53. <form name="registrar" action="updateusuario3.php" method="post" onsubmit="return validar(this)">              
  54.  <?php
  55.      $opcion=$_POST['opcion'];
  56.      $cadena=$_POST['cadena'];
  57.  
  58.            $cnn = @mysql_connect("localhost","root","");
  59.            if (!$cnn) { // Si la Conexion  Falla
  60.               echo("<p>No es Posible Establecer Conexión con el Servidor.</p>");
  61.               exit();
  62.            }     
  63.            if (!@mysql_select_db("universitas",$cnn)){
  64.               echo("<p>No es Posible Establecer Conectar con la Base de Datos.</p>");
  65.               exit();
  66.            }   
  67.            if ($opcion == 'id_usuario'){           
  68.            $consulta= @mysql_query("SELECT id_usuario, nombre, apellido, contrasena, nivel_usuario FROM usuario where id_usuario='$cadena' ORDER BY id_usuario;");
  69.            }
  70.            if ($opcion == 'nombre'){           
  71.            $consulta= @mysql_query("SELECT id_usuario, nombre, apellido, contrasena, nivel_usuario FROM usuario where nombre='$cadena' ORDER BY id_usuario;");
  72.            }
  73.            if ($opcion == 'apellido'){         
  74.            $consulta= @mysql_query("SELECT id_usuario, nombre, apellido, contrasena, nivel_usuario FROM usuario where apellido='$cadena' ORDER BY id_usuario;");
  75.            }
  76.            if (!$consulta) {       
  77.               echo("<p>Error al ejecutar el Query Sql.</p>");
  78.               exit();
  79.            }   
  80.         $Registros=mysql_num_rows($consulta);          
  81.         while($Fila = mysql_fetch_array($consulta)) {
  82.  ?>
  83. <table align='center' border='0'>
  84. <tr bgcolor='00A3C2'>
  85.     <td colspan='5'>
  86.         <p align='center'><font color='FFFFFF' size='5'>Añadir Usuario</p>
  87.         </font>
  88.     </td>
  89. </tr>
  90. <tr colspan='5' bgcolor='LightBlue'>
  91.     <td><p align='center'>Id del usuario</td>
  92.     <td><p align='center'>Nombre</td>
  93.     <td><p align='center'>Apellido</td>
  94.     <td><p align='center'>Contraseña</td>
  95.     <td><p align='center'>Nivel del usuario</td>
  96.    
  97. </tr>
  98. <tr>
  99.     <td>       
  100.         <div id="text1">
  101.         <input type="text" name="id_usuario" value=' <?php echo $Fila['id_usuario']; ?>'/><br>     
  102.         </div>
  103.     </td>
  104.     <td>       
  105.         <input type="text" name="nombre"  value=' <?php echo $Fila['nombre']; ?>'/><br>        
  106.     </td>
  107.     <td>       
  108.         <input type="text" name="apellido" value=' <?php echo $Fila['apellido']; ?>'/>
  109.     </td>
  110.     <td>       
  111.         <input type="password" name='contrasena' value=' <?php echo $Fila['contrasena']; ?>'/>
  112.     </td>
  113.     <td align=center >
  114. <select name="nivel_usuario">
  115.     <?php
  116.        if($Fila['nivel_usuario']=="0"){
  117.              echo "<option selected value='0'>------</option>";
  118.         }else{
  119.              echo "<option value='0'>------</option>";
  120.         }
  121.         if($Fila['nivel_usuario']=="1"){
  122.              echo "<option selected value='1'>1</option>";
  123.         }else{
  124.              echo "<option value='1'>1</option>";
  125.         }if($Fila['nivel_usuario']=="2"){
  126.              echo "<option selected value='2'>2</option>";
  127.         }else{
  128.              echo "<option value='2'>2</option>";  
  129. }
  130. }
  131.     ?>
  132. </select>
  133. </td>
  134. </tr>
  135. <tr bgcolor='lightgray'>
  136. <td colspan='5'>
  137. <p align='center'>
  138. <input type="submit" value="Enviar">
  139. <input type="reset" value="Borrar"></p>
  140. </td>
  141. </tr>
  142. </table>                   
  143. </form>
  144. <?php
  145. ?>
  146. </body>
  147. </html>

updateusuario3.php
(updateusuario3.php) que es el que se encarga de actualizar el usuario en la BD y mostrarnos por pantalla la nueva información
Código PHP:
Ver original
  1. <HTML>
  2. <link rel="STYLESHEET" type="text/css" href="estilo.css">
  3. <HEAD>
  4. <TITLE>Registro.php</TITLE>
  5. </HEAD>
  6. <BODY background='imagenes\fondo.jpg'>
  7. <?php
  8. $id_usuario=$_POST['id_usuario'];
  9. $nombre=$_POST['nombre'];
  10. $apellido=$_POST['apellido'];
  11. $contrasena=$_POST['contrasena'];
  12. $nivel_usuario=$_POST['nivel_usuario'];
  13.  
  14. $conec=mysql_connect("localhost","root","");
  15. mysql_select_db("universitas");
  16. $consulta=mysql_query("UPDATE usuario SET nombre='$nombre', apellido='$apellido', contrasena='$contrasena', nivel_usuario='$nivel_usuario' WHERE id_usuario='$id_usuario'",$conec);
  17.                        
  18. if (!$consulta){
  19.    echo ("Error al ejecutar el query");
  20. }else{
  21.     echo        "<p align='center'><font color='darkblue' size='6'>Los datos se han actualizado correctamente!</font></p><br>";
  22.    
  23.     echo "<table border='0' align='center' bgcolor='LightBlue' width='400' height='80'>
  24.                 <tr>
  25.                     <td bgcolor='00A3C2'><p align='center'><font color='FFFFFF' size='4'>Id Usuario</p></td>
  26.                     <td><p>".$id_usuario."</p></td>
  27.                 </tr>";
  28.             echo "
  29.                 <tr>
  30.                     <td bgcolor='00A3C2'><p align='center'><font color='FFFFFF' size='4'>Nombre</p></td>
  31.                     <td><p>".$nombre."</p></td>
  32.                 </tr>";
  33.             echo "
  34.                 <tr>
  35.                     <td bgcolor='00A3C2'><p align='center'><font color='FFFFFF' size='4'>Apellido</p></td>
  36.                     <td><p>".$apellido."</p></td>
  37.                 </tr>";
  38.             echo "
  39.                 <tr>
  40.                     <td bgcolor='00A3C2'><p align='center'><font color='FFFFFF' size='4'>Contraseña</p></td>
  41.                     <td><p>".$contrasena."</p></td>
  42.                 </tr>";
  43.            
  44.             echo "
  45.                 <tr>
  46.                     <td bgcolor='00A3C2'><p align='center'><font color='FFFFFF' size='4'>Nivel usuario</p></td>
  47.                     <td><p>".$nivel_usuario."</p></td>
  48.                
  49.                 </tr></table>";            
  50.                
  51.     echo    "<p align='center'> <img src='imagenes\agregausu.jpg' align='center' width=155 height=150><br>
  52.             <a href='principal.html'>¡Regresar!</a></p>";
  53. }
  54. ?>
  55. <?php
  56. mysql_close($conec);
  57. ?>
  58. </body>
  59. </html>
  #2 (permalink)  
Antiguo 28/11/2012, 13:14
Avatar de CoriaWeb  
Fecha de Ingreso: septiembre-2012
Ubicación: Coria del Río - Sevilla
Mensajes: 1.795
Antigüedad: 11 años, 7 meses
Puntos: 130
Respuesta: Query UPDATE no funciona correctamente

Prueba con este update:

Código PHP:
Ver original
  1. $consulta=mysql_query("UPDATE usuario SET nombre='".$nombre."', apellido='".$apellido."', contrasena='".$contrasena."', nivel_usuario='".$nivel_usuario."' WHERE id_usuario='".$id_usuario."'",$conec);
__________________
Hosting de Calidad
Servidores Dedicados Administrados
CoriaWeb.hosting
  #3 (permalink)  
Antiguo 28/11/2012, 13:22
 
Fecha de Ingreso: noviembre-2012
Mensajes: 12
Antigüedad: 11 años, 4 meses
Puntos: 0
Respuesta: Query UPDATE no funciona correctamente

Cita:
Iniciado por CoriaWeb Ver Mensaje
Prueba con este update:

Código PHP:
Ver original
  1. $consulta=mysql_query("UPDATE usuario SET nombre='".$nombre."', apellido='".$apellido."', contrasena='".$contrasena."', nivel_usuario='".$nivel_usuario."' WHERE id_usuario='".$id_usuario."'",$conec);
Ya lo había usado antes pero lo volví a usar en este caso y no funciono
alguna otra idea :(
  #4 (permalink)  
Antiguo 28/11/2012, 13:25
Avatar de CoriaWeb  
Fecha de Ingreso: septiembre-2012
Ubicación: Coria del Río - Sevilla
Mensajes: 1.795
Antigüedad: 11 años, 7 meses
Puntos: 130
Respuesta: Query UPDATE no funciona correctamente

has probado a hacer antes del update algun echo a las variables para ver si recibes los valores bien?

echo "Id usuario: ".$id_usuario;
echo "Apellido: ".$apellido;

etc... para descartar si es por la llegada de valores vacios
__________________
Hosting de Calidad
Servidores Dedicados Administrados
CoriaWeb.hosting
  #5 (permalink)  
Antiguo 28/11/2012, 17:01
 
Fecha de Ingreso: noviembre-2012
Mensajes: 12
Antigüedad: 11 años, 4 meses
Puntos: 0
Respuesta: Query UPDATE no funciona correctamente

Cita:
Iniciado por CoriaWeb Ver Mensaje
has probado a hacer antes del update algun echo a las variables para ver si recibes los valores bien?

echo "Id usuario: ".$id_usuario;
echo "Apellido: ".$apellido;

etc... para descartar si es por la llegada de valores vacios

Lo hice como me dijistes o al menos eso creo jeje pero igual me sale lo mismo

esta vez me mostró los datos en la esquina superior izquierda con los datos que guarde pero no me lo actualiza en la BD esto ya me tiene loco


Código PHP:
Ver original
  1. <HTML>
  2. <link rel="STYLESHEET" type="text/css" href="estilo.css">
  3. <HEAD>
  4. <TITLE>Registro.php</TITLE>
  5. </HEAD>
  6. <BODY background='imagenes\fondo.jpg'>
  7. <?php
  8. echo $id_usuario=$_POST['id_usuario'];
  9. echo $nombre=$_POST['nombre'];
  10. echo $apellido=$_POST['apellido'];
  11. echo $contrasena=$_POST['contrasena'];
  12. echo $nivel_usuario=$_POST['nivel_usuario'];
  13.  
  14. $conec=mysql_connect("localhost","root","");
  15. mysql_select_db("universitas");
  16. $consulta=mysql_query("UPDATE usuario SET nombre='".$nombre."', apellido='".$apellido."', contrasena='".$contrasena."', nivel_usuario='".$nivel_usuario."' WHERE id_usuario='".$id_usuario."'",$conec);                    
  17. if (!$consulta){
  18.    echo ("Error al ejecutar el query");
  19. }else{
  20.     echo        "<p align='center'><font color='darkblue' size='6'>Los datos se han actualizado correctamente!</font></p><br>";
  21.    
  22.     echo "<table border='0' align='center' bgcolor='LightBlue' width='400' height='80'>
  23.                 <tr>
  24.                     <td bgcolor='00A3C2'><p align='center'><font color='FFFFFF' size='4'>Id Usuario</p></td>
  25.                     <td><p>".$id_usuario."</p></td>
  26.                 </tr>";
  27.             echo "
  28.                 <tr>
  29.                     <td bgcolor='00A3C2'><p align='center'><font color='FFFFFF' size='4'>Nombre</p></td>
  30.                     <td><p>".$nombre."</p></td>
  31.                 </tr>";
  32.             echo "
  33.                 <tr>
  34.                     <td bgcolor='00A3C2'><p align='center'><font color='FFFFFF' size='4'>Apellido</p></td>
  35.                     <td><p>".$apellido."</p></td>
  36.                 </tr>";
  37.             echo "
  38.                 <tr>
  39.                     <td bgcolor='00A3C2'><p align='center'><font color='FFFFFF' size='4'>Contraseña</p></td>
  40.                     <td><p>".$contrasena."</p></td>
  41.                 </tr>";
  42.            
  43.             echo "
  44.                 <tr>
  45.                     <td bgcolor='00A3C2'><p align='center'><font color='FFFFFF' size='4'>Nivel usuario</p></td>
  46.                     <td><p>".$nivel_usuario."</p></td>
  47.                
  48.                 </tr></table>";            
  49.                
  50.     echo    "<p align='center'> <img src='imagenes\agregausu.jpg' align='center' width=155 height=150><br>
  51.             <a href='principal.html'>¡Regresar!</a></p>";
  52. }
  53. ?>
  54. <?php
  55. mysql_close($conec);
  56. ?>
  57. </body>
  58. </html>
  #6 (permalink)  
Antiguo 28/11/2012, 17:57
Avatar de JJrb3  
Fecha de Ingreso: septiembre-2010
Mensajes: 51
Antigüedad: 13 años, 6 meses
Puntos: 2
Respuesta: Query UPDATE no funciona correctamente

Bueno diría que publicaras esta sentencia:

Código PHP:
echo "UPDATE usuario SET nombre='".$nombre."', apellido='".$apellido."', contrasena='".$contrasena."', nivel_usuario='".$nivel_usuario."' WHERE id_usuario='".$id_usuario
Luego ingresa a la base de datos y verifica si te sirve ejecutándola desde ahí.
Verifica que los datos ingresado a la tabla sean correctos. Char, int, etc.
No sé si la variable $nivel_usuario sea un numero y en la tabla la columna nivel_usuario es int y por eso no la actualice.
revisa de todas formas.

Saludos.
  #7 (permalink)  
Antiguo 28/11/2012, 18:18
 
Fecha de Ingreso: noviembre-2012
Mensajes: 12
Antigüedad: 11 años, 4 meses
Puntos: 0
Respuesta: Query UPDATE no funciona correctamente

Cita:
Iniciado por JJrb3 Ver Mensaje
Bueno diría que publicaras esta sentencia:

Código PHP:
echo "UPDATE usuario SET nombre='".$nombre."', apellido='".$apellido."', contrasena='".$contrasena."', nivel_usuario='".$nivel_usuario."' WHERE id_usuario='".$id_usuario
Luego ingresa a la base de datos y verifica si te sirve ejecutándola desde ahí.
Verifica que los datos ingresado a la tabla sean correctos. Char, int, etc.
No sé si la variable $nivel_usuario sea un numero y en la tabla la columna nivel_usuario es int y por eso no la actualice.
revisa de todas formas.

Saludos.

Lo hice desde la BD y modifico el usuario que le dije pero no entiendo porque si lo ejecuto del php como tal no lo hace si en esta parte :

Código PHP:
Ver original
  1. $consulta=mysql_query("UPDATE usuario SET nombre='".$nombre."', apellido='".$apellido."', contrasena='".$contrasena."', nivel_usuario='".$nivel_usuario."' WHERE id_usuario='".$id_usuario."'",$conec);

cambio el $id_usuario por un id existente e la BD ejecuta la actualización a ese usuario en especifico pero no me funciona de esa manera
  #8 (permalink)  
Antiguo 28/11/2012, 18:19
Avatar de CoriaWeb  
Fecha de Ingreso: septiembre-2012
Ubicación: Coria del Río - Sevilla
Mensajes: 1.795
Antigüedad: 11 años, 7 meses
Puntos: 130
Respuesta: Query UPDATE no funciona correctamente

Y estas seguro que recibes bien todos los valores?

Código PHP:
Ver original
  1. echo "El id del usuario es: ".$id_usuario=$_POST['id_usuario']."<br>";
  2. echo "El nombre es: "$nombre=$_POST['nombre']."<br>";
  3. echo "El apellido es: "$apellido=$_POST['apellido']."<br>";
  4. echo "La contraseña es: "$contrasena=$_POST['contrasena']."<br>";
  5. echo "El nivel del usuario es: "$nivel_usuario=$_POST['nivel_usuario']."<br>";

dime si algun resultado te muestra en blanco
__________________
Hosting de Calidad
Servidores Dedicados Administrados
CoriaWeb.hosting
  #9 (permalink)  
Antiguo 28/11/2012, 18:29
 
Fecha de Ingreso: noviembre-2012
Mensajes: 12
Antigüedad: 11 años, 4 meses
Puntos: 0
Respuesta: Query UPDATE no funciona correctamente

Cita:
Iniciado por CoriaWeb Ver Mensaje
Y estas seguro que recibes bien todos los valores?

Código PHP:
Ver original
  1. echo "El id del usuario es: ".$id_usuario=$_POST['id_usuario']."<br>";
  2. echo "El nombre es: "$nombre=$_POST['nombre']."<br>";
  3. echo "El apellido es: "$apellido=$_POST['apellido']."<br>";
  4. echo "La contraseña es: "$contrasena=$_POST['contrasena']."<br>";
  5. echo "El nivel del usuario es: "$nivel_usuario=$_POST['nivel_usuario']."<br>";

dime si algun resultado te muestra en blanco
si me los muestra de esta manera

El id del usuario es: aatuesta
El nombre es: Alix Maria
El apellido es: Atuesta
La contraseña es: 17385317
El nivel del usuario es: 1

cabe destacar que el atributo que modifique solamente fue el nombre el cual le agrege Maria en la longitud tengo 35 asi que se descartaría por falta de espacio de ingresar caracteres
  #10 (permalink)  
Antiguo 28/11/2012, 18:37
Avatar de CoriaWeb  
Fecha de Ingreso: septiembre-2012
Ubicación: Coria del Río - Sevilla
Mensajes: 1.795
Antigüedad: 11 años, 7 meses
Puntos: 130
Respuesta: Query UPDATE no funciona correctamente

Bueno haber pon esto y haber si te muestra el error:

Código PHP:
Ver original
  1. $consulta=mysql_query("UPDATE usuario SET nombre='".$nombre."', apellido='".$apellido."', contrasena='".$contrasena."', nivel_usuario='".$nivel_usuario."' WHERE id_usuario='".$id_usuario."'",$conec) or die(mysql_error());
__________________
Hosting de Calidad
Servidores Dedicados Administrados
CoriaWeb.hosting
  #11 (permalink)  
Antiguo 29/11/2012, 05:37
 
Fecha de Ingreso: noviembre-2012
Mensajes: 12
Antigüedad: 11 años, 4 meses
Puntos: 0
Respuesta: Query UPDATE no funciona correctamente

Cita:
Iniciado por CoriaWeb Ver Mensaje
Bueno haber pon esto y haber si te muestra el error:

Código PHP:
Ver original
  1. $consulta=mysql_query("UPDATE usuario SET nombre='".$nombre."', apellido='".$apellido."', contrasena='".$contrasena."', nivel_usuario='".$nivel_usuario."' WHERE id_usuario='".$id_usuario."'",$conec) or die(mysql_error());
Lo puse de esa manera tal cual y no me dio error hace lo mismo como si funcionara pero en la BD no actualiza de verdad no se porque es esto
alguna otra idea???

Etiquetas: formulario, html, mysql, query, registro, sql, tabla, update, usuarios
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 14:42.