Foros del Web » Programando para Internet » PHP »

Como Enviar mail de confirmacion...

Estas en el tema de Como Enviar mail de confirmacion... en el foro de PHP en Foros del Web. Alguien puede ayudarme con esto ???? Tengo un formulario de registro con los campos k necesito mi php el cual genera una clave la guarda ...
  #1 (permalink)  
Antiguo 25/04/2006, 14:53
 
Fecha de Ingreso: abril-2006
Mensajes: 3
Antigüedad: 18 años, 7 meses
Puntos: 0
Como Enviar mail de confirmacion...

Alguien puede ayudarme con esto ????

Tengo un formulario de registro con los campos k necesito mi php el cual genera una clave la guarda en mi base de datos junto con la informacion del usuario k se haya registrado....

Mi pregunta es como puedo enviarle la clave por email a el e mail k el escribio en el formulario...

Esta desarrollado en PHP y con un Servidor en linux Ubuntu 5.10 ,apache y Mysql----


De antemano Gracias.....
  #2 (permalink)  
Antiguo 25/04/2006, 15:00
 
Fecha de Ingreso: noviembre-2004
Mensajes: 159
Antigüedad: 20 años
Puntos: 0
Hola

Almacenas el valor de ese campo en una variable. Luego le pasas esa variable a la funcion mail.
que lo hara todo por ti. Seria bueno que pongas tu codigo.



Un saludo

A. Acosta
  #3 (permalink)  
Antiguo 25/04/2006, 15:35
 
Fecha de Ingreso: abril-2006
Mensajes: 3
Antigüedad: 18 años, 7 meses
Puntos: 0
aki esta

<?php
function generar_password () {
$i=0;
$password="";
// Aqui colocamos el largo del password
$pw_largo = 8;
// Colocamos el rango de caracteres ASCII para la creacion de el password
$desde_ascii = 50; // "2"
$hasta_ascii = 122; // "z"
// Aqui quitamos caracteres especiales
$no_usar = array (58,59,60,61,62,63,64,73,79,91,92,93,94,95,96,108, 111);
while ($i < $pw_largo) {
mt_srand ((double)microtime() * 1000000);
// limites aleatorios con tabla ASCII
$numero_aleat = mt_rand ($desde_ascii, $hasta_ascii);
if (!in_array ($numero_aleat, $no_usar)) {
$password = $password . chr($numero_aleat);
$i++;
}
}
return $password;

}
// Y aqui ejecutamos la funcion y la guardamos en $p_generado, luego simplemente la cargamos
$p_generado=generar_password();

// Conexion a la base de datos
$server = "localhost";
$dbuser = "";
$dbpass = "";
$dbname = "";
mysql_connect($server,$dbuser,$dbpass) or die ("Could not establish connection"); // make connection
mysql_select_db($dbname); // select database

if(trim($HTTP_POST_VARS["email"]) != "" &&
trim($HTTP_POST_VARS["username"]) != "")
{

// convert posted info to easy to use variables
$user = $_REQUEST['username'];//get username from form
$email = $_REQUEST['email'];// get email from form
$puesto = $_REQUEST['puesto'];// get email from form
$nempresa = $_REQUEST['nempresa'];//get username from form
$sweb = $_REQUEST['sweb'];//get password from form
$giro = $_REQUEST['giro'];// get email from form
$tel = $_REQUEST['tel'];// get email from form
$telo = $_REQUEST['telo'];// get biography from form
$fax = $_REQUEST['fax'];// get biography from form
$direccion = $_REQUEST['direccion'];//get username from form
$cd = $_REQUEST['cd'];// get biography from form
$edo = $_REQUEST['edo'];// get biography from form
$pais = $_REQUEST['pais'];// get biography from form

// strip away any dangerous tags
$user=strip_tags($user);
$email=strip_tags($email);
$puesto=strip_tags($puesto);
$nempresa=strip_tags($nempresa);
$sweb=strip_tags($sweb);
$giro=strip_tags($giro);
$tel=strip_tags($tel);
$telo=strip_tags($telo);
$fax=strip_tags($fax);
$direccion=strip_tags($direccion);
$cd=strip_tags($cd);
$edo=strip_tags($edo);
$pais=strip_tags($pais);

// Quitar espacios en las variables
$user=str_replace(" ","",$user);
$email=str_replace(" ","",$email);

// Quitar posiblesespacios escapados
$user=str_replace("%20","",$user);
$email=str_replace("%20","",$email);

// add slashes to stop hacking
$user=addslashes($user);
$email=addslashes($email);

// minimo de caracteres
$minuser_len = 6; //username minimum length

if(strlen($user) < $minuser_len || strlen($email) < $minemail_len)
{
die("Debe ingresar un Nombre y un Correo Electronico");
}

// create the SQL query to be executed
$request = "INSERT INTO `users` ( `userid` , `username` , `email` , `puesto` , `nempresa` , `sweb` , `giro` , `tel` , `telo` , `fax` , `direccion` , `cd` , `edo` , `pais` , `password`) VALUES ('', '$user', '$email', '$puesto', '$nempresa', '$sweb', '$giro', '$tel', '$telo', '$fax', '$direccion', '$cd', '$edo', '$pais', '$p_generado');";

// execute the query
$result = mysql_query($request);

// check if succesful registration
if($result)
{
echo "El Registro ha sido llevado a cabo con Exito, En breve recibiras un Correo Electronico de confirmacion....";
}
else {
echo "Error en el scrip externo";
}
}
else
{
echo "Debe llenar los campos de Correo Electronico y Nombre...";

}

