Aanmeldingen uit DB halen
Ik heb even een vraagje..
Met de volgende code zorg ik ervoor dat mensen zich kunnen aanmelden voor de reünie van onze school. De info komt dan in een database te staan. Dit werkt ook, dankzij mensen op dit forum.
Deze code:
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
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
<?php
ini_set('display_errors', 1); // 0 = uit, 1 = aan
error_reporting(E_ALL);
$sServer = 'localhost';
$sUser = 'Tom';
$sPass = '********';
$database = 'carolus';
$rConnectie = mysql_connect( $sServer, $sUser, $sPass ); // r van resource
$rConnectie = mysql_select_db( $database );
if(!$rConnectie)
{
echo 'An error has occurred: ' . mysql_error();
}
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
$voornaam = mysql_real_escape_string($_POST['voornaam']);
$tussenvoegsel = mysql_real_escape_string($_POST['tussenvoegsel']);
$achternaam = mysql_real_escape_string($_POST['achternaam']);
$adres = mysql_real_escape_string($_POST['adres']);
$nummer = mysql_real_escape_string($_POST['nummer']);
$postcode = mysql_real_escape_string($_POST['postcode']);
$woonplaats = mysql_real_escape_string($_POST['woonplaats']);
$telnr = mysql_real_escape_string($_POST['telnr']);
$mobiel = mysql_real_escape_string($_POST['mobiel']);
$email = mysql_real_escape_string($_POST['email']);
$jaarafstu = mysql_real_escape_string($_POST['jaarafstu']);
if(empty($voornaam) || empty($achternaam) || empty($adres) || empty($nummer) || empty($postcode) || empty($woonplaats) || empty($telnr) || empty($jaarafstu))
{
echo 'U heeft een benodigd veld niet ingevuld! De velden met een * zijn verplicht.';
}
else
{
$query = "INSERT INTO aanmeldingen
(
voornaam,
tussenvoegsel,
achternaam,
adres,
nummer,
postcode,
woonplaats,
telnr,
mobiel,
email,
jaarafstu
) VALUES (
'" . $voornaam . "',
'" . $tussenvoegsel . "',
'" . $achternaam . "',
'" . $adres . "',
'" . $nummer . "',
'" . $postcode . "',
'" . $woonplaats . "',
'" . $telnr . "',
'" . $mobiel . "',
'" . $email . "',
'" . $jaarafstu . "'
)";
mysql_query($query) or die (mysql_error());
if(mysql_affected_rows() == 1)
{
echo "Je aanmelding is verzonden!";
}
}
}
?>
ini_set('display_errors', 1); // 0 = uit, 1 = aan
error_reporting(E_ALL);
$sServer = 'localhost';
$sUser = 'Tom';
$sPass = '********';
$database = 'carolus';
$rConnectie = mysql_connect( $sServer, $sUser, $sPass ); // r van resource
$rConnectie = mysql_select_db( $database );
if(!$rConnectie)
{
echo 'An error has occurred: ' . mysql_error();
}
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
$voornaam = mysql_real_escape_string($_POST['voornaam']);
$tussenvoegsel = mysql_real_escape_string($_POST['tussenvoegsel']);
$achternaam = mysql_real_escape_string($_POST['achternaam']);
$adres = mysql_real_escape_string($_POST['adres']);
$nummer = mysql_real_escape_string($_POST['nummer']);
$postcode = mysql_real_escape_string($_POST['postcode']);
$woonplaats = mysql_real_escape_string($_POST['woonplaats']);
$telnr = mysql_real_escape_string($_POST['telnr']);
$mobiel = mysql_real_escape_string($_POST['mobiel']);
$email = mysql_real_escape_string($_POST['email']);
$jaarafstu = mysql_real_escape_string($_POST['jaarafstu']);
if(empty($voornaam) || empty($achternaam) || empty($adres) || empty($nummer) || empty($postcode) || empty($woonplaats) || empty($telnr) || empty($jaarafstu))
{
echo 'U heeft een benodigd veld niet ingevuld! De velden met een * zijn verplicht.';
}
else
{
$query = "INSERT INTO aanmeldingen
(
voornaam,
tussenvoegsel,
achternaam,
adres,
nummer,
postcode,
woonplaats,
telnr,
mobiel,
email,
jaarafstu
) VALUES (
'" . $voornaam . "',
'" . $tussenvoegsel . "',
'" . $achternaam . "',
'" . $adres . "',
'" . $nummer . "',
'" . $postcode . "',
'" . $woonplaats . "',
'" . $telnr . "',
'" . $mobiel . "',
'" . $email . "',
'" . $jaarafstu . "'
)";
mysql_query($query) or die (mysql_error());
if(mysql_affected_rows() == 1)
{
echo "Je aanmelding is verzonden!";
}
}
}
?>
Nu wil ik graag dat deze aanmeldingen op een apart deel van mijn site te zien zijn. Zodat mensen kunnen zien wie zich er allemaal al hebben aangemeld. Ik snap natuurlijk ook wel dat ik eigenlijk eerst tutorials moet gaan volgen, want ik ben pas net bezig met PHP, maar ik heb het nu even hard nodig. Of jullie mij dus even in de goede richting kunnen duwen.
Wat heb ik er allemaal voor nodig om zo'n query uit te voeren? Ik heb op het moment dit:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
<?php
$sServer = 'localhost';
$sUser = 'Tom';
$sPass = '***********';
$database = 'carolus';
$rConnectie = mysql_connect( $sServer, $sUser, $sPass ); //r van resource
$rConnectie = mysql_select_db( $database );
if(!$rConnectie)
{
echo 'An error has occurred: ' . mysql_error();
}
else { $query = "SELECT * FROM aanmeldingen";}
?>
$sServer = 'localhost';
$sUser = 'Tom';
$sPass = '***********';
$database = 'carolus';
$rConnectie = mysql_connect( $sServer, $sUser, $sPass ); //r van resource
$rConnectie = mysql_select_db( $database );
if(!$rConnectie)
{
echo 'An error has occurred: ' . mysql_error();
}
else { $query = "SELECT * FROM aanmeldingen";}
?>
Het zit nog vol gaten, ik weet het. Dus of jullie even willen helpen hoe ik dit allemaal voor elkaar krijg. Het is dus gewoon de bedoeling dat er op een pagina in mijn website een nette tabel komt die deze informatie weergeeft. Liefst zonder borders, maar dat weet ik wel hoe ik dat wegkrijg, als dat nodig is.
Bvd,
Tom
Gewijzigd op 01/01/1970 01:00:00 door Tom C
wat moet er allemaal te zien zijn alles of alleen de naam of?
Alles, op de ID na (dus dat sterretje in mijn code moet ik nog vervangen)
Al een kijkje in die handleiding genomen? Daar staat een duidelijk voorbeeld waar je zeker mee uit de voeten moet kunnen...
Gewijzigd op 01/01/1970 01:00:00 door wolfje
Als je zelf niet weet wat je doet moet je ook geen voorbeelden gaan geven.
weet wel wat het doet maar weet niet wat hij in ze database heeft ;)
Quote:
$data = "'" . $row[0] . "' '" . $row[1] . "' '" . $row[2] . "' '" . $row[3] . "' '" . $row[7] . "' '" . $row[5] ."' '" . $row[6] . "' '" . $row[7] . "' '" . $row[8] . "' '" . $row[9] . "' '" . $row[10] . "' '" . $row[11] . "'";
$data = str_replace ("'", "", $data);
echo $data;
$data = str_replace ("'", "", $data);
echo $data;
Waar slaat dat stukje code op? En dan doel ik met name op die str_replace().
Gewijzigd op 01/01/1970 01:00:00 door wolfje
Quote:
Het is dus gewoon de bedoeling dat er op een pagina in mijn website een nette tabel komt die deze informatie weergeeft. Liefst zonder borders, maar dat weet ik wel hoe ik dat wegkrijg, als dat nodig is.
Misschien heb je hier iets aan, de tabel moet je zelf verder opbouwen.
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
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?php
$sServer = 'localhost';
$sUser = 'Tom';
$sPass = '***********';
$database = 'carolus';
$rConnectie = mysql_connect( $sServer, $sUser, $sPass ); //r van resource
$rConnectie = mysql_select_db( $database );
if(!$rConnectie)
{
echo 'An error has occurred: ' . mysql_error();
}
else
{
$query = "SELECT * FROM aanmeldingen";
$result = mysql_query($query);
while ($row = mysql_fetch_array($result))
{
echo "<tr><td>Voornaam:</td><td>" . $row['voornaam'] . "</td></tr>";
echo "<tr><td>Achternaam:</td><td>" . $row['achternaam'] . "</td></tr>";
echo "<tr><td>E-mail:</td><td>" . $row['email'] . "</td></tr>";
// rest van de velden
}
}
?>
$sServer = 'localhost';
$sUser = 'Tom';
$sPass = '***********';
$database = 'carolus';
$rConnectie = mysql_connect( $sServer, $sUser, $sPass ); //r van resource
$rConnectie = mysql_select_db( $database );
if(!$rConnectie)
{
echo 'An error has occurred: ' . mysql_error();
}
else
{
$query = "SELECT * FROM aanmeldingen";
$result = mysql_query($query);
while ($row = mysql_fetch_array($result))
{
echo "<tr><td>Voornaam:</td><td>" . $row['voornaam'] . "</td></tr>";
echo "<tr><td>Achternaam:</td><td>" . $row['achternaam'] . "</td></tr>";
echo "<tr><td>E-mail:</td><td>" . $row['email'] . "</td></tr>";
// rest van de velden
}
}
?>
wolfje schreef op 31.05.2008 17:56:
weet wel wat het doet maar weet niet wat hij in ze database heeft ;)
Je hebt totaal geen idee wat je aan het doen bent en PHP-technisch lijkt het echt nergens op.
wolfje schreef op 31.05.2008 18:00:
anders als je het echo komt het met '' eromheen ;) en is niet als ctrl+c en ctrl+v bedoelt :P maar als voorbeeld
Waarom zet je die dan eerst in de echo? Laat die dan ook metéén weg.
Nu krijg ik dus op m'n site die tabellen te zien, nogal slordig, maar die maak ik wel in orde.
Is het nu dus zo, dat als er informatie in de database staat, dat die automatisch daar wordt neergezet? Of mis ik dan nog iets?
Gewijzigd op 01/01/1970 01:00:00 door Tom C
Je sluit de else van regel 12 nergens af. Zet op regel 25 dus nog even een }.
PS. Check ook even mijn laatste edit in mijn vorige post.
Gewijzigd op 01/01/1970 01:00:00 door Tom C
Nu rest nog de vraag:
Komt nu alles wat in de database staat, in die tabel te staan op mijn pagina?
en dan natuurlijk wel voornaam onder voornaam, achternaam onder achternaam, enz...?
Als alles klopt wel, zo niet, dan niet.
Hier de code:
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
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
<?php
$sServer = 'localhost';
$sUser = 'Tom';
$sPass = '******';
$database = 'carolus';
$rConnectie = mysql_connect( $sServer, $sUser, $sPass ); //r van resource
$rConnectie = mysql_select_db( $database );
if(!$rConnectie)
{
echo 'An error has occurred: ' . mysql_error();
}
else
{
$query = "SELECT * FROM aanmeldingen";
$result = mysql_query($query);
while ($row = mysql_fetch_array($result));
{
echo '<table width="490" bgcolor="#bec8e0"><tr><td><b>Voornaam</b>' . $row['voornaam'] . "</td>";
echo '<td><b>Tussenvoegsel</b>' . $row['tussenvoegsel'] . "</td>";
echo '<td><b>Achternaam</b>' . $row['achternaam'] . "</td>";
echo '<td><b>Woonplaats</b>' . $row['woonplaats'] . "</td>";
echo '<td><b>Jaar v. afstuderen</b>' . $row['jaarafstu'] . "</td></tr></table>";
}
}
?>
$sServer = 'localhost';
$sUser = 'Tom';
$sPass = '******';
$database = 'carolus';
$rConnectie = mysql_connect( $sServer, $sUser, $sPass ); //r van resource
$rConnectie = mysql_select_db( $database );
if(!$rConnectie)
{
echo 'An error has occurred: ' . mysql_error();
}
else
{
$query = "SELECT * FROM aanmeldingen";
$result = mysql_query($query);
while ($row = mysql_fetch_array($result));
{
echo '<table width="490" bgcolor="#bec8e0"><tr><td><b>Voornaam</b>' . $row['voornaam'] . "</td>";
echo '<td><b>Tussenvoegsel</b>' . $row['tussenvoegsel'] . "</td>";
echo '<td><b>Achternaam</b>' . $row['achternaam'] . "</td>";
echo '<td><b>Woonplaats</b>' . $row['woonplaats'] . "</td>";
echo '<td><b>Jaar v. afstuderen</b>' . $row['jaarafstu'] . "</td></tr></table>";
}
}
?>
Mijn vraag ik dus of jullie dit even willen controleren.
Of het dus zo is dat de gegevens onder de betreffende kop in de tabel komen te staan. Er staat namelijk één volledig ingevuld formulier in mijn database, maar die komt er niet uit (althans de gegevens die ik opvraag).
Nogmaals: Het is dus de bedoeling dat de aanmeldingen onder elkaar komen te staan, voornaam onder kopje voornaam, achternaam onder kopje achternaam, enz. allemaal in tabellen. Hopelijk is het zo helemaal duidelijk.
Gewijzigd op 01/01/1970 01:00:00 door Tom C
Zorg ook nog even voor wat foutafhandeling, dat klopt ook nog niet.
Gewijzigd op 01/01/1970 01:00:00 door Jesper Diovo