aiuto con query

23 Set 2015
1
0
0
salve a tutti, premesso che non me ne intendo di php e my sql. Sto cercando di creare un riassunto dei personaggi che contiene un account di gioco all'interno della propria pagina home. Tuttavia mi sono imbattuto in qualcosa che non comprendo e proprio non sò come uscirmene; chiedo numi dunque.

Premesso che esiste già un sistema di registrazione e login (quindi una session attiva ed un database di appoggio)

mi trovo con questa situazione:
PHP:
include_once 'dbconnectgs.php';


if(!isset($_SESSION['user']))
{
 header("Location: index.php");
}
$res=mysql_query("SELECT * FROM players WHERE account_id=".$_SESSION['user']);
$userRow=mysql_fetch_array($res);

poi sotto ho creato una tabella in html per listare i dati in questo modo:

PHP:
<td class="tg-031e"><?php echo $userRow['name']; ?></td>
	<td class="tg-031e"><?php echo $userRow['race']; ?></td>
	<td class="tg-031e"><?php echo $userRow['gender']; ?></td>
    <td class="tg-031e"><?php echo $userRow['player_class']; ?></td>

il tutto funziona ma ho un problema, in quanto finche sussiste un sol record (ad esempio un solo personaggio per singolo giocatore) mi mostra effettivamente quel singolo personaggio ma come faccio a creare un elenco, se per esempio nella stessa tabella sul database ci sono più personaggi appartenenti ad un account? infatti nel secondo caso, continua a listare sempre e solo lo stesso personaggio (il primo che trova interrogando il database alla colonna identificata con "ID") omettendo gli altri.
come dati posso fornirvi che all'interno del database i personaggi vengono identificati come dicevo, con degli id (crescenti in base ad anzianità della creazione ovviamente) l'account ha anch'esso un suo id (crescente) ed oltre a questo è riportato in tabella nella colonna account_name.

spero di essere stato chiaro, se serve posso postare il codice per intero e il db..
 
Ultima modifica di un moderatore:
ciao
piccolo schema
PHP:
<?php
session_start();//l'avevi messo?
if(!isset($_SESSION['user'])){
	header("Location: index.php");
	exit();//per sicurezza se è una pagina riservata
}
require_once 'dbconnectgs.php';//meglio dopo l'istruzione header e meglio il require
$res=mysql_query("SELECT * FROM players WHERE account_id=".$_SESSION['user']);
echo "<table>";
echo "<tr>";
while($userRow=mysql_fetch_array($res)){//cicla i record che soddisfano il where
	echo "<td class=\"tg-031e\">".$userRow['name'];."</td>";
	echo "<td class=\"tg-031e\">".$userRow['race'];."</td>";
	echo "<td class=\"tg-031e\">".$userRow['gender'];."</td>";
	echo "<td class=\"tg-031e\">".$userRow['player_class'];."</td>";
}
echo "</tr>";
echo "</table>";
?>
un consiglio soprattutto se sei agli inizi, abbandona le vecchie istruzioni mysql deprecate e passa alle mysqli o alla classe pdo
 

Discussioni simili