Ver Mensaje Individual
  #8 (permalink)  
Antiguo 20/11/2011, 11:00
campussummertime
 
Fecha de Ingreso: octubre-2011
Mensajes: 129
Antigüedad: 12 años, 6 meses
Puntos: 1
Respuesta: configurando phpmailer

hola,
pues mira me he instalado el qk smtp server y ahora el error que me sale es el siguiente

( ! ) Warning: mail() [function.mail]: SMTP server response: 503 Bad sequence of commands in C:\wamp\www\kfernandez\guardar.php on line 68

Configuramos el guardar.php de la siguiente manera:

<?php
//db
$sitio = "localhost";
$usuario = "kfernandez";
$pass = "brothers";
$base = "kfernandez";
$con = mysql_connect($sitio, $usuario, $pass);
//post
$name = $_POST["name"];
$surname = $_POST["surname"];
$date = $_POST["date"];
$email = $_POST["email1"];
$email2 = $_POST["email2"];
$password1 = $_POST["password1"];
$password2 = $_POST["password2"];
$alias = $_POST["alias"];
// distingue los pass que vienen por POST y los que asignas hash
// para cambios futuros te resutará más sencillo reescribir el script
if( mysql_select_db($base, $con) )
{
// Pones en true Pass y Mail
$passw = true;
$mail = true;
//GENERAR RANDOM
$random =rand(23456789,98765432);
// el password2 creo que sobra en la DB
$consulta = "insert into web values ('','$name','$surname','$date','$email','$email2', '$password1','$password2','$alias','','','$random' ,'0')";
//
$lastid= mysql_insert_id();
($lastid);

//
// Arriba ya has asignado el valor a las variables!!
//if( $_POST['password1'] != $_POST['password2'] )
if( $password1 != $password2 )
{
echo 'Los campos de contraseña no coinciden...!';
$passw = false;
}

// Antes de esto deberías comprobar si ya existe el mail en la DB
// Arriba ya has asignado el valor a las variables!!
//if( $_POST['email1'] != $_POST['email2'] )
if( $email != $email2 )
{
echo 'Los emails no coinciden!';
$mail = false;
}
// Si falla $pass o $mail pone en false una de las dos variables.
// por lo que no debería pasar el if
if( $pass && $mail )
{
// si da error la query imprimirá los datos para localizarlo,
// o puedes guardarlo en la DB para revisarlo a posteriori
try
{
mysql_query($consulta, $con);
}
catch( Exception $exc )
{
echo 'Ha ocurrido un error al insertar los datos';
echo $exc->getTraceAsString();
}
//mail
$to=$email1;
$subject="Activar tu cuenta";
$headers = "From:Mi web";
mail($to,$subject,$body,$headers);
$body = "
Hola,$name $surname

Tu necesitas actiat tu cuenta en el siguiente link

http;//localhost/kfernandez/activate.php?id=$lastid&code=$random \n\n

Gracias!
";
//

echo "El usuario ha sido registrado correctamente";
mkdir ("./users/$alias", 0755, true);
////Copiando directorios//
$origen = "./users/principal/"; //pon la carpeta origen
$destino = "./users/$alias/"; //pon la variable $nombre o una carpeta destino que ya exista
if ($vcarga = opendir($origen))
{
while($file = readdir($vcarga))
{
if ($file != "." && $file != "..")
{
if(copy($origen . $file, $destino . $file))
{
echo "<b>$file</b> se copió con éxito al directorio.<br>";
}
}
}
closedir($vcarga);
}
}
}
else
{
echo mysql_error($con);
}
?>