mysql_close();

?>

mi pregunta donde puedo colocar la funcion mail para que envie el correo electronico al mail de mi usuario registrado???
  #4 (permalink)  
Antiguo 25/12/2009, 23:09
 
Fecha de Ingreso: septiembre-2008
Mensajes: 67
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: Como Enviar mail de confirmacion...

Acuerdate lo primero para poder leer mejor tu scrip ponerlo entre las etiquetas php que te da el foro asi poder interpretarlo mejor
Código PHP:
echo "El Registro ha sido llevado a cabo con Exito, En breve recibiras un Correo Electronico de confirmacion...."
yo diria que metieras una funcion header aqui donde lo envias mediante sessions a otra pagina que le confirma que le llega el correcto mail en esa pagina pues nada le pones el script de envio de mail php por ejemplo phpmail


ejemplo
Código PHP:
 header("location: ../enviopass.php"); 
saludos
Felices fiestas

Te dejo como lo hice yo por que me parecio buena la manera ya que no encontraba la de generación de código para el envio con la variable confirmacion.php?e3jiosadj038
Código PHP:
<?php
function gen_pass () {
$i=0;
$password="";
// Aqui colocamos el largo del password
$pw_largo 8;
// Colocamos el rango de caracteres ASCII para la creacion de el password
$desde_ascii 50// "2"
$hasta_ascii 122// "z"
// Aqui quitamos caracteres especiales
$no_usar = array (58,59,60,61,62,63,64,73,79,91,92,93,94,95,96,108111);
while (
$i $pw_largo) {
mt_srand ((double)microtime() * 1000000);
// limites aleatorios con tabla ASCII
$numero_aleat mt_rand ($desde_ascii$hasta_ascii);
if (!
in_array ($numero_aleat$no_usar)) {
$password $password chr($numero_aleat);
$i++;
}
}
return 
$password;

}
// Y aqui ejecutamos la funcion y la guardamos en $p_generado, luego simplemente la cargamos
$p_gen gen_pass();
?>
<?
    
include("dbconexion.php");
    if (isset(
$_POST["usuario"])) {
    
$usuario $_POST["usuario"];
    
$email $_POST["email"];
    
$responsable $_POST["responsable"];
    
$telefono $_POST["telefono"];
    if(
$usuario==NULL|$email==NULL|$responsable==NULL|$telefono==NULL) {
    echo 
"un campo est&aacute; vacio.";
    }else{
    
$checkuser mysql_query("SELECT usuario FROM usuarios WHERE usuario='$usuario'");
    
$username_exist mysql_num_rows($checkuser);
    
$checkemail mysql_query("SELECT email FROM usuarios WHERE email='$email'");
    
$email_exist mysql_num_rows($checkemail);
    if (
$email_exist>0|$usuario_exist>0) {
    echo 
"EL nombre de usuario o la cuenta de correo estan ya en uso";
    }
    
$usuario=str_replace(" ","",$usuario);
    
$email=str_replace(" ","",$email);

// Quitar posiblesespacios escapados
    
$usuario=str_replace("%20","",$usuario);
    
$email=str_replace("%20","",$email);

// add slashes to stop hacking
   
$usuario=addslashes($usuario);
   
$email=addslashes($email);

// minimo de caracteres
   
$minuser_len 6//username minimum length
   
if(strlen($usuario) < $minuser_len || strlen($email) < $minemail_len)
   {
   echo(
"El usuario debe tener como mínimo 6 digitos");
   }else{
   
$query "INSERT INTO usuarios (usuario, email, responsable, telefono, pass1) VALUES('$usuario','$email','$responsable','$telefono','$p_gen')";
    
mysql_query($query) or die(mysql_error());
    echo 
header ("location: ../comunidad/enviopass.php");
    }
    }
    }
    
