Ik wil dat mijn script een layout nummer uit de database haalt. Het probleem is echter dat ik het niet werkende krijg.

Momenteel heb ik:

http://www.plaatscode.be/99178/

Met dit wordt er niets geladen.

Als ik echter van dit


$select = mysql_query("SELECT * FROM `leden` WHERE gameid='".$_SESSION['gameid']."'");
$page = mysql_fetch_object($select);


Dit maak


$select = mysql_query("SELECT * FROM `leden` ");
$page = mysql_fetch_object($select);


Dan wordt de layout code uit de 1e rij in de database geladen. Alleen heb ik dan dus als probleem dat er altijd maar 1 layout wordt geladen.

Wie kan mij hiermee verder helpen?
Misschien komt het omdat de sessie $_SESSION['gameid'] maar 1 waarde heeft? Bijv. 3 ofzo.

Als je meerdere layouts wilt gebruiken dan zou je de WHERE weg moeten halen en een while loop gebruiken...
Nee volgens mij niet. In de tabel 'leden' staan meerdere rows met hierin allemaal verschillende layout nummers maar niets wordt er geladen. En haal ik dus dat laatste weg, dan laat die alleen de 1e row (met layout nummer 1)
Code herschrijven, netjes maken, commentaar toevoegen en nog veel belangrijker Foutafhandeling toevoegen
Dat was nou niet exact mijn vraag.

Hopende dat er iemand is die mij hier wel verder mee kan helpen.
In jouw code staat dit stukje:

<?php echo $page->layout; ?>


Moet dat niet zijn:
<?php
echo $page['layout'];
?>
Omdat je namelijk een array maakt van al je mysql rows...
Dank je wel voor je aanvulling, helaas is dit het ook niet.
Nee maar denk er maar wel eventjes over na. Want je moet je code echt gaan herschrijven.

Bouw eens foutafhandeling in. en doe het niet op het einde, want dan doe je het niet. Begin overnieuw met schrijven en bouw die foutafhandeling in.

Als je dat namelijk vanaf het begin had gedaan, was het nu waarschijnlijk op gelost.

en nog wat * in je query is nooit raadzaam. Schrijf het gewoon uit. Die wildcard is een domme functie die je eigenlijk nooit nodig hebt. Het is alleen gemakzucht en zal ook niet door alle databases ondersteund worden.

overigens.. je maakt gebruik van backticks.. haal die uit je code.. gebruik enkele quotes.

Reageren