Vota por nosotros en el ranking web que participamos

Curso Hacker
Bienvenido(a), Visitante. Favor de ingresar o registrarse.
¿Perdiste tu email de activación? - Octubre 15, 2008, 11:31:09
Inicio Ayuda Ingresar Registrarse
Visita: Articulos - Juegos Gratis - Da Foros

Comunidad Underground Hispana  |  Programacion  |  Programacion para webmasters  |  Php (Moderador: SaTeLuCo)  |  Tema: Problemas para actualizar datos 0 Usuarios y 1 Visitante están viendo este tema. « anterior próximo »
Páginas: [1] Ir Abajo Imprimir
Autor Tema: Problemas para actualizar datos  (Leído 242 veces)
Abigor
Miembro
*****
Desconectado Desconectado

Mensajes: 140



Ver Perfil WWW
« en: Abril 04, 2008, 09:48:42 »

Que más gente del Under!
Recurro otra vez a ustedes para salir de un lio que tengo para actualizar los registros de mi BD.

El problema es el siguiente: No sé en donde tengo el error pero cuando le doy actualizar a el formulario, me cambia los datos de todos los registros que hay en el BD y NECESITO que solo sea del ID por el cual ingrese a hacer la actualización. el código es el siguiente:
Código:
<?
if($_COOKIE["unick"]) {
?>
<?php 
if ($enviar)
{
// process form
$link mysql_connect("localhost""user""pass"); 
mysql_select_db("base_datos"$link);
$sql="SELECT * FROM usuarios Order By id";
    
$sql "UPDATE usuarios SET email='$email', nombre='$nombre', apellido='$apellido', empresa='$empresa'";
$result mysql_query($sql$link);
echo "¡Gracias! Hemos Actualizado sus datos.\n";
}
else
{
?>

 
<form method="post" action="modificar.php">
E-mail   :<input type="Text" name="email"><br>
Nombre:<input type="Text" name="nombre"><br>
Apellido :<input type="Text" name="apellido"><br>
Empresa   :<input type="Text" name="empresa"><br>
<input type="Submit" name="enviar" value="Aceptar información">
</form>
 
<?php 
//end if 
?>

<?
}
else {
?>
<!-- Esto lo verán los no registrados/logeados -->
<p><p>
<form method="post" action="entrar.php">
Nick:<br>
<input type="text" name="nick" maxlength="20"><br>
Contraseña:<br>
<input type="password" name="contrasena" maxlength="20"><br><br>
<input type="submit" name="enviar" value="Entrar">
</form>
<!-- Fin de lo que verán los no registrados/logeados -->
<?
}
?>

Espero me puedan ayudar. Gracias de antemano.
En línea

Prefiero Morir de Pie que Vivir de Rodillas....
SaTeLuCo
Perfectas, son todas perfectas...
Moderadores
Colaborador
*****
Desconectado Desconectado

Mensajes: 575


El hijo del papá =D

386872331
Ver Perfil WWW
« Respuesta #1 en: Abril 04, 2008, 09:55:35 »

Código:
<?php
$sql 
"UPDATE usuarios SET email='$email', nombre='$nombre', apellido='$apellido', empresa='$empresa' WHERE id = '$id'";
?>


WHERE id = '$id'

Saludos!
En línea



Hosting en México, WebHosting, Dominios, Servidores Privados Virtuales, Servidores Dedicados
HostingMexicano.com
Abigor
Miembro
*****
Desconectado Desconectado

Mensajes: 140



Ver Perfil WWW
« Respuesta #2 en: Abril 04, 2008, 10:00:37 »

Gracias por la Pronta Respuesta SaTeLuCo.

Pero no se solucionó el problema, ahora no actualiza nada. Que más podría ser? o Que necesitarian para encotrar el error?
En línea

Prefiero Morir de Pie que Vivir de Rodillas....
SaTeLuCo
Perfectas, son todas perfectas...
Moderadores
Colaborador
*****
Desconectado Desconectado

Mensajes: 575


El hijo del papá =D

386872331
Ver Perfil WWW
« Respuesta #3 en: Abril 04, 2008, 10:03:29 »

Si el código lo tienes como lo pones arriba no va a servir ya que no has definido la variable id, primero tienes que sacar el id de una forma no se como tengas el sistema completo...

Si solo modificas el código como te lo puse, $id  va vacio, tienes que hacer otra consulta para sacar el id, una ves que ya tengas el id del usuario seguro va a funcionar
En línea



Hosting en México, WebHosting, Dominios, Servidores Privados Virtuales, Servidores Dedicados
HostingMexicano.com
Abigor
Miembro
*****
Desconectado Desconectado

Mensajes: 140



Ver Perfil WWW
« Respuesta #4 en: Abril 04, 2008, 10:10:37 »

Spy novato en esto, como quedaría mas o menos el código o que necesitas saber para ayudarme. te lo agradeceria bastante
En línea

Prefiero Morir de Pie que Vivir de Rodillas....
SaTeLuCo
Perfectas, son todas perfectas...
Moderadores
Colaborador
*****
Desconectado Desconectado

Mensajes: 575


El hijo del papá =D

386872331
Ver Perfil WWW
« Respuesta #5 en: Abril 04, 2008, 10:18:30 »

No te voy a dar el code hecho  Cheesy, una idea  Wink

1.- Logueas al usuario y le pones una cookie de sesion donde se guardaran sus datos, id, nombre, email etc...
2.- En la pagina para actualizar despues de recibir el formulario revisas la cookie de sesion y tomas el id del usuario asi ya lo tienes...

Disculpa pero no soy muy partidario de que las personas comiencen a vender sus servicios o lucrar sin ni siquiera saber hacer bien las cosas  Wink

Te recomiendo guardar los datos como un array para un manejo mas facil, saludos!
En línea



Hosting en México, WebHosting, Dominios, Servidores Privados Virtuales, Servidores Dedicados
HostingMexicano.com
Abigor
Miembro
*****
Desconectado Desconectado

Mensajes: 140



Ver Perfil WWW
« Respuesta #6 en: Abril 04, 2008, 10:25:49 »

Presisamente esta es una web de práctica para aprender a hacer este tipo de cosas. Antes de postear llevo 2 días buscando la solución pero ya no doy más, he logrado hacer todas las funciones que necesito menos la de actualizar. pero bueno, intentaré con lo que me dices  haber si logro darle a la solución.
Gracias de todas formas.
En línea

Prefiero Morir de Pie que Vivir de Rodillas....
SaTeLuCo
Perfectas, son todas perfectas...
Moderadores
Colaborador
*****
Desconectado Desconectado

Mensajes: 575


El hijo del papá =D

386872331
Ver Perfil WWW
« Respuesta #7 en: Abril 04, 2008, 10:30:11 »

Intenta hacer esto directamente desde el phpmyadmin o consola para que veas como si funciona, ahora lo que tienes que conseguir es el id del usuario a cambiar los datos, supongo que sera e id del mismo usuario que esta cambiando sus datos.

Código:
UPDATE usuarios SET email='dafsf @ddsadsa.com', nombre='porro', apellido='marlboro', empresa='empresa1' WHERE id = '2'

Ahi te va a cambiar los datos del usuario que tenga el id 2


Y ahora como te digo, te recomiendo que desde el logueo guardes todos los datos del usuario como id etc.. para que en el momento que los necesites los puedas usar sin tener que hacer varias consultas para lo mismo Wink

Saludos!
En línea



Hosting en México, WebHosting, Dominios, Servidores Privados Virtuales, Servidores Dedicados
HostingMexicano.com
Abigor
Miembro
*****
Desconectado Desconectado

Mensajes: 140



Ver Perfil WWW
« Respuesta #8 en: Abril 04, 2008, 10:41:16 »

 Grin si, veo que los cambios si son efectivos.
pero como lo mencione, llevo desde el martes trabajando con bases de datos así que sé que aun me falta pero entiendo más viendo los ejemplos Tongue
para loguearse el usuario ingresa con nick y pass.

Porfavor!!!!! Ayuda!!!  Grin Grin Grin

me imagino que son 3 líneas de código las que me molestan. pero he agotado mi mente en esto y no sé como hacerlo.

Te lo agradecería toda la Vida!!!!  Cheesy Cheesy Cheesy Cheesy
En línea

Prefiero Morir de Pie que Vivir de Rodillas....
SaTeLuCo
Perfectas, son todas perfectas...
Moderadores
Colaborador
*****
Desconectado Desconectado

Mensajes: 575


El hijo del papá =D

386872331
Ver Perfil WWW
« Respuesta #9 en: Abril 04, 2008, 10:48:54 »

En el entrar.php donde haces la autentificas al usuario crea un cookie de sesion para que los datos esten como hash y no sea tan fácil vulnerar esa parte, pon el codigo de entrar.php y vemos  Wink
En línea



Hosting en México, WebHosting, Dominios, Servidores Privados Virtuales, Servidores Dedicados
HostingMexicano.com
Abigor
Miembro
*****
Desconectado Desconectado

Mensajes: 140



Ver Perfil WWW
« Respuesta #10 en: Abril 04, 2008, 10:57:18 »

en el entrar ya tengo lo siguiente:
Código:
<?php
setcookie
("unick",$nick,time()+........) ; 
setcookie("ucontrasena",$contrasena,time()+.......) ;
?>

y en el archivo modificar.php está
Código:
<?
if($_COOKIE["unick"]) {
?>
pero estoy como al principio.

Si era eso lo que querias que hiciera??
En línea

Prefiero Morir de Pie que Vivir de Rodillas....
SaTeLuCo
Perfectas, son todas perfectas...
Moderadores
Colaborador
*****
Desconectado Desconectado

Mensajes: 575


El hijo del papá =D

386872331
Ver Perfil WWW
« Respuesta #11 en: Abril 04, 2008, 11:01:28 »

osea que no autentificas al usuario solo le pones una cookie con los datos que introdujo en el formulario?  Shocked

mejor lee esto que hizo rOnNyLdInHo

Necesitas ser usuario para ver los enlaces Crear Usuario  Hacer Sesion
Registro de Usuarios + Autentificación Avanzada + pagAdmin + Perfil


Cuando hayas avanzado un poco pones lo que has hecho para que te podamos ayudar mejor  Wink
En línea



Hosting en México, WebHosting, Dominios, Servidores Privados Virtuales, Servidores Dedicados
HostingMexicano.com
Abigor
Miembro
*****
Desconectado Desconectado

Mensajes: 140



Ver Perfil WWW
« Respuesta #12 en: Abril 04, 2008, 11:08:46 »

si autentifico al usuario, pues entrar.php tambien está enlazado a la base de datos y solo acepta los nick y pass registrados en ella. solo copie el código que hacia referencia a las cookie.

De todas maneras leeré el post que recomiendas y luego te aviso. aunque si me ahorras unos minutos y me pasas la forma de validar la actualización te lo agrdecería  Grin de todas maneras voy a leer el otro post.

Gracias
En línea

Prefiero Morir de Pie que Vivir de Rodillas....
Páginas: [1] Ir Arriba Imprimir 
Comunidad Underground Hispana  |  Programacion  |  Programacion para webmasters  |  Php (Moderador: SaTeLuCo)  |  Tema: Problemas para actualizar datos « anterior próximo »
Ir a:  


Ranking-Hits
Powered by SMF 1.1.6 | SMF © 2006-2007, Simple Machines LLC