Foros del Web » Programando para Internet » Javascript »

Enviar formulario con JavaScript y recogerlo con PHP

Estas en el tema de Enviar formulario con JavaScript y recogerlo con PHP en el foro de Javascript en Foros del Web. Tengo el siguiente código HTML de un formulario de registro: @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código HTML: Ver original < form name = "formregistro" method = "post" action ...
  #1 (permalink)  
Antiguo 06/05/2010, 15:16
 
Fecha de Ingreso: mayo-2010
Mensajes: 52
Antigüedad: 13 años, 11 meses
Puntos: 0
Enviar formulario con JavaScript y recogerlo con PHP

Tengo el siguiente código HTML de un formulario de registro:

Código HTML:
Ver original
  1. <form name="formregistro" method="post" action="validacion.php">
  2.             <table>
  3.             <tr>
  4.                 <td class="right">Nombre de usuario:
  5.                 <td><input type="text" name="usuario" maxlength="18"><br>
  6.             <tr>
  7.                 <td class="right">Contraseña:
  8.                 <td><input type="password" name="pass" id="pass" maxlength="24"><br>
  9.             <tr>
  10.                 <td class="right">Confirmar contraseña:
  11.                 <td><input type="password" name="pass_" id="pass_" maxlength="24"><br>
  12.             <tr>
  13.                 <td class="right">E-mail:
  14.                 <td><input type="text" name="email" id="email" maxlength="50"><br>
  15.             <tr>
  16.                 <td class="right">Confirmar e-mail:
  17.                 <td><input type="text" name="email_" id="email_" maxlength="50"><br>
  18.             </table>
  19.             <input type="button" value="Enviar" name="registro" onClick="checkval();">
  20. </form>

Al pulsar el botón se ejecuta la siguiente función de JavaScript que está en el <head>

Código Javascript:
Ver original
  1. function checkval()
  2. {
  3.     if(document.getElementById('pass').value != document.getElementById('pass_').value)
  4.     {
  5.        alert('Las contraseñas que has introducido no son iguales');
  6.        return false;
  7.     }
  8.     else
  9.     {
  10.         if(document.getElementById('email').value != document.getElementById('email_').value)
  11.         {
  12.            alert('Las direcciones de correo electrónico introducidas no coinciden');
  13.            return false;
  14.         }
  15.         else
  16.         {
  17.             document.formregistro.submit();
  18.         };
  19.     };
  20. }


Todo correcto hasta que llega a la página de validación, donde por lo visto no llegan los valores del formulario.

Este es el código de validación.php:

Código PHP:
<?php
include("datosconexion.php");
$conexion=mysql_connect($dbhost$dbuser$dbpass) OR DIE ("Conexion fallida con la base de datos");
$bd=mysql_select_db($db$conexion) OR DIE ("Base de datos incorrecta");

if(isset(
$_POST['registro']))
{
    
$usuario$_POST['usuario'];
    
$pass$_POST['pass'];
    
$pass_$_POST['pass_'];
    
$email$_POST['email'];
    
$email_$_POST['email_'];

    if(isset(
$usuario))
    {
        
$sqlmysql_query("SELECT usuario FROM usuario WHERE usuario = '".$usuario."'");
        
        if(
$rowmysql_fetch_array($sql))
        {
            
header("refresh:2; index.php");
            echo 
"Error, el usuario ya existe";
        }
        else
        {
            
$sqlmysql_query("INSERT INTO usuario (usuario, pass, email) VALUES ('$usuario', '$pass', '$email')") OR DIE ("Error al registrar los datos");
            
header('refresh:3; index.php');
            echo 
"Registro completado, serás redirigido a la página principal";
        };
    };
};
?>
Imagino que será algo del POST, que habrá que cambiarlo para que sea compatible con el submit de JavaScript o algo por el estilo, agradecería cualquier ayuda.

Un saludo.
  #2 (permalink)  
Antiguo 08/05/2010, 01:55
 
Fecha de Ingreso: mayo-2010
Mensajes: 52
Antigüedad: 13 años, 11 meses
Puntos: 0
Respuesta: Enviar formulario con JavaScript y recogerlo con PHP

¿Nadie sabe como hacerlo?
  #3 (permalink)  
Antiguo 08/05/2010, 02:25
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: Enviar formulario con JavaScript y recogerlo con PHP

Hola:

A simple vista está correcto, aunque siempre es mejor hacer el envío con un botón del tipo submit...

Deberías controlar cuales son los datos que llegan a php (con var_dumo o print_r)...

Y de paso controlar en la consola de errores de tu navegador, si se produce alguno.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #4 (permalink)  
Antiguo 08/05/2010, 13:01
 
Fecha de Ingreso: mayo-2010
Mensajes: 52
Antigüedad: 13 años, 11 meses
Puntos: 0
Respuesta: Enviar formulario con JavaScript y recogerlo con PHP

Creo que sé donde está el problema.

Cuando uso la función de JavaScript, no sé que nombre sería el submit, es decir, yo en registro tenía puesto al botón submit el nombre registro, y ese nombre lo recogía luego en php como registro también. Debería conocer con que nombre se envía el submit con JavaScript.

Aun así ya lo he conseguido arreglar, simplemente debía quitar el primer IF de "validacion.php" y ya no hacia falta que mirara si existía submit o no.

Muchas gracias ;).

Etiquetas: enviar, php, formulario
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 22:52.