2010-03-26 6 views
5

Je suis en train d'avoir un vide mental ici et je ne peux pas pour la vie de moi trouver une solution.Ajouter les résultats de la base de données au tableau

Mon scénario est que je suis en train de programmer en PHP et MySQL. J'ai une table de base de données retournant les résultats pour un orderid spécifique. La requête peut renvoyer un maximum de 4 lignes par commande et un minimum de 1 ligne.

Voici une image de comment je veux retourner les résultats. alt text http://sandbox.mcmedia.com.au/nqlsolutions/images/packages.jpg

J'ai tous les détails de commande (nom, adresse) ect stockés dans une table nommée "ordres". J'ai tous les paquets pour cette commande stockés dans une table nommée "packages".

Ce que je dois faire est d'utiliser une boucle que je dois avoir accès à chaque élément spécifique des résultats de base de données (IE package1, itemstype1, package2, itemtype2) ect

J'utilise une requête comme celui-ci pour essayer et mettre la main sur tout le « nombre d'éléments:

$sql = "SELECT * FROM bookings_onetime_packages WHERE orderid = '".$orderid."' ORDER BY packageid DESC"; 
$total = $db->database_num_rows($db->database_query($sql)); 

$query = $db->database_query($sql); 

$noitems = ''; 
while($info = $db->database_fetch_assoc($query)){ 
$numberitems = $info['numberofitems']; 

for($i=0; $i<$total; $i++){ 

$noitems .= $numberitems[$i]; 

} 

} 
print $noitems; 

je dois avoir accès à chaque élément spécifique parce que je besoin de créer remplir un modèle de pdf en utilisant « fpdf »

J'espère que cette a un sens.Toute direction serait grandement appréciée .

Répondre

14

Vous devriez faire quelque chose comme ceci:

$data = array(); 
while($row = $db->database_fetch_assoc($query)) 
{ 
    $data[] = $row; 
} 

maintenant $ data est un tableau où chaque élément est une ligne du résultat de la requête.

Ensuite, vous pouvez accéder aux lignes comme $ data [0], $ data [1], et les éléments dans les lignes comme $ data [1] ['package'], $ data [0] ['itemtype' ], car chaque ligne est un tableau associatif.

Vous pouvez obtenir le nombre de lignes renvoyées en utilisant count ($ data).

+0

Merci un million pour votre réponse David, très clair et sur place. – Jason

Questions connexes