PDA

Ver la Versión Completa : Tengo problemas con un Query UPDATE que no realiza la actualización


Carlos411
30-11-2012, 16:04:51
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 actualización pero cuando me dirijo a la BD aun conserva los datos antiguos sin ningún cambio, ya e probado de todo y nada :eek:

Aqui le envió lo que tengo :D

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

Código HTML:
<head>
<script language="javascript" type="Text/javascript">
function validando(busc){
if(busc.opcion.value == ''){
alert('No se puede realizar la busqueda sin algun dato');
busc.opcion.focus();
return false;
}
return true;
}
</script>
</head>
<body background='imagenes\portada.jpg'>
<a href="principal.html"><img src='imagenes\atras.jpg'align="left" width=70 height=70></a>
<br><br>
<br><br>
<br><br>
<br><br>
<br><br>
<table id='miTabla' align='center' border="0" width="348" height="200">
<tr width='50%'bgcolor='00A3C2'>
<td height='10%'>
<p align='center'><font color='FFFFFF' size='5'>Listado de Usuarios</p>
</td>
</tr>
<tr bgcolor='LightBlue' width='50%'>
<td height='90%'>
<table align='center' border='0'>
<tr bgcolor='00A3C2'>
<form action="updateusuario2.php" method="post" align='center' name='busc' onsubmit="return validando(this)">
<p align='center'><font size='4' color='darkblue'>Criterio de Busqueda:<br>
<select name="opcion" >
<option value="NULO">------</option>
<option value="id_usuario">Id Usuario</option>
<option value="nombre">Nombre</option>
<option value="apellido">Apellido</option>
</select><br>
<input type='text' name='cadena'><td>
<input type="submit" value="Buscar" align='center'>
</td>
</td>
</form>
</td>
</tr>
</table>
</table>
</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 originalCopiar
<html>

<head>
<script language="javascript" type="Text/javascript">
function validar(formulario){

if(formulario.id_usuario.value == ''){
alert('Falta el Id del usuario');
formulario.id_usuario.focus();
return false;
}

if(formulario.nombre.value == ''){
alert('Falta la contraseña del usuario');
formulario.nombre.focus();
return false;
}

if(formulario.apellido.value == ''){
alert('Falta la contraseña del usuario');
formulario.apellido.focus();
return false;
}

if(formulario.contrasena.value == ''){
alert('Falta la contraseña del usuario');
formulario.contrasena.focus();
return false;
}

if(formulario.nivel_usuario.value == ''){
alert('Ingrese el nivel del usuario');
formulario.nivel_usuario.focus();
return false;
}

return true;
}
</script>
</head>

<body background='imagenes\portada.jpg'>



<a href="principal.html"><img src='imagenes\atras.jpg'align="left" width=70 height=70></a>

<br><br>
<br><br>
<br>
<tr><td>
</td></tr>
<form name="registrar" action="updateusuario3.php" method="post" onsubmit="return validar(this)">
<?php
$opcion=$_POST['opcion'];
$cadena=$_POST['cadena'];

