|
|
|
|
Bonsoir,
Voilà je débute en PHP/SQL. J'arrive à faire ce que je veux tant que je crée tout de zéro, mais là je dois récupérer une base déjà conçue et l'exploiter, ce qui est hélas autre chose.
J'ai pû comprendre les jointures de moi-même, nécessaires pour cette base, et donc permettre à l'utilisateur d'avoir des noms, et le serveur le typeID correspondant, mais la récupération des données relatives me dépasse.
Voilà les lignes du SELECT correspondant au choix de l'utilisateur, choix dépendant donc de typeID :
SELECT requiredTypeID,quantity FROM latablequilfaut WHERE typeID = $typeID
typeID activity requiredTypeID quantity 11287 6 36 334 11287 6 39 2 11287 6 40 2
Configuration: Windows XP Opera 9.25
Ach, c'est vrai que je ne suis pas très clair ^^
typeID matos1 matos2 matos3 ...... matos7 11287 334 0 2 ...... quantite7 Donc une fois qu'on choisissait ce qu'on voulait ( typeID ), toute cette ligne était extraite dans une variable $ligne['numero'] par exemple, et le calcul comprenait chaque matos possible, même si la valeur du dit matos était zéro. Facile à gérer. > Mais là < je tourne sur une base qui fonctionne différement : typeID activity matos quantity 11287 6 36 334 11287 6 39 2 11287 6 40 2 C'est toujours la même idée : Je choisi un typeID, il faut faire le calcul, mais le matos requis et sa quantité sont stocké sur PLUSIEURS LIGNES. Et là je ne sais pas comment faire pour TOUT récupérer, car j'ai toujours joué avec des lignes uniques. Quand je fais mon script PHP pour tenter d'extraire tout le matos et les quantités dans $ligne, je n'obtient que la première ligne (36 et 334). J'aimerai donc savoir comment obtenir ces informations. eolange > Avec cette solution je n'obtient que la dernière ligne (40 2) :-/ Par contre ça me donne une idée. Transformer $1erecolonne en Array vu que pour obtenir 40 2, le script a bien dû lire les lignes qu'il y avait avant :) Un truc dans le genre :
$rapatriement = mysql_query("SELECT requiredTypeID,quantity FROM tabledetravail WHERE typeID = $typeID");
$i = 0;
while($donnees=mysql_fetch_row($rapatriement))
{
$matos[$i] = $donnees[0];
$quantite[$i] = $donnees[1];
$i++;
}
Suivi par des Case ou If pour déterminer avec quoi la quantité serait modifiée. Je vais essaier dès que possible :) |
Bonsoir,
$rapatriement = mysql_query("SELECT requiredTypeID,quantity FROM tabledetravail WHERE typeID = $typeID");
while($donnees=mysql_fetch_row($rapatriement))
{
$cle=$donnees['matos'];
$array_valeurs[$cle]=$donnes['quantite'];
// on stocke ainsi dans cet array les quantites dans un array dont les num de cles sont les matos
}
// pour faire les calculs il suffit de parcourir l'array
foreach($array_valeurs as $cle=>$value){
$prix=$cle*$value;
//ou autre
}
|
Bonsoir,
|