Ik heb een probleem dat ie niks toevoegt aan de database. Ik heb een invoerform gemaakt met de volgende code:
<form method="post" action="oefening 12.2.php">
Voornaam: <input type="Text" name="voornaam" size="30"><br>
Achternaam: <input type="Text" name="achternaam" size="30"><br>
Kamer: <input type="Text" name="kamer" size="5"><br>
Toestelnummer: <input type="Text" name="toestel" size="5"><br>
<hr>
<input type="submit" value="Invoegen"><input type="Reset" value="Leegmaken"><br>
</form>
En oefening 12.2 met de volgende code:
<?php
// variabelen initialiseren
$conn=mysql_connect('localhost', 'root', '') or die("<hr/>Het spijt me, connectie mislukt: <br/>" .
mysql_error() ) ;
//open de database:
mysql_select_db('database') or die("<hr/>Het spijt me, database niet gevonden: <br/>" .
mysql_error());
if (empty($_POST)){
// eerst controleren of pagina wel is aangeroepen vanuit formulier
echo("Vul eerst <a href=\"frm_werknemer.php\">gegevens
voor de werknemer</a> in");
exit();
}else{
// OK, Query opbouwen met variabelen in $_POST
// in het 'echt' eerst valideren of het formulier wel
// geldige waarden bevat.
$query="INSERT INTO werknemers (Voornaam, Achternaam, Kamer, Toestel) ";
$query .= "VALUES ('"; // let op positie van de enkele aanhalingstekens
$query .= $_POST["Voornaam"] ."', '" ;
$query .= $_POST["Achternaam"] ."', '" ;
$query .= $_POST["Kamer"] ."', '" ;
$query .= $_POST["Toestel"] ."');" ;
$result = mysql_query("SELECT *, FROM werknemers");
}
?>
<html>
<head>
<title>Een werknemer invoegen (2)</title>
</head>
<body>
<?php
echo("Query die wordt uitgevoerd: <b>$query</b><hr>\n");
echo("De volgende gegevens zijn ingevoegd:<br>\n");
echo("Voornaam: <b>". $_POST["voornaam"] . "</b><br>");
echo("Achternaam: <b>". $_POST["achternaam"] . "</b><br>");
echo("Kamernummer: <b>". $_POST["kamer"] . "</b><br>");
echo("Toestelnummer: <b>". $_POST["toestel"] . "</b><br>");
echo("<hr><a href=\"frm_werknemer.php\">Nog een werknemer invoegen</a> |
<a href=\"werknemers_overzicht.php\">Overzicht van alle werknemers</a>");
?>
Ik doe het via localhost. De database naam is database en de tabelnaam werknemers.
In die tabel staan de volgende dingen:
Voornaam
Achternaam
Kamer
Toestel
Enig idee iemand hoe het komt dat als ik iets invul in het invoerform het niet toegevoegd wordt aan de database??
BVD
Jonahund
<form method="post" action="oefening 12.2.php">
Voornaam: <input type="Text" name="voornaam" size="30"><br>
Achternaam: <input type="Text" name="achternaam" size="30"><br>
Kamer: <input type="Text" name="kamer" size="5"><br>
Toestelnummer: <input type="Text" name="toestel" size="5"><br>
<hr>
<input type="submit" value="Invoegen"><input type="Reset" value="Leegmaken"><br>
</form>
En oefening 12.2 met de volgende code:
<?php
// variabelen initialiseren
$conn=mysql_connect('localhost', 'root', '') or die("<hr/>Het spijt me, connectie mislukt: <br/>" .
mysql_error() ) ;
//open de database:
mysql_select_db('database') or die("<hr/>Het spijt me, database niet gevonden: <br/>" .
mysql_error());
if (empty($_POST)){
// eerst controleren of pagina wel is aangeroepen vanuit formulier
echo("Vul eerst <a href=\"frm_werknemer.php\">gegevens
voor de werknemer</a> in");
exit();
}else{
// OK, Query opbouwen met variabelen in $_POST
// in het 'echt' eerst valideren of het formulier wel
// geldige waarden bevat.
$query="INSERT INTO werknemers (Voornaam, Achternaam, Kamer, Toestel) ";
$query .= "VALUES ('"; // let op positie van de enkele aanhalingstekens
$query .= $_POST["Voornaam"] ."', '" ;
$query .= $_POST["Achternaam"] ."', '" ;
$query .= $_POST["Kamer"] ."', '" ;
$query .= $_POST["Toestel"] ."');" ;
$result = mysql_query("SELECT *, FROM werknemers");
}
?>
<html>
<head>
<title>Een werknemer invoegen (2)</title>
</head>
<body>
<?php
echo("Query die wordt uitgevoerd: <b>$query</b><hr>\n");
echo("De volgende gegevens zijn ingevoegd:<br>\n");
echo("Voornaam: <b>". $_POST["voornaam"] . "</b><br>");
echo("Achternaam: <b>". $_POST["achternaam"] . "</b><br>");
echo("Kamernummer: <b>". $_POST["kamer"] . "</b><br>");
echo("Toestelnummer: <b>". $_POST["toestel"] . "</b><br>");
echo("<hr><a href=\"frm_werknemer.php\">Nog een werknemer invoegen</a> |
<a href=\"werknemers_overzicht.php\">Overzicht van alle werknemers</a>");
?>
Ik doe het via localhost. De database naam is database en de tabelnaam werknemers.
In die tabel staan de volgende dingen:
Voornaam
Achternaam
Kamer
Toestel
Enig idee iemand hoe het komt dat als ik iets invul in het invoerform het niet toegevoegd wordt aan de database??
BVD
Jonahund