Ik ben bezig met het oefenen in php/MYSQL (samen met Smarty). Ik kom nu een probleem tegen waar ik geen oplossing voor heb. ik heb wat data in een tabel staan welke gekoppeld is aan de user_id van de ingelogde gebruiker. Wat ik wil doen is als een user naar een pagina gaat, hij een overzicht krijgt van al zijn "characters" dit wil ik doen door middel van de volgende code:
Het probleem is dat je meerdere characters aan kan maken, die staan ook netjes in de database met allemaal hetzelfde player_id. alleen de output geeft maar 1 row terug? dit terwijl hij wel ziet dat er meerdere rows zijn. Heeft iemand een idee in welke richting ik dit zou moeten zoeken want ik zou echt niet weten wat ik fout doe.
Ik heb al geprobeerd heel smarty hier buiten te laten en alles gewoon te echo'en maar ook dan geeft hij maar 1 row terug
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| mysql_select_db($db_name, $con); $result = mysql_query("SELECT * FROM $tbl_name WHERE player_id=$id") or die(mysql_error()); $count = mysql_num_rows($result); if ($count > 0) { while($row = mysql_fetch_array($result)) { $smarty->assign('characters', array( array('name' => $row['name'], 'hp' => $row['hp'], 'mp' => $row['mp'],'gold' => $row['gold'],'level' => $row['level'],'xp' => $row['xp']), )); } $smarty->assign('tekst', ""); } else { $smarty->assign('tekst', "U heeft nog geen characters aangemaakt" ); mysql_close($con); } |
Het probleem is dat je meerdere characters aan kan maken, die staan ook netjes in de database met allemaal hetzelfde player_id. alleen de output geeft maar 1 row terug? dit terwijl hij wel ziet dat er meerdere rows zijn. Heeft iemand een idee in welke richting ik dit zou moeten zoeken want ik zou echt niet weten wat ik fout doe.
Ik heb al geprobeerd heel smarty hier buiten te laten en alles gewoon te echo'en maar ook dan geeft hij maar 1 row terug