Foros del Web » Programando para Internet » PHP »

Email/Datos de nuevo usuario

Estas en el tema de Email/Datos de nuevo usuario en el foro de PHP en Foros del Web. hola, antes que nada tengo q agradecer mucho por todos los que hasta ahora me ayudaron con php. Hace poco q me meti en esto ...
  #1 (permalink)  
Antiguo 08/05/2010, 18:35
Avatar de djwall  
Fecha de Ingreso: abril-2010
Ubicación: Argentina
Mensajes: 61
Antigüedad: 14 años
Puntos: 0
Exclamación Email/Datos de nuevo usuario

hola, antes que nada tengo q agradecer mucho por todos los que hasta ahora me ayudaron con php. Hace poco q me meti en esto y cada dia es mas interesante.


Mi pregunta es, como unir estos 3 codigos?

uno es el "INSERT" q los mete en la BD, y los otros dos van dentro de el.

Es para enviarle un email con los datos de la cuenta del nuevo usuario.
Estos me lo paso "NEW".-


Este es mi INSERT q se llama "crea_usuarios.php"


Código PHP:
<? 
// modificacion de codigo Xombra (www.xombra.com) 21/03/2009 para sectorweb.net 
include("config.php"); /*Traemos el archivo config*/ 
/*Recibimos las variables por el metodo POST*/ 
$login htmlspecialchars(trim($_POST['login'])); 
$pass1 trim($_POST['pass1']); 
$pass2 trim($_POST['pass2']); 
$nombrehtmlspecialchars(trim($_POST['nombre'])); 
$apaternohtmlspecialchars(trim($_POST['apaterno'])); 
$amaternohtmlspecialchars(trim($_POST['amaterno'])); 
$email htmlspecialchars(trim($_POST['email'])); 
/*Hacemos la consulta */ 
// $query="SELECT * FROM usuarios WHERE login='$login'"; //ANTES 

$link=mysql_connect($server,$dbuser,$dbpass); 
$query sprintf("SELECT login FROM usuarios WHERE usuarios.login='%s'",  // Ahora 
       
mysql_real_escape_string($login));  
$result=mysql_db_query($database,$query,$link); 
if(
mysql_num_rows($result)){ 
  echo 
"El usuario ya existe en la BD"
} else { 
mysql_free_result($result); 
/* Ahora comprovamos que los dos pass coinciden */ 
  
if($pass1!=$pass2) { 

      echo 
"Los passwords deben coincidir"

      echo 
'Click <a href="registro.html">aqui*</a> para volver al formulario'

  } else { 

    
/* Encriptamos "Ciframos" el password 

    // $pass1=crypt($pass2, "semilla"); // ANTES */ 

    
$pass1=sha1(md5($pass1)); // Ahora 
     
    /* $query="INSERT INTO usuarios (login, nombre, apaterno, amaterno, password, email) VALUES ('$login','$nombre','$apaterno', '$amaterno','$pass1','$email')"; */  // Antes 
   
    
$query  =  sprintf("INSERT INTO usuarios (login, nombre, apaterno, amaterno, password, email) VALUES ('%s','%s','%s', '%s','%s','%s')",  // Ahora 
                
mysql_real_escape_string($login),   mysql_real_escape_string($nombre), 
                
mysql_real_escape_string($apaterno),mysql_real_escape_string($amaterno),  
                
mysql_real_escape_string($pass1),   mysql_real_escape_string($email));        
     

    
$result=mysql_db_query($database,$query,$link); 

    if(
mysql_affected_rows()){ 
                 
    echo 
"Usuario introducido correctamente, en un momento seras redireccionado..."

    } else { 

    echo 
"Error introduciendo el usuario"

    } 
/* Cierre del else */ 

  
/* Cierre del else que corresponde a if(mysql_affected_rows.....) */ 
/* Cierre del else que corresponde a if(mysql_num_rows...) */ 
?>

Y estos dos lo que van adentro para enviar el email:


Código PHP:
include("class.phpmailer.php");  //Indica la direccion de los archivos que acabas de descargar
include("class.smtp.php"); //Indica la direccion de los archivos que acabas de descargar
 
//No modifiques nada excepto si se indica
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPAuth true;
$mail->SMTPSecure "ssl";
$mail->Host "smtp.gmail.com";
$mail->Port 465;
$mail->Username "[email protected]"//Agrega tu email de gmail
$mail->Password "userpass";  //Agrega tu password de tu cuenta de gmail 

Código PHP:
$query sprintf("INSERT INTO usuarios (login, nombre, apaterno, amaterno, password, email) VALUES ('%s','%s','%s', '%s','%s','%s')";
if(
$query){
//Envio por email
$mail->From "[email protected]"//Remitente (Si quieres especificarlo)
$mail->FromName "User Name"//REmitente (Si quieres especificarlo)
$mail->Subject "Asunto del email";
$mail->MsgHTML("<b>Bienvenido</b> <br> Estos son tus nuevos datos:<br><br> Username = ".$login." <br> Password = ".$pass1"<br>");
$mail->AddAddress($email,$nombre); //Agrega los datos de a donde queires enviar el email.
$mail->IsHTML(true);
if(!
$mail->Send()) {
echo 
"Error: " $mail->ErrorInfo;
} else {
echo 
"Mensaje enviado correctamente";
}


Alguien sabe como unirlos?
  #2 (permalink)  
Antiguo 09/05/2010, 13:43
Avatar de mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 14 años, 7 meses
Puntos: 214
Respuesta: Email/Datos de nuevo usuario

Hola
Como unirlos??
Pues yo pondria los últimos códigos en este if del primer código

Código PHP:
Ver original
  1. include("class.phpmailer.php");  //Indica la direccion de los archivos que acabas de descargar
  2. include("class.smtp.php"); //Indica la direccion de los archivos que acabas de descargar
  3.  
  4. //No modifiques nada excepto si se indica
  5. $mail = new PHPMailer();
  6. $mail->IsSMTP();
  7. $mail->SMTPAuth = true;
  8. $mail->SMTPSecure = "ssl";
  9. $mail->Host = "smtp.gmail.com";
  10. $mail->Port = 465;
  11. $mail->Username = "[email protected]"; //Agrega tu email de gmail
  12. $mail->Password = "userpass";  //Agrega tu password de tu cuenta de gmail
  13. //Envio por email
  14. $mail->From = "[email protected]"; //Remitente (Si quieres especificarlo)
  15. $mail->FromName = "User Name"; //REmitente (Si quieres especificarlo)
  16. $mail->Subject = "Asunto del email";
  17. $mail->MsgHTML("<b>Bienvenido</b> <br> Estos son tus nuevos datos:<br><br> Username = ".$login." <br> Password = ".$pass1. "<br>");
  18. $mail->AddAddress($email,$nombre); //Agrega los datos de a donde queires enviar el email.
  19. $mail->IsHTML(true);
  20. if(!$mail->Send()) {
  21. echo "Error: " . $mail->ErrorInfo;
  22. } else {
  23. echo "Mensaje enviado correctamente";
  24. }  
  25.              
  26.     echo "Usuario introducido correctamente, en un momento seras redireccionado...";
  27.  
  28. }

No hago el insert nuevamente pues ya esta previamente la operación de la
inserción

Espero esto sea a lo que te referias
Saludos

Etiquetas: codigos, email, unir, usuariosphp
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 00:05.