variabele uit formulier naar database
Als ik de variabele vervang door een vaste achternaam lukt het wel. De fout zit dus in de syntax waar ik een variabele uitlees.
formulierachternaam:
<html>
<head>
<title>Achternaam formulier</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
</style>
<link href="../css/formulier.css" rel="stylesheet" type="text/css">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<h3>Achternaam formulier</h3>
<form action="evaluatieachternaam.php" method="post" enctype="multipart/form-data">
<table width="686" border="0" cellspacing="2" cellpadding="2">
<tr>
<td width="122"><h4>Achternaam: </h4></td>
<td colspan="2"> <h5>
<input type="text" name="achternaam" size="50" maxlength="50" value=" ">
</h5></td>
</tr>
<tr>
<td> </td>
<td colspan="2">
</tr>
<tr>
<td> </td>
<td colspan="2"> <input type="reset" name="Reset" value="Reset">
<input type="submit" name="Verzenden" value="Verzenden"> </td>
</tr>
</table>
</form>
</body>
</html>
evaluatieachternaam:
<html>
<head>
<title>Clubleden formulier evaluatie</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
</style>
<link href="../css/formulier.css" rel="stylesheet" type="text/css">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<h3>Evaluatie van het demonstratieformulier</h3>
<h4>De volgende gegevens werden ingesteld in het demonstratieformulier:</h4>
<table width="686" border="0" cellspacing="2" cellpadding="2">
<tr>
<td width="194"><h5>Achternaam:</h5></td>
<td width="492">
</td>
</tr>
</table>
</body>
</html>
Code (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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
<?php
// Define database connection details
include 'dbwachtwoorden.php';
//$table = "formulier";
// Connect to dbase
include 'dbconnection.php';
$voornaam = $_POST['voornaam'];
$tussenvoegsel = $_POST['tussenvoegsel'];
$achternaam = $_POST['achternaam'];
$geslacht = $_POST['geslacht'];
$straatnaam = $_POST['straatnaam'];
$huisnummer = $_POST['huisnummer'];
$postcode = $_POST['postcode'];
$plaatsnaam = $_POST['plaatsnaam'];
$geboortedatum = $_POST['geboortedatum'];
$huistelefoon = $_POST['huistelefoon'];
$mobiel = $_POST['mobiel'];
$emailadres = $_POST['emailadres'];
$lidnummer = $_POST['lidnummer'];
$team = $_POST['team'];
$opmerkingen = $_POST['opmerkingen'];
// SELECT FROM tablenaam
$sql = "SELECT * FROM ledenformulier WHERE achternaam = '$achternaam' ORDER BY achternaam, voornaam";
$resultaat = mysql_query($sql); // voer SQL code uit
mysql_select_db(databasenaam);
$result = mysql_query($sql);
if (!$result){
echo 'Fout: sql statement heeft niet gewerkt.<BR>';
echo 'MySQL retourneerde: '.mysql_error();
exit;
}
echo 'OK';
echo "<table width=1400 border=1 cellspacing=2 cellpadding=2>";
//echo "<tr><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td>";
echo "<tr><td><b>ID</b></td><td><b>Lidnr</b></td><td><b>Naam</b></td><td><b> </b></td><td><b>Adres</b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b>Telefoon</b></td><td><b>Mobiel</b></td><td><b>Geboren</b></td><td><b>Geslacht</b></td><td><b>Emailadres</b></td><td><b>Team</b></td>";
echo "<tr><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td>";
if ($resultaat) {
while ($rij = mysql_fetch_array($resultaat)) {
echo "<tr>";
echo "<td>".$rij["nr_ID"].":"." "."</td>";
echo "<td>".$rij["lidnummer"]."</td>";
echo "<td>".$rij["achternaam"]."</td>";
echo "<td>".$rij["voornaam"]." ".$rij["tussenvoegsel"]."</td>";
echo "<td>".$rij["straatnaam"]."</td>";
echo "<td>".$rij["huisnummer"]."</td>";
echo "<td>".$rij["postcode"]."</td>";
echo "<td>".$rij["plaatsnaam"]."</td>";
echo "<td>".$rij["huistelefoon"]."</td>";
echo "<td>".$rij["mobiel"]."</td>";
echo "<td>".$rij["geboortedatum"]."</td>";
echo "<td>".$rij["geslacht"]."</td>";
echo "<td>".$rij["emailadres"]."</td>";
echo "<td>".$rij["team"]."</td>";
echo "</tr>";
}
}
echo "</table>";
?>
// Define database connection details
include 'dbwachtwoorden.php';
//$table = "formulier";
// Connect to dbase
include 'dbconnection.php';
$voornaam = $_POST['voornaam'];
$tussenvoegsel = $_POST['tussenvoegsel'];
$achternaam = $_POST['achternaam'];
$geslacht = $_POST['geslacht'];
$straatnaam = $_POST['straatnaam'];
$huisnummer = $_POST['huisnummer'];
$postcode = $_POST['postcode'];
$plaatsnaam = $_POST['plaatsnaam'];
$geboortedatum = $_POST['geboortedatum'];
$huistelefoon = $_POST['huistelefoon'];
$mobiel = $_POST['mobiel'];
$emailadres = $_POST['emailadres'];
$lidnummer = $_POST['lidnummer'];
$team = $_POST['team'];
$opmerkingen = $_POST['opmerkingen'];
// SELECT FROM tablenaam
$sql = "SELECT * FROM ledenformulier WHERE achternaam = '$achternaam' ORDER BY achternaam, voornaam";
$resultaat = mysql_query($sql); // voer SQL code uit
mysql_select_db(databasenaam);
$result = mysql_query($sql);
if (!$result){
echo 'Fout: sql statement heeft niet gewerkt.<BR>';
echo 'MySQL retourneerde: '.mysql_error();
exit;
}
echo 'OK';
echo "<table width=1400 border=1 cellspacing=2 cellpadding=2>";
//echo "<tr><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td>";
echo "<tr><td><b>ID</b></td><td><b>Lidnr</b></td><td><b>Naam</b></td><td><b> </b></td><td><b>Adres</b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b>Telefoon</b></td><td><b>Mobiel</b></td><td><b>Geboren</b></td><td><b>Geslacht</b></td><td><b>Emailadres</b></td><td><b>Team</b></td>";
echo "<tr><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td>";
if ($resultaat) {
while ($rij = mysql_fetch_array($resultaat)) {
echo "<tr>";
echo "<td>".$rij["nr_ID"].":"." "."</td>";
echo "<td>".$rij["lidnummer"]."</td>";
echo "<td>".$rij["achternaam"]."</td>";
echo "<td>".$rij["voornaam"]." ".$rij["tussenvoegsel"]."</td>";
echo "<td>".$rij["straatnaam"]."</td>";
echo "<td>".$rij["huisnummer"]."</td>";
echo "<td>".$rij["postcode"]."</td>";
echo "<td>".$rij["plaatsnaam"]."</td>";
echo "<td>".$rij["huistelefoon"]."</td>";
echo "<td>".$rij["mobiel"]."</td>";
echo "<td>".$rij["geboortedatum"]."</td>";
echo "<td>".$rij["geslacht"]."</td>";
echo "<td>".$rij["emailadres"]."</td>";
echo "<td>".$rij["team"]."</td>";
echo "</tr>";
}
}
echo "</table>";
?>
$sql = "SELECT * FROM ledenformulier WHERE achternaam = '$achternaam' ORDER BY achternaam, voornaam";
eens door
$sql = "SELECT * FROM ledenformulier WHERE achternaam LIKE '%{$achternaam}%' ORDER BY achternaam, voornaam";
en gebruik bij array's ($rij, etc) altijd enkele quotes ( ' )
dus niet $array["key"], maar $array['key']
Ik heb de syntax letterlijk overgenomen en de quotes aangepast maar nog steeds zonder resultaat. Ik krijg nog steeds GEEN foutmeldingen maar de table blijft leeg.
Misschien moet je even proberen dat enctype uit je formulier te halen. Het kan zijn dat het daarom fout gaat.
$sql = "SELECT * FROM ledenformulier WHERE achternaam='" . $achternaam . "' ORDER BY achternaam, voornaam";
EDIT:
Voor zover ik weet van SQL is het zo dat die in het geval van jullie (achternaam = '$achternaam') letterlijk zoekt op wat er tussen de '' staat. Dus where achternaam = $achternaam, ik neem aan dat er geen gebruiker is die '$achternaam' als achternaam heeft ;)
Gewijzigd op 11/11/2005 19:31:00 door Robert Deiman
@ Robert: SQL accepteert dat wel hoor.
Als ik deze naam nu in het formulier invul, staan de gegevens van meneer Achternaam ineens wel in de table. Dit moet ons een stap dichterbij de oplossing brengen.
Misschien heeft Jan Koehoorn de oplossing maar ik snap zijn tip niet.
maak daar van:
<form action="evaluatieachternaam.php" method="post">
is maar een gok hoor
Code (php)
1
2
3
4
5
6
2
3
4
5
6
<?php
$sql = "SELECT * FROM ledenformulier WHERE achternaam = '$achternaam' ORDER BY achternaam, voornaam";
$resultaat = mysql_query($sql); // voer SQL code uit
mysql_select_db(databasenaam);
$result = mysql_query($sql);
?>
$sql = "SELECT * FROM ledenformulier WHERE achternaam = '$achternaam' ORDER BY achternaam, voornaam";
$resultaat = mysql_query($sql); // voer SQL code uit
mysql_select_db(databasenaam);
$result = mysql_query($sql);
?>
Dit stukje vind ik ook een beetje gek: eerst voer je een query uit en dan selecteer je een database en dan voer je de query nog een keer uit.
Nee Jan dit maakt geen verschil.
marc:
dat enctype niet bedoel je?Nee Jan dit maakt geen verschil.
Jou bericht daarna las ik later maar maakt ook geen verschil. Dit is een verdwaalt stukje tekst wat ik nu ook verwijderd heb.
Volgens mij zit het in de regels direkt onder:
// Connect to dbase
include 'dbconnection.php';
Zet eens error_reporting(E_ALL) aan en gebruik na een query eens or die(mysql_error()). Zo blijft het gokken.
Ik heb je code wat herschreven. Probeer eens?
<html>
<head>
<title>Achternaam formulier</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
</style>
<link href="../css/formulier.css" rel="stylesheet" type="text/css">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<h3>Achternaam formulier</h3>
<form action="evaluatieachternaam.php" method="post">
<table width="686" border="0" cellspacing="2" cellpadding="2">
<tr>
<td width="122"><h4>Achternaam: </h4></td>
<td colspan="2"> <h5>
<input type="text" name="achternaam" size="50" maxlength="50" value=" ">
</h5></td>
</tr>
<tr>
<td> </td>
<td colspan="2">
</tr>
<tr>
<td> </td>
<td colspan="2"> <input type="reset" name="Reset" value="Reset">
<input type="submit" name="Verzenden" value="Verzenden"> </td>
</tr>
</table>
</form>
</body>
</html>
evaluatieachternaam:
<html>
<head>
<title>Clubleden formulier evaluatie</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
</style>
<link href="../css/formulier.css" rel="stylesheet" type="text/css">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<h3>Evaluatie van het demonstratieformulier</h3>
<h4>De volgende gegevens werden ingesteld in het demonstratieformulier:</h4>
<table width="686" border="0" cellspacing="2" cellpadding="2">
<tr>
<td width="194"><h5>Achternaam:</h5></td>
<td width="492">
</td>
</tr>
</table>
</body>
</html>
Code (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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
<?php
// Define database connection details
include 'dbwachtwoorden.php';
//$table = "formulier";
// Connect to dbase
include 'dbconnection.php';
$voornaam = $_POST['voornaam'];
$tussenvoegsel = $_POST['tussenvoegsel'];
$achternaam = $_POST['achternaam'];
$geslacht = $_POST['geslacht'];
$straatnaam = $_POST['straatnaam'];
$huisnummer = $_POST['huisnummer'];
$postcode = $_POST['postcode'];
$plaatsnaam = $_POST['plaatsnaam'];
$geboortedatum = $_POST['geboortedatum'];
$huistelefoon = $_POST['huistelefoon'];
$mobiel = $_POST['mobiel'];
$emailadres = $_POST['emailadres'];
$lidnummer = $_POST['lidnummer'];
$team = $_POST['team'];
$opmerkingen = $_POST['opmerkingen'];
// SELECT FROM tablenaam
$sql = "SELECT * FROM ledenformulier WHERE achternaam = '$achternaam' ORDER BY achternaam, voornaam";
$resultaat = mysql_query($sql) or die (mysql_error ()); // voer SQL code uit
echo "<table width=1400 border=1 cellspacing=2 cellpadding=2>";
//echo "<tr><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td>";
echo "<tr><td><b>ID</b></td><td><b>Lidnr</b></td><td><b>Naam</b></td><td><b> </b></td><td><b>Adres</b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b>Telefoon</b></td><td><b>Mobiel</b></td><td><b>Geboren</b></td><td><b>Geslacht</b></td><td><b>Emailadres</b></td><td><b>Team</b></td>";
echo "<tr><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td>";
while ($rij = mysql_fetch_object ($resultaat)) {
echo '<tr>';
echo '<td>' . $rij['nr_ID'] . ': </td>';
echo '<td>' . $rij['lidnummer'] . '</td>';
echo '<td>' . $rij['achternaam'] . '</td>';
echo '<td>' . $rij['voornaam'] . ' ' . $rij['tussenvoegsel'] . '</td>';
echo '<td>' . $rij['straatnaam'] . '</td>';
echo '<td>' . $rij['huisnummer'] . '</td>';
echo '<td>' . $rij['postcode'] . '</td>';
echo '<td>' . $rij['plaatsnaam'] . '</td>';
echo '<td>' . $rij['huistelefoon'] . '</td>';
echo '<td>' . $rij['mobiel'] . '</td>';
echo '<td>' . $rij['geboortedatum'] . '</td>';
echo '<td>' . $rij['geslacht'] . '</td>';
echo '<td>' . $rij['emailadres'] . '</td>';
echo '<td>' . $rij['team'] . '</td>';
echo '</tr>';
}
echo '</table>';
?>
// Define database connection details
include 'dbwachtwoorden.php';
//$table = "formulier";
// Connect to dbase
include 'dbconnection.php';
$voornaam = $_POST['voornaam'];
$tussenvoegsel = $_POST['tussenvoegsel'];
$achternaam = $_POST['achternaam'];
$geslacht = $_POST['geslacht'];
$straatnaam = $_POST['straatnaam'];
$huisnummer = $_POST['huisnummer'];
$postcode = $_POST['postcode'];
$plaatsnaam = $_POST['plaatsnaam'];
$geboortedatum = $_POST['geboortedatum'];
$huistelefoon = $_POST['huistelefoon'];
$mobiel = $_POST['mobiel'];
$emailadres = $_POST['emailadres'];
$lidnummer = $_POST['lidnummer'];
$team = $_POST['team'];
$opmerkingen = $_POST['opmerkingen'];
// SELECT FROM tablenaam
$sql = "SELECT * FROM ledenformulier WHERE achternaam = '$achternaam' ORDER BY achternaam, voornaam";
$resultaat = mysql_query($sql) or die (mysql_error ()); // voer SQL code uit
echo "<table width=1400 border=1 cellspacing=2 cellpadding=2>";
//echo "<tr><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td>";
echo "<tr><td><b>ID</b></td><td><b>Lidnr</b></td><td><b>Naam</b></td><td><b> </b></td><td><b>Adres</b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b>Telefoon</b></td><td><b>Mobiel</b></td><td><b>Geboren</b></td><td><b>Geslacht</b></td><td><b>Emailadres</b></td><td><b>Team</b></td>";
echo "<tr><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td><td><b> </b></td>";
while ($rij = mysql_fetch_object ($resultaat)) {
echo '<tr>';
echo '<td>' . $rij['nr_ID'] . ': </td>';
echo '<td>' . $rij['lidnummer'] . '</td>';
echo '<td>' . $rij['achternaam'] . '</td>';
echo '<td>' . $rij['voornaam'] . ' ' . $rij['tussenvoegsel'] . '</td>';
echo '<td>' . $rij['straatnaam'] . '</td>';
echo '<td>' . $rij['huisnummer'] . '</td>';
echo '<td>' . $rij['postcode'] . '</td>';
echo '<td>' . $rij['plaatsnaam'] . '</td>';
echo '<td>' . $rij['huistelefoon'] . '</td>';
echo '<td>' . $rij['mobiel'] . '</td>';
echo '<td>' . $rij['geboortedatum'] . '</td>';
echo '<td>' . $rij['geslacht'] . '</td>';
echo '<td>' . $rij['emailadres'] . '</td>';
echo '<td>' . $rij['team'] . '</td>';
echo '</tr>';
}
echo '</table>';
?>
Gewijzigd op 11/11/2005 20:15:00 door Jan Koehoorn
Ik heb nu:
in mijn evaluatieachternaam bestand geplaatst.
Ik krijg hier wel de ingevulde achternaam dus hij leest de variabele wel goed.
Maar de tabel blijft leeg.
http://www.schoten.nl/registratie/formulierachternaam.php
Hier krijg je een beeld van hoe het ervoor staat.
Tik maar eens "achternaam" in. (zonder de quotes natuurlijk)
edit en bij allebei 'achternaam' invullen werkt niet
Gewijzigd op 11/11/2005 20:45:00 door Jan Koehoorn
Ja sorry, ik heb dit even verwijderd.
Na je </html> tag zie ik nog code staan. Dat mag niet.
Ik ga ff verder snuffelen.
Hoeveel records zitten er eigenlijk in je tabel?
Ook dit geeft de zelfde resultaten.
Als je je emailadres naar [email protected] stuurt, mail ik je de 2 php-bestanden. Als je dit wilt natuurlijk.