<?php

session_start();
?>
`
<html>
<head>
<link rel="stylesheet" type ="text/css" href="style4.css">
<link rel="icon" href="../../../../favicon.ico" type="image/x-icon" >
<title>Registratie Gebruiker</title>
</head>

<body>

    <div>
        <form action=registration.php method="POST">
            <div class = "loginbox">
                <img src="avatar.png" class="avatar">
                <h1>Registratie</h1>
                <p>Vul het formulier in</p>
                <div>
                    <label for = "voornaam"><b>Voornaam</b></label>
                    <input type="text" name ="voornaam" required>
                </div>

                <div>
                <label for = "achternaam"><b>Achternaam</b></label>
                <input type="text" name ="achternaam" required>
                </div>

                <div>
                <label for = "email"><b>Email-adres</b></label>
                <input type type="email" name ="email" required>
                <div>
                
                <div>
                <label for = "telefoonnummer"><b>Telefoonnummer</b></label>
                <input type="text" name ="telefoonnummer" required>
                </div>

                <div>
                <label for = "adres"><b>Adres</b></label>
                <input type="text" name ="adres" required>
                </div>

                <div>
                <label for = "postcode"><b>Postcode</b></label>
                <input type="text" name ="postcode" required>
                </div>


                <div>
                <label for = "woonplaats"><b>Woonplaats</b></label>
                <input type="text" name ="woonplaats" required>
                </div>

                <div>
                <label for = "username"><b>Gebruikersnaam</b></label>
                <input type="text" name ="username" required>
                </div>

                <div>
                <label for = "password"><b>Wachtwoord</b></label>
                <input type="password" name ="password" required>
                </div>

                <div>
                <label for = "password2"><b>Wachtwoord 2</b></label>
                <input type="password" name ="password2" required>
                </div>

                <div class="form-group">
                <label for="geslacht">Geslacht</label>
                <div>
                  <label for="man" class="radio-inline"
                    ><input
                      type="radio"
                      name="geslacht"
                      value="m"
                      id="man"
                    />Man</label
                  >
                  <label for="vrouw" class="radio-inline"
                    ><input
                      type="radio"
                      name="geslacht"
                      value="f"
                      id="vrouw"
                    />Vrouw</label
                  >
                  <label for="anders" class="radio-inline"
                    ><input
                      type="radio"
                      name="geslacht"
                      value="o"
                      id="anders"
                    />Anders</label
                  >
                </div>

                <input type="submit" name="submit" value = "Registreren">

                <button><a href = "login2.php">Al een account?</a><br>        </button>

</body>
</head>
</html>
`
<?php

$host = "localhost";
$user = "root";
$password ="usbw";
$db = "login";

$data = mysqli_connect($host, $user, $password, $db);

if(!isset($_POST['submit']))
{
    if
        (
            !empty($_POST['voornaam']) && !empty($_POST['achternaam']) && !empty($_POST['email']) && !empty($_POST['telefoonnummer']) && !empty($_POST['adres']) && !empty($_POST['postcode']) && !empty($_POST['wooplaats']) && !empty($_POST['username']) && !empty($_POST['password1']) && !empty($_POST['password2']) && !empty($_POST['geslacht'])
        )
    {
        $voornaam = $_POST ['voornaam'];
        $achternaam = $_POST ['achternaam'];
        $email = $_POST ['email'];
        $telefoonnummer = $_POST ['telefoonnummer'];
        $adres = $_POST ['adres'];
        $postcode = $_POST ['postcode'];
        $woonplaats = $_POST ['woonplaats'];
        $username = $_POST ['username'];
        $password1 = $_POST ['password1'];
        $password2 = $_POST ['password2'];
        $geslacht = $_POST ['geslacht'];

        $query = "INSERT INTO user (voornaam, achternaam, email, postcode, woonplaats, username, password1, password2, geslacht) values('$voornaam', '$achternaam', '$email', '$telefoonnummer', '$adres', '$postcode', '$woonplaats', '$username', '$password1', '$password2', '$geslacht')";

        $run = mysqli_query ($data, $query) or die(mysqli_error());
        
            if($run)
            {
                echo "Form submitted succesfully";
            }
            else
            {
                echo "Form no submitted";
            }
    }
    else
    {
    echo "all fields required";
    }

}
?>


Wat gaat hier mis?

Hij zet nog steeds niks in de database?

