par
Ryle » 18 déc. 2007, 17:53
Bah là, tel quel, dans ton code, ta requête dois retourner un truc du genre :
Code : Tout sélectionner
nature, type, niveau, ..., idcat(1)
nature, type, niveau, ..., idcat(2)
nature, type, niveau, ..., idcat(3)
nature, type, niveau, ..., idcat(4)
Tu pourrais donc faire une boucle comme ceci :
$requete = mysql_query('SELECT * FROM even LEFT JOIN cateven ON even.id = cateven.ideven WHERE even.id='.$modifier_even);
$categorie = array();
while ($donnees = mysql_fetch_assoc($requete)) {
$nature = $donnees['nature'];
$type = $donnees['type'];
$niveau = $donnees['niveau'];
$style = $donnees['style'];
$arme = $donnees['arme'];
$categorie[] = $donnees['idcat'];
...
}
print_r($categorie);
Mais c'est pas terrible, tu écrases à chaque fois les valeurs de $nature, $type, etc. Donc tu pourrait éventuellement utiliser mysql_result()
$requete = mysql_query('SELECT * FROM even LEFT JOIN cateven ON even.id = cateven.ideven WHERE even.id='.$modifier_even);
$nature = mysql_result($requete , 0, 'nature');
$type = mysql_result($requete , 0, 'type');
$niveau = mysql_result($requete , 0, 'niveau');
$style = mysql_result($requete , 0, 'style');
$arme = mysql_result($requete , 0, 'arme');
$categorie = array();
for (...) {
$categorie[] = mysql_result($requete , $i, 'idcat');
...
}
print_r($categorie);
Ou encore faire une seconde requête et ne boucler que sur la seconde
$requete = mysql_query('SELECT * FROM even WHERE even.id='.$modifier_even);
$donnees = mysql_fetch_assoc($requete);
$nature = $donnees['nature'];
$type = $donnees['type'];
$niveau = $donnees['niveau'];
$style = $donnees['style'];
$arme = $donnees['arme'];
$requete = mysql_query('SELECT * FROM cateven WHERE cateven.ideven='.$modifier_even);
$categorie = array();
while ($donnees = mysql_fetch_assoc($requete)) {
$categorie[] = $donnees['idcat'];
}
print_r($categorie);
Bah là, tel quel, dans ton code, ta requête dois retourner un truc du genre :
[code]nature, type, niveau, ..., idcat(1)
nature, type, niveau, ..., idcat(2)
nature, type, niveau, ..., idcat(3)
nature, type, niveau, ..., idcat(4)[/code]
Tu pourrais donc faire une boucle comme ceci :
[php]$requete = mysql_query('SELECT * FROM even LEFT JOIN cateven ON even.id = cateven.ideven WHERE even.id='.$modifier_even);
$categorie = array();
while ($donnees = mysql_fetch_assoc($requete)) {
$nature = $donnees['nature'];
$type = $donnees['type'];
$niveau = $donnees['niveau'];
$style = $donnees['style'];
$arme = $donnees['arme'];
$categorie[] = $donnees['idcat'];
...
}
print_r($categorie);[/php]
Mais c'est pas terrible, tu écrases à chaque fois les valeurs de $nature, $type, etc. Donc tu pourrait éventuellement utiliser mysql_result()
[php]$requete = mysql_query('SELECT * FROM even LEFT JOIN cateven ON even.id = cateven.ideven WHERE even.id='.$modifier_even);
$nature = mysql_result($requete , 0, 'nature');
$type = mysql_result($requete , 0, 'type');
$niveau = mysql_result($requete , 0, 'niveau');
$style = mysql_result($requete , 0, 'style');
$arme = mysql_result($requete , 0, 'arme');
$categorie = array();
for (...) {
$categorie[] = mysql_result($requete , $i, 'idcat');
...
}
print_r($categorie);[/php]
Ou encore faire une seconde requête et ne boucler que sur la seconde :)
[php]$requete = mysql_query('SELECT * FROM even WHERE even.id='.$modifier_even);
$donnees = mysql_fetch_assoc($requete);
$nature = $donnees['nature'];
$type = $donnees['type'];
$niveau = $donnees['niveau'];
$style = $donnees['style'];
$arme = $donnees['arme'];
$requete = mysql_query('SELECT * FROM cateven WHERE cateven.ideven='.$modifier_even);
$categorie = array();
while ($donnees = mysql_fetch_assoc($requete)) {
$categorie[] = $donnees['idcat'];
}
print_r($categorie);[/php]