Foros del Web » Programando para Internet » Javascript » Frameworks JS »

problema con ajax php y html, urgentillo

Estas en el tema de problema con ajax php y html, urgentillo en el foro de Frameworks JS en Foros del Web. os comento. necesito que a la hora de registrarse , salga un mensajito diciendo que se ha registrado correcto o no (vamos que necesito que ...
  #1 (permalink)  
Antiguo 11/06/2008, 12:57
 
Fecha de Ingreso: junio-2008
Mensajes: 3
Antigüedad: 15 años, 10 meses
Puntos: 0
problema con ajax php y html, urgentillo

os comento.

necesito que a la hora de registrarse , salga un mensajito diciendo que se ha registrado correcto o no (vamos que necesito que en el html me muestre la salida del echo del php)

he conseguido que a la hora de registrarse, ya no salte a la pagina php, sino que lo haga de segundo plano y registre bien, pero me falta ese ultimo detalle.

y eso lo mismo con el logeo

aclaro: si no pongo que lo haga en segundo plano, si que me sale el mensajito correcto, pero me cambia de pagina y lo que quiero es que salga todo en la html
--

tambien queria saber la manera de poder crear un xml a partir de una consulta para poder mostrarla en mi pagina html.

muchas gracias a todos.
  #2 (permalink)  
Antiguo 11/06/2008, 15:50
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: problema con ajax php y html, urgentillo

Hola jala,

Si publicas tu código que usas es más fácil que te orientemos, pero de entrada te indico que para mostrar un cuadro debes de usar el comando alert() de JavaScript.

Saludos.
  #3 (permalink)  
Antiguo 12/06/2008, 00:23
 
Fecha de Ingreso: junio-2008
Mensajes: 3
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: problema con ajax php y html, urgentillo

buenas.

os dejo el codigo y comento.

tengo el index.html y el registrar.php

en el index.html

Código:
 <form>
        <p>
          <label for="username"><br />
          Nombre</label>
          <input tabindex="1" type="username" name="username2" id="username" class="username" />
        </p>
        <p>
          <label for="password"><br />
          Contrase&ntilde;a:</label>
          <input name="password" type="password" class="username" id="password" tabindex="2" />
          <br />
        </p>
        <p>
          <label for="cpassword"><br />
          Repite contrase&ntilde;a:</label>
          <input name="cpassword" type="password" class="username" id="cpassword" tabindex="3"/>
        </p>
        <p>
          <label for="email"><br />
          E-mail:</label>
          <input name="email" type="text" class="username" id="email" tabindex="4" />
        </p>
        <p>
                <input type="button" class="but" tabindex="5" onclick="inicio()" value="Crear usuario"/> </form>
el form en el html donde se registrara el usuario, al darle a registrar manda a la funcion inicio


funcion inicio() que a su vez llama a inicio2()

Código:
<script language="JavaScript" type="text/javascript">
	function inicio(){
	var username = document.getElementById('username').value;
	var password = document.getElementById('password').value;
	var email = document.getElementById('email').value;
	var cpassword = document.getElementById('cpassword').value;
	var url ="registrar.php";
	createRequest();
	request.open("POST",url, true);
	request.onreadystatechange = inicio2;
	request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	request.send("random="+Math.random+"&username="+username+"&password="+password+"&cpassword="+cpassword+"&email="+email);	
</script>

<script language="JavaScript" type="text/javascript">
function inicio2log(){
	 if (request.readyState == 4) 
		{
			if(request.status == 200)
			{
				var variable= request.responseText;
			}
		}
}
</script>
y en el php del registro tengo todo el codigo que hace que meta los datos en la base de datos

Código PHP:
<? 
$dbhost
="localhost";  // host del MySQL (generalmente localhost)
$dbusuario="root"// aqui debes ingresar el nombre de usuario
                      // para acceder a la base
$dbpassword=""// password de acceso para el usuario de la
                      // linea anterior
$db="login";        // Seleccionamos la base con la cual trabajar
$conexion mysql_connect($dbhost$dbusuario);
mysql_select_db($db$conexion);
//header("Content-Type: text/xml");
// Preguntaremos si se han enviado ya las variables necesarias
if (isset($_POST["username"])) {
$user stripslashes($_POST["username"]);
$pass stripslashes($_POST["password"]);
$cpass stripslashes($_POST["cpassword"]);
$email stripslashes($_POST["email"]);
   
// Hay campos en blanco
   
if($user==NULL $pass==NULL $cpass==NULL $email==NULL) {
      echo 
"Uno de los campos está vacío. Vuelve a revisarlo";
   }
   else
   {
      
// ¿Coinciden las contraseñas?
      
if($pass!=$cpass) {
         echo 
"Las contraseñas no coinciden. Por favor vuelve a intentarlo";
      }else{
            
//Todo parece correcto procedemos con la inserccion
            
$mpass md5($pass);
            
$nonce md5(uniqid(rand(), true));
            
$query "INSERT INTO users (username, password, email, nonce) VALUES('$user' , '$mpass' , '$email', '$nonce')";
            
mysql_query($query) or die(mysql_error());
            echo 
"User creado!";
        
         }
      }
   }
?>


cuando lleno el form y le doy a enviar me hace todo el registro bien, pero sin enseñarme nada en el index.html, y lo que necesitaria es mostrar una fracesita justo abajo del formulario por ejemplo que me informe de como ha sido procesado el registro (si en el php me ha devuelto user creado, que me lo saque en el index.html, y si falla algun campo que tambien me lo muestre en el index.html en algun div por ejemplo,)

pues eso es mi duda

gracias!
  #4 (permalink)  
Antiguo 12/06/2008, 08:04
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: problema con ajax php y html, urgentillo

En tu evento onreadystatechange, haces referencia a una función inicio2, la cual no tienes definida, necesitas crearla y debe de ser algo similar a inicio2log, y donde tienes tu var variable solo agregas el alert() de el registro exitoso.

Saludos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 01:31.