?>

Última edición por h3greed; 26/12/2009 a las 10:35 Razón: realice el codigo correctamente
  #5 (permalink)  
Antiguo 26/12/2009, 15:49
 
Fecha de Ingreso: septiembre-2008
Mensajes: 67
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: Como Enviar mail de confirmacion...

Yo ya lo hice funcionar todo en un solo lugar con la funcion mail

Código PHP:
  <?php
function gen_pass () {
$i=0;
$password="";
// Aqui colocamos el largo del password
$pw_largo 8;
// Colocamos el rango de caracteres ASCII para la creacion de el password
$desde_ascii 50// "2"
$hasta_ascii 122// "z"
// Aqui quitamos caracteres especiales
$no_usar = array (58,59,60,61,62,63,64,73,79,91,92,93,94,95,96,108111);
while (
$i $pw_largo) {
mt_srand ((double)microtime() * 1000000);
// limites aleatorios con tabla ASCII
$numero_aleat mt_rand ($desde_ascii$hasta_ascii);
if (!
in_array ($numero_aleat$no_usar)) {
$password $password chr($numero_aleat);
$i++;
}
}
return 
$password;

}
// Y aqui ejecutamos la funcion y la guardamos en $p_generado, luego simplemente la cargamos
$p_gen gen_pass();
?>
<?
   
include("dbconexion.php");
   if (isset(
$_POST["usuario"])) {
   
$usuario $_POST["usuario"];
   
$email $_POST["email"];
   
$responsable $_POST["responsable"];
   
$telefono $_POST["telefono"];
   if(
$usuario==NULL|$email==NULL|$responsable==NULL|$telefono==NULL) {
   echo 
"un campo est&aacute; vacio.";
   }else{
   
$usuario=str_replace(" ","",$usuario);
   
$email=str_replace(" ","",$email);
   
$usuario=str_replace("%20","",$usuario);// Quitar posiblesespacios escapados
   
$email=str_replace("%20","",$email);
   
$usuario=addslashes($usuario);// add slashes to stop hacking
   
$email=addslashes($email);
   
$minuser_len 6//username minimum length
   
if (strlen($usuario) < $minuser_len || strlen($email) < $minemail_len){
   echo 
"El usuario debe tener como mínimo 6 digitos";
   }else{
   
$checkuser mysql_query("SELECT usuario FROM usuarios WHERE usuario='$usuario'");
   
$username_exist mysql_num_rows($checkuser);
   
$checkemail mysql_query("SELECT email FROM usuarios WHERE email='$email'");
   
$email_exist mysql_num_rows($checkemail);
   if (
$email_exist>0|$usuario_exist>0) {
   echo 
"EL nombre de usuario $usuario o la cuenta de correo $email estan ya en uso";
   }else{
   
$query "INSERT INTO usuarios (usuario, email, responsable, telefono, pass1) VALUES('$usuario','$email','$responsable','$telefono','$p_gen')";
   
mysql_query($query) or die(mysql_error());
   echo 
"El usuario $usuario se ha generado correctamente con la contraseña le estará llegando al correo brindado por usted";
   
$email $_POST['email']; 
   
$usuario $_POST['usuario'];
   
$asunto =    'Confirmacion de registro.'
   
$mensaje =   "El registro se ha realizado correctamente tu password es    $p_gen"
   
$cabeceras 'From: [email protected]"\r\n" 
                         
'Reply-To: [email protected]"\r\n" 
                         
'X-Mailer: PHP/' phpversion(); 

   
mail($email$asunto$mensaje$cabeceras);  
}
}
}
}
?>
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 12:51.