Groetjes
Ed
Hallo heren,

Allereerst mijn excuses voor mijn uitlatingen van gisteren.

Resultaat tot nog toe:

INSERT INTO user (voornaam, achternaam, email, telefoon, adres, postcode, woonplaats, username, password1, password2, geslacht, geboortedatum, usertype) VALUES ('Pietje', 'Puk', '[email protected]', '', 'etwet', '2352 bb', 'etwet', 'non', '123', '123', 'o', '', '' )

Form not submitted
Array
(
[voornaam] => Pietje
[achternaam] => Puk
[email] => [email protected]
[telefoonnummer] => 1
[adres] => etwet
[postcode] => 2352 bb
[woonplaats] => etwet
[username] => non
[password1] => 123
[password2] => 123
[geslacht] => o
[submit] => Registreren
)
0

Hij doet wel iets maar slaat ze niet op in de db.


<html>
<head>
<link rel="stylesheet" type ="text/css" href="style4.css">
<link rel="icon" href="../../../../favicon.ico" type="image/x-icon" >
<title>Registratie Gebruiker</title>
</head>

<body>
    <div>
        <form action=registreren4.php method="POST">
            <div class = "loginbox">
                <img src="avatar.png" class="avatar">
                <h1>Registratie</h1>
                <p>Vul het formulier in</p>

                <div>
                    <label for = "voornaam"><b>Voornaam</b></label>
                    <input type="text" name ="voornaam" required>
                </div>

                <div>
                    <label for = "achternaam"><b>Achternaam</b></label>
                    <input type="text" name ="achternaam" required>
                </div>

                <div>
                  <label for = "email"><b>Email-adres</b></label>
                  <input type type="email" name ="email" required>
                <div>

                <div>
                    <label for = "telefoonnummer"><b>Telefoonnummer</b></label>
                    <input type="text" name ="telefoonnummer" required>
                </div>

                <div>
                    <label for = "adres"><b>Adres</b></label>
                    <input type="text" name ="adres" required>
                </div>

                <div>
                    <label for = "postcode"><b>Postcode</b></label>
                    <input type="text" name ="postcode" required>
                </div>


                <div>
                    <label for = "woonplaats"><b>Woonplaats</b></label>
                    <input type="text" name ="woonplaats" required>
                </div>

                <div>
                    <label for = "username"><b>Gebruikersnaam</b></label>
                    <input type="text" name ="username" required>
                </div>

                <div>
                    <label for = "password"><b>Wachtwoord</b></label>
                    <input type="password" name ="password1" required>
                </div>

                <div>
                    <label for = "password2"><b>Wachtwoord 2</b></label>
                    <input type="password" name ="password2" required>
                </div>

                <div class="form-group">
                    <label for="geslacht">Geslacht</label>
                    <div>
                    <label for="man" class="radio-inline"
                        ><input
                        type="radio"
                        name="geslacht"
                        value="m"
                        id="man"
                        />Man</label
                    >
                    <label for="vrouw" class="radio-inline"
                        ><input
                        type="radio"
                        name="geslacht"
                        value="f"
                        id="vrouw"
                        />Vrouw</label
                    >
                    <label for="anders" class="radio-inline"
                        ><input
                        type="radio"
                        name="geslacht"
                        value="o"
                        id="anders"
                        />Anders</label
                    >
                </div>



                <input type="submit" name="submit" value = "Registreren">
            </div>
        </form>
        <button><a href = "login2.php">Al een account?</a></button>
    </div>
</body>

</html>


