PHP - Los datos no se guardan en la base de datos

 
Vista:
sin imagen de perfil
Val: 8
Ha aumentado su posición en 21 puestos en PHP (en relación al último mes)
Gráfica de PHP

Los datos no se guardan en la base de datos

Publicado por Nicolas (3 intervenciones) el 24/09/2020 19:40:28
Hola, estaba trabajando en un sistema de registro, se supone que ya tengo el código suficiente para que los datos se guarden en una base de datos, pero cuando intento hacer una prueba, los datos no se guardan.

El código de register.php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<!DOCTYPE html>
<html lang="es">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Registrarse</title>
</head>
<body>
    <form action="register.php" method="post">
        <input type="text" name="user" placeholder="Usuario" required><br><br>
        <input type="email" name="email" placeholder="Coreo electrónico" required><br><br>
        <input type="password" name="pass" placeholder="Contraseña" id="pass1" required><br><br>
        <b>Imagen de perfil: &nbsp;</b><input type="file" name="user_image"><br><br>
        <b>Imagen de fondo (todos verán esta imagen cuando entren a tu perfil): &nbsp; </b><input type="file" name="back_image"><br><br>
        <b>Color:</b><input type="color" name="color" placeholder="Color de tu usuario" required><br><br>
        <input type="submit" value="Registrate">
    </form>
    <?php
        include "conexion.php";
        $user = $_POST["user"];
        $email = $_POST["email"];
        $pass = $_POST["pass"];
        $user_image = $_POST["user_image"];
        $back_image = $_POST["back_image"];
        $color = $_POST["color"];
        if (!$user AND !$email AND !$pass AND !$user_image AND !$back_image AND !$color) {
            echo "<br><br>Ingresa tus datos";
        } else {
                $sql = "INSERT INTO user(id, name, mail, pwd, color, porfile, background) VALUES ('',$user,$email,$pass,$user_image,$back_image,$color)";
                mysqli_query($conexion, $sql);
            }
    ?>
</body>
</html>

codigo de conexion.php:
1
2
3
4
5
6
7
<?php
    $conexion = mysqli_connect("localhost", "root", "", "backtime");
    if (!$conexion)
    {
        echo "<h1>Lo sentimos, ha ocurrido un error</h1>";
    }
?>

Espero puedan ayudarme, les agradezco
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de joel
Val: 3.828
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Los datos no se guardan en la base de datos

Publicado por joel (1269 intervenciones) el 25/09/2020 07:33:11
Si el campo id es un campo autoincremental, no hace falta que lo pongas, y si lo pones, en vez de poner unas comillas vacias por null sin comillas

Para saberlo exactamente, indica que te muestre el error:
1
printf("Error: %s\n", mysqli_error($link));
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Los datos no se guardan en la base de datos

Publicado por italo_pm (193 intervenciones) el 25/09/2020 14:12:12
Hola

no realizas ningún tipo de control luego de ejecutar la query de insert, los errores si no los imprimes nunca los verás. sigue en consejo de @Joel para ver el error...


por otra parte, cuando realizar el upload de un file (type="file") lo debes de recoger con el metodo $_FILES y no con $_POST, dependerá luego como tienes definido el campo en tu tabla del db, si es de tipo para guarda el file o simplemente el nombre y luego la ruta se la pasas tu.

para mas info: https://www.w3schools.com/php/php_file_upload.asp

salud2.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar