Foros del Web » Programando para Internet » PHP »

quien me ayuda acomodar este codigo

Estas en el tema de quien me ayuda acomodar este codigo en el foro de PHP en Foros del Web. Pues si señores aki tengo este codigo ke pues no sabia como se hacia, la verdad casi ni se de programacion php entre comillas. Solo ...
  #1 (permalink)  
Antiguo 23/02/2007, 04:52
 
Fecha de Ingreso: abril-2005
Mensajes: 253
Antigüedad: 19 años
Puntos: 0
quien me ayuda acomodar este codigo

Pues si señores aki tengo este codigo ke pues no sabia como se hacia, la verdad casi ni se de programacion php entre comillas. Solo lo basico. Asi que necesito acomodar este codigo, porque ha quedado bien dispalfarrado.
Y de que se trata el chiste, pues nada mas de ke tengo un formulario que me envia a otra pagina el nombre de usuario que el usuario hayga introducido para recuperar su clave. y este al presionar enviar en la siguiente pagina le envia la clave por emial, peeero, ahi ta el problema, que sigue saliendo el boton de enviar junto con el mensaje de ke la clave se ha enviado.
Lo que quiero hacer es que desde la pagina del formulario al presionar el boton enviar desde ese formulario la clave de usuario se envie. y pase a la siguiente pagina y diga ke la clave se a enviado a la direccion email.
Este es el codigo:
La pagina ke envia
Código PHP:
<? 
echo'
<form method="post" action="pass.php">
<input type="text" name="nick" value="nick"><br>
<input type="submit" value="enviar" name="submit">
</form>'
;
?>
Y la pagina ke recibe
Código PHP:
<?   
include ('config.php');
if ((
$nombre) && ($mail) && ($asunto) && ($mensaje) && ($submit)) {    // por si viene del form para enviar el email
    
$tuemail $mail;
    
mail($tuemail,$asunto,$mensaje,"From: Jesus<[email protected]>");
    echo 
"<b>Tu contraseña se ha enviado a la direccion email que proporcionaste</b><br>";
}




$query mysql_query("SELECT email,pass,nick FROM `users`  WHERE nick='$nick' ");  // hacemos un query para que seleccion el email, pass y nick del usuario que hemos puesto antes en el form
while($row=mysql_fetch_array($query))  
{

echo 
'<br>  
Dale a enviar para recibir en tu email los datos<br>  
<form method="post" action="pass.php">
<input type="hidden" name="nombre" value="'
.$row["nick"].'" readonly><br>
<input type="hidden" name="mail" value="'
.$row["email"].'" readonly><br>
<input type="hidden" name="asunto" value="Password perdido" readonly><br>
<input type="hidden" name="mensaje" value=" Ha sido solicitado la peticon de password perdido del usuario '
.$row["nick"].', si no ha solcitado esto simplemente borre este email. su password: '.$row["pass"].'" readonly><br>
<input type="submit" value="enviar" name="submit">
</form>'
;  // creamos el formulario odne contiene los datos de el pass
}
?>
__________________
:cool: aprendiz :cool:
  #2 (permalink)  
Antiguo 23/02/2007, 16:56
 
Fecha de Ingreso: abril-2005
Mensajes: 253
Antigüedad: 19 años
Puntos: 0
Re: quien me ayuda acomodar este codigo

Pues masomenos le entiendo al codigo, se ke con la sentencia mysql_query selecciono los datos de la tabla users acomodandolo por el nick, y ke con el while muestro los resultados ke hay en esa tabla.
Y con el if recojo los datos ke estan en las variables del formulario ke esta despues del while ke se encarga de recoger los datos de la tabla user, para luego enviarselo al if y este lo envie por mail.
Pero el problema es como juntar tanto el formulario del principio ke es el ke se encarga de enviar el nombre del usuario a ser buscado en la tabla y el formulario ke contiene los datos del resultado de la tabla.
Para ke nada mas presionando solo una vez el boton enviar envie los datos por emial.
un ejemplo seria el de esta pagina:
http://www.forosdelweb.com/login.php?do=lostpw
__________________
:cool: aprendiz :cool:
  #3 (permalink)  
Antiguo 24/02/2007, 18:48
 
Fecha de Ingreso: abril-2005
Mensajes: 253
Antigüedad: 19 años
Puntos: 0
Re: quien me ayuda acomodar este codigo