<?php

        $host = "localhost";
        $user = "root";
        $password ="usbw";
        $db = "login";
        $data = mysqli_connect( $host, $user, $password, $db );

        $voornaam = isset($_POST['voornaam']) && trim($_POST['voornaam'])!='' ? $_POST['voornaam'] : '';
        //$voornaam = $_POST ['voornaam'];
        $achternaam = isset($_POST['achternaam']) && trim($_POST['achternaam'])!='' ? $_POST['achternaam'] : '';
        //$achternaam = $_POST ['achternaam'];
        $email = isset($_POST['email']) && trim($_POST['email'])!='' ? $_POST['email'] : '';
        //$email = $_POST ['email'];
        $telefoon = isset($_POST['telefoon']) && trim($_POST['telefoon'])!='' ? $_POST['telefoon'] : '';
        //$telefoon = $_POST ['telefoon'];
        $adres = isset($_POST['adres']) && trim($_POST['adres'])!='' ? $_POST['adres'] : '';
        //$adres = $_POST ['adres'];
        $postcode = isset($_POST['postcode']) && trim($_POST['postcode'])!='' ? $_POST['postcode'] : '';
        //$postcode = $_POST ['postcode'];
        $woonplaats = isset($_POST['woonplaats']) && trim($_POST['woonplaats'])!='' ? $_POST['woonplaats'] : '';
        //$woonplaats = $_POST ['woonplaats'];
        $gebruikersnaam = isset($_POST['username']) && trim($_POST['username'])!='' ? $_POST['username'] : '';
        //$gebruikersnaam = $_POST ['username'];
        $password1 = isset($_POST['password1']) && trim($_POST['password1'])!='' ? $_POST['password1'] : '';
        //$password1 = $_POST ['password1'];
        $password2 = isset($_POST['password2']) && trim($_POST['password2'])!='' ? $_POST['password2'] : '';
        //$password2 = $_POST ['password2'];
        $geslacht = isset($_POST['geslacht']) && trim($_POST['geslacht'])!='' ? $_POST['geslacht'] : '';
        //$geslacht = $_POST ['geslacht'];
        $geboortedatum = isset($_POST['geboortedatum']) && trim($_POST['geboortedatum'])!='' ? $_POST['geboortedatum'] : '';
        //$geboortedatum = $_POST ['geboortedatum'];
        $usertype = isset($_POST['usertype']) && trim($_POST['usertype'])!='' ? $_POST['usertype'] : '';
        //$usertype = $_POST ['usertype'];




        $query = "INSERT INTO user (voornaam, achternaam, email, telefoon, adres, postcode, woonplaats, username, password1, password2, geslacht, geboortedatum, usertype)  VALUES ('" . $voornaam . "', '". $achternaam . "', '". $email . "', '". $telefoon . "', '". $adres . "', '". $postcode . "', '". $woonplaats . "', '". $gebruikersnaam . "', '". $password1 . "', '". $password2 . "', '". $geslacht . "', '". $geboortedatum . "', '". $usertype . "' )";

        echo '<p>' . $query . '</p>';

        $run = mysqli_query ($data, $query); // or mysqli_error($data);

        if( $run )
        {
            echo "Form submitted succesfully";
        }
        else
        {
            echo "Form not submitted";
        }
    
        echo "<pre>".print_r($_POST,true)."</pre>";
?>



Wat gaat er toch mis. Ik het idee het laatste stukje maar waar??


Omdat je niet aan MySQL vraagt WAT er mis is, door mysqli_error($data) te gebruiken op lijn 158.

Ben ik nu blind??

Unknown column 'telefoon' in 'field list'

Ik zie het echt niet!!

Waar gaat het mis?



[size=xsmall]Toevoeging op 29/11/2021 17:57:27:[/size]

Toegevoegd/aangepast:


        else
        {
            echo "Form not submitted";
            $fout = mysqli_error($data);
            echo '<p>' . $fout . '</p>';
        }
    
Unknown column 'telefoon' in 'field list'

Vertaald:

Onbekende kolom 'telefoon' in 'veldlijst'

Spreekt voor zich. Je mist dat veld in je database.
Sluit de PHP code in met

 if( isset($_POST['submit']))
{
…..
}


En verander telefoon in telefoonnummer, iets wat ik al eerder onder de aandacht heb gebracht.
En dan werkt het. In ieder geval bij mij.
Op sich is if( isset($_POST['submit'])) niet de juiste manier in mijn ogen.
Je wilt immers weten of het via POST verstuurd is, en niet of er op een knop gedrukt is.

Beiden zou wel kunnen als je twee verschillende submit knoppen hebt in een formulier.
<?php
$voornaam = isset($_POST['voornaam']) && trim($_POST['voornaam'])!='' ? $_POST['voornaam'] : '';
?>

of de korte versie:
<?php
$voornaam = filter_input(INPUT_POST, 'voornaam');
?>

https://www.php.net/filter-input

Waarbij je dan eventueel nog een 3e parameter kunt gebruiken die dan controleert of de gegeven invoer wel een getal / datum / emailadres is

<?php
$email = filter_input(INPUT_POST, 'email', FILTER_VALIDATE_EMAIL);
?>

https://www.php.net/manual/en/filter.filters.validate.php

Reageren