Autor Tema: php enviar datos en un formulario y recuperarlos con post y base de datos mysql  (Leído 4500 veces)

pepinilloproga

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 1
    • Ver Perfil
Buen día a tod@s, espero me puedan ayudar con un problema que tengo al momento de enviar datos desde un formulario html y php, el problema que tengo es que no envía los datos obtenidos del documento html al php y del php al mysql, pero si conecta con la base de datos espero me puedan ayudar y de antemano gracias... (adjunto los documentos)

Este es el de la conexion:

<?php
$conexion = mysqli_connect("localhost","root","1234","db_escuela");
if(!$conexion){
    echo 'Error al conectar a la base de datos';
}
else{
    echo 'Conectado a la base de datos';
}



aqui esta el formulario:

Código: [Seleccionar]
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>Formulario de registro</title>
        <link rel="stylesheet" href="css/estilos.css">
        <script src="validar.js"></script>
    </head>
    <body>
        <h1>Formulario de Registro</h1>
        <form action="registrar.php" method="POST" class="form-register" NAME="form" onsubmit="return validar();">
            <h2 class="form__titulo">CREAR CUENTA</h2>
            <div class="contenedor-inputs">
                <input type="text" id="nombre" name="nombre" placeholder="Nombre" class="input-48">
                <input type="text" id="apaterno" name="apaterno" placeholder="Apellido Paterno" class="input-48">
                <input type="text" id="amaterno" name="amaterno" placeholder="Apellido Materno" class="input-48">
                <input type="text" id="matricula" name="matricula" placeholder="Matricula" class="input-100">
                <input type="text" id="telefono1" name="telefono1" placeholder="Telefono de casa" class="input-100">
                <input type="text" id="telefono2" name="telefono2" placeholder="Telefono movil" class="input-100">
                <input type="text" id="carrera" name="carrera" placeholder="Carrera" class="input-100">
                <input type="email" id="correo" name="correo" placeholder="Correo" class="input-100">
                <input type="text" id="usuario" name="usuario" placeholder="Usuario" class="input-100">
                <input type="password" id="clave" name="clave" placeholder="Contraseña" class="input-48">
                <input type="submit" value="Registrar" class="btn-enviar">
                <p class="form__link">¿Ya tienes una cuenta? <a href="login.html">Ingresa aqu&iacute;</a></p>
            </div>
        </form>
    </body>
</html>


aqui el php de envio y obtencion de datos a mysql:

Código: [Seleccionar]
<?php
include 'cn.php';
//resivir los datos y almacenarlos en variables

$nombre $_POST['nombre'];
$apaterno $_POST['apaterno'];
$amaterno $_POST['amaterno'];
$matricula $_POST['matricula'];
$telefono1 $_POST['telefono1'];
$telefono2 $_POST['telefono2'];
$carrera $_POST['carrera'];
$correo $_POST['correo'];
$usuario $_POST['usuario'];
$clave $_POST['clave'];
//consulta para insertar
$insertar "INSERT INTO alumnos VALUES('$nombre','$apaterno','$amaterno','$matricula','$telefono1','$telefono2','$carrera','$correo','$usuario','$clave')";
$verificar_usuario mysqli_query($conexion"SELECT * FROM alumnos WHERE usuario = '$usuario'");
if (
mysqli_num_rows($verificar_usuario) > 0) {
    echo 
'<script>
    alert("El usuario ya esta registrado");
    window.history.go(-1);
    </script>'
;
exit;
}

$verificar_correo mysqli_query($conexion"SELECT * FROM alumnos WHERE usuario = '$correo'");
if (
mysqli_num_rows($verificar_correo) > 0) {
    echo 
'<script>
    alert("Este correo ya esta registrado");
    window.history.go(-1);
    </script>'
;
exit;
}

$verificar_matricula mysqli_query($conexion"SELECT * FROM alumnos WHERE usuario = '$matricula'");
if (
mysqli_num_rows($verificar_matricula) > 0) {
    echo 
'<script>
    alert("Esta matricula ya esta registrada");
    window.history.go(-1);
    </script>'
;
exit;
}

//Ejecutar consulta
$resultado=mysqli_query($conexion,$insertar);
if(!
$resultado){
    echo
'Error al enviar los datos';
    
}else{
    echo
'Datos enviados correctamente';
}
//cerrar conexion
mysqli_close($conexion);


este es el de login:

Código: [Seleccionar]
<!DOCTYPE html>
<html lang="es">
    <head>
        <title>Formulario de Login</title>
        <meta charset="utf-8">
        <meta name="viewport" content="width-device-widht, user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1">
        <link rel="stylesheet" href="css/formu.css">
    </head>
    <body>
        <form action="validar.php" method="post">
            <h2>Formulario de Login</h2>
            <input type="text" placeholder=" &#128272; Usuario" name="usuario">
            <input type="password" placeholder="&#128272; Contraseña" name="clave">
            <input type="submit" value="Ingresar">
        </form>
    </body>
</html>

funcion para validar login:

Código: [Seleccionar]
<!DOCTYPE html>
<html lang="es">
    <head>
        <title>Formulario de Login</title>
        <meta charset="utf-8">
        <meta name="viewport" content="width-device-widht, user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1">
        <link rel="stylesheet" href="css/formu.css">
    </head>
    <body>
        <form action="validar.php" method="post">
            <h2>Formulario de Login</h2>
            <input type="text" placeholder=" &#128272; Usuario" name="usuario">
            <input type="password" placeholder="&#128272; Contraseña" name="clave">
            <input type="submit" value="Ingresar">
        </form>
    </body>
</html>

validacion en php para login y formulario:

Código: [Seleccionar]
<?php
$usuario
=$_POST['usuario'];
$clave=$_POST['clave'];

//conectar a la base de datos
$conexion=mysqli_connect("localhost""root","","bd_escuela");
$consulta="SELECT * FROM alumnos WHERE usuario='$usuario'and clave='$clave'";
$resultado=mysqli_query($conexion,$consulta);

$filas=mysqli_num_rows($resultado);
if (
$filas>0) {
    
header("location:bienvenido.html");
}
else {
    echo 
"ERROR EN LA AUTENTIFICACION";
}
mysqli_free_result($resultado);
mysqli_close($conexion);

espero me puedan ayudar y gracias...


« Última modificación: 24 de Agosto 2016, 20:06 por Ogramar »

Ogramar

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2660
    • Ver Perfil
Re:ayuda por favor con php
« Respuesta #1 en: 18 de Agosto 2016, 22:55 »
Buenas pepinilloproga

Para escribir en los foros y pegar código debes leer https://www.aprenderaprogramar.com/foros/index.php?topic=1460.0 ahí se explica cómo pegar código en los foros y otras cosas.


En el archivo php que recibe los datos deberías hacer una comprobación básica

Tienes por ejemplo $nombre = $_POST['nombre'];

Introduce una línea

echo 'El nombre recibido es '.$nombre;

Así comprobarás si estás recibiendo o no los datos. Si no los recibes tendrás que revisar por qué no se reciben. Si se reciben, ver en qué proceso te está fallando.

Revisa también las explicaciones en el curso de HTML y de PHP disponibles en https://www.aprenderaprogramar.com/index.php?option=com_content&view=article&id=57&Itemid=86

Salu2

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".