apoco no hay naiden ke me ayude a solucionar esta bronca ke traigo.
O acaso existe alguna otra forma ke alguien me pueda explicar como se hace, porke la verdad ya me kebre el coco de tanto estarle pensando como poderlo hacer.
Animensen se ke alguien de aki de este foro puede ayudarme. Y perdon por ser tan enfadoso, pero es ke necesito terminar esto lo mas pronto posible. Si no me interesara ya hubiera dejado el tema muerto, pero hasta ahorita ninguna respuesta mas ke las mias
__________________
:cool: aprendiz :cool:
  #4 (permalink)  
Antiguo 24/02/2007, 21:03
Avatar de geq
geq
 
Fecha de Ingreso: agosto-2006
Ubicación: Rosario
Mensajes: 655
Antigüedad: 17 años, 8 meses
Puntos: 22
Re: quien me ayuda acomodar este codigo

bueno yo te ayudo 8D

eso esta basicamente bien, solo agregaria un die() despues de mandar el email e imprimir el mensaje

pero claro,entiendo que qieras obiar el tedioso paso de presionar el boton por segunda vez

mira haz lo siguiente, que el script pass.php, chekee que el user exista, genere el mensaje y lo envia, todo junto. para eso:

luego del include(), quita la linea que dice:
Código:
if (($nombre) && ($mail) && ($asunto) && ($mensaje) && ($submit)) {
ahora lo qe debemos comprobar es que haya ingresado un nombre de usuario, para eso el if cambiaria a (te lo hago mas sencillo):
Código:
if(!$nick) {
die();
}
y por supuesto qitas el '}' debajo del echo (luego de enviar el mail). de esa forma si no se ingreso un nick, simplemente terminará el script.

ahora sigue la parte de comprobar si el usuario existe. no usaremos el while, porque personalmente creo que es mejor comprobar directamente si aparecio alguna coincidencia

entonces quedaria:

Código:
$query = mysql_query("SELECT email,pass,nick FROM `users`  WHERE nick='$nick' ");
lo siguiente es comprobar si $query contiene algun registro:
Código:
if(mysql_num_rows($query)) {
//enviamos el mail
}
ahora solo envia el mail e imprime el mensaje donde lo indica el comentario. si quieres te digo que te quedaria ahi en el medio:

Código:
$nombre=mysql_result($query,0,"nick");
$mail=mysql_result($query,0,"email");
$pass=mysql_result($query,0,"pass");
$asunto="Password perdido";
$mensaje=" Ha sido solicitado la peticion de password perdido del usuario $nombre, si no ha solcitado esto simplemente borre este email. su password: $pass";

mail($mail,$asunto,$mensaje,"From: Jesus<[email protected]>"); 
echo "<b>Tu contraseña se ha enviado a la direccion email que proporcionaste</b><br>";
y es todo,no era tan complicado ^^
espero haberte ayudado


exitos
  #5 (permalink)  
Antiguo 25/02/2007, 13:59
 
Fecha de Ingreso: abril-2005
Mensajes: 253
Antigüedad: 19 años
Puntos: 0
Re: quien me ayuda acomodar este codigo

Amigo muchas grasias tu ejemplo me a servido de mucho, tambien me puse a revisar tu pagina, y veo ke eres un exelente programador, talves para mas adelante te pueda contactar para ver si puedes ayudarme con un proyecto ke estoy realizando, se ke eres un exelente programador y pues gente como tu se necesitan para realizar este proyecto. Animo.
__________________
:cool: aprendiz :cool:
  #6 (permalink)  
Antiguo 25/02/2007, 14:02
Avatar de geq
geq
 
Fecha de Ingreso: agosto-2006
Ubicación: Rosario
Mensajes: 655
Antigüedad: 17 años, 8 meses
Puntos: 22
Re: quien me ayuda acomodar este codigo

bueno,me alegro qe te haya servido
basta de alagos me haras sonrojar xDD gracias ^^!!

exitos!!
  #7 (permalink)  
Antiguo 25/02/2007, 22:16
 
Fecha de Ingreso: abril-2005
Mensajes: 253
Antigüedad: 19 años
Puntos: 0
Re: quien me ayuda acomodar este codigo

aporvechando este tema alguien ha tratado con el pakete ke ofrece pear el quickform.
Saben como procesar el formulario, yo utlizo el quickform con el quick form controller y me baso del ejemplo wirzard, saben como procesar ese formulario
__________________
:cool: aprendiz :cool:
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 10:56.