Código PHP:
<?php
// En versiones de PHP anteriores a la 4.1.0, debería utilizarse $HTTP_POST_FILES en lugar
// de $_FILES.
$target_path = "images/clientes/";
/***************************
en esta línea, el move_uploaded_files debes ejecutarlo sólo en el caso que $_FILES['foto']['name'] != '' para que en caso de que no se haya subido foto nueva, no intente subir una nueva y machaque la anterior
*****************************/
$target_path = $target_path . basename( $_FILES['foto']['name']); if(move_uploaded_file($_FILES['foto']['tmp_name'], $target_path)) { echo "El archivo ". basename( $_FILES['foto']['name']). " ha sido subido";
}
?>
Por otro lado
Código PHP:
<?php
// Actualizamos en funcion del id que recibimos
$id=$_POST["IdUsuario"];
$nombre=$_POST["Nombre"];
$apellidos=$_POST["Apellidos"];
$pass=$_POST["Password"];
$mail=$_POST["Username"];
$direccion=$_POST["Direccion"];
$postal=$_POST["Postal"];
$poblacion=$_POST["Poblacion"];
$ciudad=$_POST["Ciudad"];
$tel=$_POST["Telefono"];
$dni=$_POST["Dni"];
//esta línea sobra puesto que la evaluamos a continuación -----> $foto=$_FILES['foto']['name'];
$informa=$_POST["Informacion"];
$fecha=$_POST["Fecha"];
$estado=$_POST["intestado"];
/********************************
aqui antes de hacer el update, deberías hacer lo mismo.
**********************************/
if ($_FILES['foto']['name'] != '') $uploadFoto = " foto = '".$_FILES['foto']['name']."'";
//tu consulta es esta
$sSQL="Update Usuario Set Nombre='$nombre', Apellidos='$apellidos', Password='$pass', Username='$mail', Direccion='$direccion', Postal='$postal', Poblacion='$poblacion', Ciudad='$ciudad', Telefono='$tel', Dni='$dni', foto='$foto', Informacion='$informa', intestado='$estado' where IdUsuario='$id'";
mysql_query($sSQL);
//modificada quedaría así
$sSQL="Update Usuario Set Nombre='$nombre', Apellidos='$apellidos', Password='$pass', Username='$mail', Direccion='$direccion', Postal='$postal', Poblacion='$poblacion', Ciudad='$ciudad', Telefono='$tel', Dni='$dni', $uploadFoto, Informacion='$informa', intestado='$estado' where IdUsuario='$id'";
mysql_query($sSQL);
Creo que está todo bien, no lo he probado que estoy ahora fuera del trabajo, pero a botepronto debería darte la idea.