Tengo esta funcion para xajax k sirve para procesar un formulario donde aparte de campos de texto hay una foto k subir:
Código PHP:
function procesar_formulario($form_entrada)
{
//creo el xajaxResponse para generar una salida
$respuesta = new xajaxResponse('UTF-8');
//validación
$error_form = "";
if ($form_entrada["nombre"] == "")
$error_form = 'Porfavor escribe tu nombre';
elseif ($form_entrada["password"] == "")
$error_form = "Porfavor escribe tu contraseña";
elseif ($form_entrada["sexo"] == "")
$error_form = "Porfavor dinos si eres una chica o un chico!";
elseif ($form_entrada["edad"] == "")
$error_form = "Porfavor dinos que edad tienes";
elseif ($form_entrada["pais"] == "999")
$error_form = "Porfavor dinos en que pais vives";
elseif ($form_entrada["ciudad"] == "0")
$error_form = "Porfavor dinos en que ciudad vives";
elseif ($form_entrada["foto"] == "")
$error_form = "Porfavor incluye una foto tuya";
elseif ($form_entrada["descripcion"] == "")
$error_form = "Porfavor dinos como te describirias";
elseif ($form_entrada["email"] == "")
$error_form = "Porfavor dejanos tu email";
elseif (!isset($form_entrada["condiciones"]))
$error_form = "Debes aceptar las condiciones para registrarte";
//Existe un campo vacio, el formulario no se procesa y se muestra en pantalla el campo que se debe rellenar:
if ($error_form != "")
{
$respuesta->addAssign("mensaje","innerHTML","<span style='color:red;'><p>$error_form</p></span>");
}
//Todos los campos han sido rellenados, el formulario se procesa:
else
{
//Enviamos a las bases los datos del formulario;
mysql_query("INSERT INTO usuarios (nombre,password,sexo,edad,pais,ciudad,descripcion,email) values ('".$form_entrada["nombre"]."','".$form_entrada["password"]."','".$form_entrada["sexo"]."','".$form_entrada["edad"]."','".$form_entrada["pais"]."','".$form_entrada["ciudad"]."','".$form_entrada["descripcion"]."','".$form_entrada["email"]."')") or die(mysql_error());
//Guardamos la foto original en el servidor;
move_uploaded_file($HTTP_POST_FILES[$form_entrada["foto"]]['tmp_name'], $dir_fotos_originales."/".$nombre_foto);
}
return $respuesta;
}