Ik ben een beetje aan het knutselen met mysql omdat ik voor iemand een database in elkaar moet knutselen waar een vragenformulier in opgeslagen moet worden.
Nu zijn er een aantal vragen waar meerdere checkboxen als antwoorden bij moeten staan. Nu heb ik het met implode voor elkaar gekregen om het in een test database op te slaan. (misschien dat iemand een betere of makkelijker manier weet??)
Het probleem is nu dat ik er niet uit kom hoe ik het eruit haal en weer kan geven. Ik heb meerdere dingen geprobeerd maar het wil niet helemaal lukken.
Alvast bedankt!
Met onderstaande code worden de gegevens in de db geplaatst.
$spelers gebruiken ipv $_POST['spelers'] is erg riskant, want als superglobals ergens uit staat werkt je script niet meer die methode werd lang geleden gebruikt
id spelers
1 henk,gert,jan,piet,toon
2 jan,piet,toon
3 henk,jan,piet,toon
4 henk,gert
Zo staat het nu in de tabel. Als ik nu van id 1 de spelers wil weergeven dan krijg ik het ook zo te zien als in de tabel. Het zou overzichtelijker zijn als er na elke , een enter zou volgen. Verder is het zo dat als ik gewoon de spelers wil weergeven, alles achter elkaar geplaatst wordt.
Dus: henk,gert,jan,piet,toon,jan,piet,toon,henk,jan,piet,toon,henk,gert
Abbas - 17/11/2009 23:03 (laatste wijziging 17/11/2009 23:03)
$res = "";
while(ophalen van de gegevens)
{
//volgende regel vervangt de , door een newline
//dbResult is de rij uit je tabel
$res .= str_replace(",", "<br />", $dbResult);
//een extra enter voor de volgende regel
$res .= "<br />";
}
echo $res;
Ik heb bovenstaande code geprobeerd. Er komt nu idd een enter op de juiste plek, maar ik doe nog iets verkeerds. Ik krijg namelijk niet de inhoud van de tabel te zien, maar het volgende:
Onderstaande code is dat. Lijkt me dat ik er nog ergens weer een implode/explode moet plaatsen om de data uit de tabel te halen omdat het er ook via een implode in is gezet.