Hola amigos, estoy creando un codigo para que los usuarios pueda actualizar sus datos personales y su contraseña. Lo que llevo hecho hasta ahora es:
Código PHP:
<?php
include("../../../reg/config.php");
if (isset($_POST['id'])) {
$id = $_POST['id'];
$nombre = $_POST['nombre'];
$apellido1 = $_POST['apellido1'];
$apellido2 = $_POST['apellido2'];
$email = $_POST['email'];
$passwordantigua = trim($_POST['passwordantigua']);
$passwordnueva = trim($_POST['passwordnueva']);
$cpasswordnueva = trim($_POST['cpasswordnueva']);
// Hay campos en blanco
if($nombre==NULL|$apellido1==NULL|$apellido2==NULL) {
header("location: misdatos.php?error=1");
}else{
if(!$passwordantigua==NULL) {
if($passwordnueva==NULL|$cpasswordnueva==NULL) {
header("location: misdatos.php?error=1");
}else{
$passwordantigua = md5($passwordantigua);
$sql="SELECT password FROM usu WHERE email='".mysql_real_escape_string($id)."'";
$rs=mysql_query($sql);
$row = mysql_fetch_array($rs);
$password = $row['password'];
if($passwordantigua!=$password) {
echo "La contraseña no coincide";
}else{
echo "La contraseña coincide";
}
}
}
$result=mysql_query("UPDATE usu SET nombre='$nombre', apellido1='$apellido1', apellido2='$apellido2', email='$email' WHERE id ='".mysql_real_escape_string($id)."'",$db_link);
echo "Actualizado - Contraseña no cambiadas";
}
}
?>
Lo que pretendo es que se cambie solo el nombre y los apellidos si no a escrito nada en contraseña antigua, y si escriben algo en contraseña antigua quiero que comienze la validacion, es decir deberia de comprobar que la contraseña antigua escrita $passwordantigua coincida con la que hay guardada en la base de datos pero hay ando algo liado, podeis orientarme?