¡Hola!
Tengo un problema:
resulta que tengo en mi página una barra superior que tiene un include a un menú. En ese menú, hay un link que dice 'Registrarse'.
Bien, este te manda (en ese mismo div,
mediante JQUERY) a un formulario que te hace ingresar un nombre de usuario.
El formulario se envía perfectamente y también se procesa bien, el problema es que no puedo imprimir la variable de post ya que no me la toma ni como
$_POST['name'],
$_POST[name], ni
$user (habiendo ya asignado la variable de post a esta).
Código de formulario:
Código PHP:
Ver original<style>
.success{
border: 2px solid #009400;
background: #B3FFB3;
color: #555;
font-weight: bold;
}
.error{
border: 2px solid #DE001A;
background: #FFA8B3;
color: #000;
font-weight: bold;
}
</style>
<script type="text/javascript">
$(document).ready(function(){
$("#comprobacion").submit(function(){
$.ajax({
type: "POST",
url: "../registro/2.php",
dataType: "json",
success: function(msg){
$("#log").removeClass('error');
$("#log").removeClass('success');
$("#log").addClass(msg.status);
$("#log").html(msg.message);
},
error: function(){
$("#log").removeClass('success');
$("#log").addClass('error');
$("#log").html("Ahora mismo no podemos comprobar la disponibilidad del usuario. Inténtalo más tarde.");
}
});
//make sure the form doesn't post
return false;
});
});
</script>
<form id="comprobacion" style="margin: 0 auto; width: 300px;" method="post">
<div id="formResponse">
<input name="name" type="text">
<input name="submitForm" type="submit" value="Submit Form">
</div>
</form>
Código del procesamiento:
Código PHP:
Ver original<?
include('../conectar.php');
//response array with status code and message
$response_array = array();
// proceso
$user = $_POST['name'];
if($user == "")
{
$response_array['status'] = 'error';
$response_array['message'] = '¡Para poder comprobar la disponibilidad del nombre de usuario, debes ingresar uno!';
}
if($user != "")
{
$consulta = mysql_query("SELECT usuario FROM datosp WHERE usuario = '$user'",$conexion); if($num == 0)
{
$response_array['status'] = 'success';
$response_array['message'] = '¡$user está disponible!';
}
if($num == 1)
{
$response_array['status'] = 'error';
$response_array['message'] = '¡$user está en uso!';
}
}
//send the response back
?>
Aclaro que efectivamente la solicitud responde a si está disponible o en uso (lo hace correctamente) , pero que al imprimir el mensaje, este dice $user ó $_POST[user] en vez del nombre que el usuario eligió
Gracias =)