$cnn = @mysql_connect("localhost","root","");
if (!$cnn) { // Si la Conexion Falla
echo("<p>No es Posible Establecer Conexión con el Servidor.</p>");
exit();
}
if (!@mysql_select_db("universitas",$cnn)){
echo("<p>No es Posible Establecer Conectar con la Base de Datos.</p>");
exit();
}
if ($opcion == 'id_usuario'){
$consulta= @mysql_query("SELECT id_usuario, nombre, apellido, contrasena, nivel_usuario FROM usuario where id_usuario='$cadena' ORDER BY id_usuario;");
}
if ($opcion == 'nombre'){
$consulta= @mysql_query("SELECT id_usuario, nombre, apellido, contrasena, nivel_usuario FROM usuario where nombre='$cadena' ORDER BY id_usuario;");
}
if ($opcion == 'apellido'){
$consulta= @mysql_query("SELECT id_usuario, nombre, apellido, contrasena, nivel_usuario FROM usuario where apellido='$cadena' ORDER BY id_usuario;");
}
if (!$consulta) {
echo("<p>Error al ejecutar el Query Sql.</p>");
exit();
}
$Registros=mysql_num_rows($consulta);
while($Fila = mysql_fetch_array($consulta)) {
?>
<table align='center' border='0'>
<tr bgcolor='00A3C2'>
<td colspan='5'>
<p align='center'><font color='FFFFFF' size='5'>Añadir Usuario</p>
</font>
</td>
</tr>
<tr colspan='5' bgcolor='LightBlue'>
<td><p align='center'>Id del usuario</td>
<td><p align='center'>Nombre</td>
<td><p align='center'>Apellido</td>
<td><p align='center'>Contraseña</td>
<td><p align='center'>Nivel del usuario</td>

</tr>
<tr>
<td>
<div id="text1">
<input type="text" name="id_usuario" value=' <?php echo $Fila['id_usuario']; ?>'/><br>
</div>
</td>
<td>
<input type="text" name="nombre" value=' <?php echo $Fila['nombre']; ?>'/><br>
</td>
<td>
<input type="text" name="apellido" value=' <?php echo $Fila['apellido']; ?>'/>
</td>
<td>
<input type="password" name='contrasena' value=' <?php echo $Fila['contrasena']; ?>'/>
</td>
<td align=center >
<select name="nivel_usuario">
<?php
if($Fila['nivel_usuario']=="0"){
echo "<option selected value='0'>------</option>";
}else{
echo "<option value='0'>------</option>";
}
if($Fila['nivel_usuario']=="1"){
echo "<option selected value='1'>1</option>";
}else{
echo "<option value='1'>1</option>";
}if($Fila['nivel_usuario']=="2"){
echo "<option selected value='2'>2</option>";
}else{
echo "<option value='2'>2</option>";
}
}
?>
</select>
</td>
</tr>
<tr bgcolor='lightgray'>
<td colspan='5'>
<p align='center'>
<input type="submit" value="Enviar">
<input type="reset" value="Borrar"></p>
</td>
</tr>
</table>
</form>
<?php
mysql_close($cnn);
?>
</body>
</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 originalCopiar
<HTML>
<link rel="STYLESHEET" type="text/css" href="estilo.css">
<HEAD>
<TITLE>Registro.php</TITLE>
</HEAD>
<BODY background='imagenes\fondo.jpg'>
<?php
$id_usuario=$_POST['id_usuario'];
$nombre=$_POST['nombre'];
$apellido=$_POST['apellido'];
$contrasena=$_POST['contrasena'];
$nivel_usuario=$_POST['nivel_usuario'];

$conec=mysql_connect("localhost","root","");
mysql_select_db("universitas");
$consulta=mysql_query("UPDATE usuario SET nombre='$nombre', apellido='$apellido', contrasena='$contrasena', nivel_usuario='$nivel_usuario' WHERE id_usuario='$id_usuario'",$conec);

if (!$consulta){
echo ("Error al ejecutar el query");
}else{
echo "<p align='center'><font color='darkblue' size='6'>Los datos se han actualizado correctamente!</font></p><br>";

echo "<table border='0' align='center' bgcolor='LightBlue' width='400' height='80'>
<tr>
<td bgcolor='00A3C2'><p align='center'><font color='FFFFFF' size='4'>Id Usuario</p></td>
<td><p>".$id_usuario."</p></td>
</tr>";
echo "
<tr>
<td bgcolor='00A3C2'><p align='center'><font color='FFFFFF' size='4'>Nombre</p></td>
<td><p>".$nombre."</p></td>
</tr>";
echo "
<tr>
<td bgcolor='00A3C2'><p align='center'><font color='FFFFFF' size='4'>Apellido</p></td>
<td><p>".$apellido."</p></td>
</tr>";
echo "
<tr>
<td bgcolor='00A3C2'><p align='center'><font color='FFFFFF' size='4'>Contraseña</p></td>
<td><p>".$contrasena."</p></td>
</tr>";

echo "
<tr>
<td bgcolor='00A3C2'><p align='center'><font color='FFFFFF' size='4'>Nivel usuario</p></td>
<td><p>".$nivel_usuario."</p></td>

</tr></table>";

echo "<p align='center'> <img src='imagenes\agregausu.jpg' align='center' width=155 height=150><br>
<a href='principal.html'>¡Regresar!</a></p>";
}
?>
<?php
mysql_close($conec);
?>
</body>
</html>

fer21unmsm
04-12-2012, 17:59:47
Salvo las llamadas a las validaciones en javascript que están mal, lo demás parece estar bien, y mayor razón si dices que no sale error, tal vez este configurado el mysql para el manejo de transacciones y habra que hacer un commit