content uit database
Ik probeer voor het eerst een website te maken waarbij de content uit een database komt.
Ik heb nu het menu uit een database gehaald en wil nu de paginas uit de database halen via $_get maar ik krijg geen pagina's te zien. Het vreemde is dat ik bij een gastenboek dezelfde methode heb gebruikt en het hier wel werkte. Het eenigste verschil is dat ik toen als url had example.nl/index.php?pagina=gastenboek&id=1 en nu heb ik dus een url zonder $id.
Heeft iemand een idee wat het probleem is en of ik de juiste manier gebruik om een website uit een database te halen??
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
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
<?php
$sql = mysql_query("SELECT paginaid,titel FROM content ORDER BY volgordeid");
//het menu
if(mysql_num_rows($sql)> 0) {
while($data= mysql_fetch_assoc($sql)) {
echo '<li><a href="index.php?pagina='.$data['paginaid'].'">'.$data['titel'].'</a></li>';
}
}
//de pagina's
if(isset($_get['pagina'])) {
$paginaid = $_GET['pagina'];
$pagina_query = mysql_query("SELECT * FROM content WHERE paginaid=$pagina");
while($pagina_data = mysql_fetch_assoc($pagina_query)){
//de pagina uit de databse
echo $pagina_data['content'];
echo 'gelukt';
}
}
if(!isset($_get['pagina'])) {
echo' geen $_get vandaag';
}
?>
$sql = mysql_query("SELECT paginaid,titel FROM content ORDER BY volgordeid");
//het menu
if(mysql_num_rows($sql)> 0) {
while($data= mysql_fetch_assoc($sql)) {
echo '<li><a href="index.php?pagina='.$data['paginaid'].'">'.$data['titel'].'</a></li>';
}
}
//de pagina's
if(isset($_get['pagina'])) {
$paginaid = $_GET['pagina'];
$pagina_query = mysql_query("SELECT * FROM content WHERE paginaid=$pagina");
while($pagina_data = mysql_fetch_assoc($pagina_query)){
//de pagina uit de databse
echo $pagina_data['content'];
echo 'gelukt';
}
}
if(!isset($_get['pagina'])) {
echo' geen $_get vandaag';
}
?>
alvast bedankt!!
Gewijzigd op 15/10/2012 01:58:41 door Tim S
Ga je vast nooit meer vergeten.
Alle superglobals ALTIJD met hoofdletters.
Dus geen $_get maar $_GET.
Overigens als ik naar je code kijk heb ik toch wel een paar opmerkingen:
Geen wildcards (*) gebruiken. Selecteer de velden die je nodig hebt.
Variabelen buiten de quotes halen.
Let op voor mysql injecties gebruik mysql_real_escape_string
Tabjes gebruiken helpt vaak voor de leesbaarheid en is veel netter.
Geen onnodig variabelen aanmaken.
Als je maar 1 result terug krijgt is een while loop onnodig.
Gewijzigd op 15/10/2012 02:07:03 door Jordi Kroon
Dankjewel!
Wel zo belangrijk.
Ja ik het aanpassen, dit was even een opzetje om te kijken of alles werkt!