Hola, tras mi googleo y un poquito de trabajo e añadido al codigo que cuando se registre el usuario la contraseña se codifique con sha1, que se inserte la ip del que se registra, que se inserte la fecha y hora y que se tenga que escribir minimo 4 caracteres en el campo contraseña. Me gustaria que vierais el codigo que a qedado y que me digais si esta bien todo o hay algo raro por hay aunque de momento funciona perfecto.
Código PHP:
<?php
include("config.php");
// Preguntaremos si se han enviado ya las variables necesarias
if (isset($_POST["email"])) {
$correo = $_POST["email"];
$password = $_POST["password"];
$cpassword = $_POST["cpassword"];
//recoger direccion ip
$ip = $_SERVER['REMOTE_ADDR'];
// Hay campos en blanco
if($password==NULL|$cpassword==NULL|$correo==NULL) {
echo "un campo está vacio.";
}else{
//Validar direccion de email
if (!preg_match(
'/^[^0-9][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[@][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[.][a-zA-Z]{2,4}$/',
$correo)) {
echo "Email no válido.";
}else{
//Minimo de caracteres en campo contraseña
if (strlen($password)<4)
{
echo "Mínimo 4 carácteres en la contraseña";
// no tiene mas de 4 caracteres
}else{
// ¿Coinciden las contraseñas?
if($password!=$cpassword) {
echo "Las contraseñas no coinciden";
}else{
//encriptar contraseña
$password = sha1("CoriaWeb");
// Comprobamos si la cuenta de correo ya existe
$checkemail = mysql_query("SELECT email FROM usu WHERE email='$correo'");
$email_exist = mysql_num_rows($checkemail);
if ($email_exist>0) {
echo "La cuenta de correo esta ya en uso";
}else{
//Todo parece correcto procedemos con la inserccion
$query = "INSERT INTO usu (password, email, ip, fecha) VALUES('$password','$correo','$ip', NOW())";
mysql_query($query) or die(mysql_error());
echo "El usuario $correo ha sido registrado de manera satisfactoria.";
}
}
}
}
}
}
?>