Mettre variable dans array pour trie - Page 2
Résolu
Précédent
- 1
- 2
OKKKK !!! J'ai trouvé ...........
GENIAL !!!! Un grand merci pour ton aide !!!!!
Me reste plus quà trouver l'équivalence de num_cj_1, num_cj_2,num_cj_3 et num_cj_4 dans la table en, faisant :
Mais comment remplacer
"conjoint" => $row['num_cj_1']
par
$row4['nom'] $row4['prenom']
GENIAL !!!! Un grand merci pour ton aide !!!!!
Me reste plus quà trouver l'équivalence de num_cj_1, num_cj_2,num_cj_3 et num_cj_4 dans la table en, faisant :
if (!empty($row['num_cj_1']))
{
$query4 = 'SELECT nom,prenom FROM individus WHERE num_indiv LIKE "'.$row['num_cj_1'].'" ';
$result4 = mysql_query($query4) or die(mysql_error());
$row4 = mysql_fetch_array($result4);
}
Mais comment remplacer
"conjoint" => $row['num_cj_1']
par
$row4['nom'] $row4['prenom']
Tu n'as pas besoin de remplacer tel que tu le dis.
Tu as $row['num_cj_1'] et à partir de ça tu peux toujours trouver le nom et le prénom grâce à ta requête.
Par contre dans ton select, num_indiv vaut $row['num_cj_1'] ou pas ?
Car si c'est la même valeur tu ne dois pas mettre de LIKE mais un =
Tu as $row['num_cj_1'] et à partir de ça tu peux toujours trouver le nom et le prénom grâce à ta requête.
Par contre dans ton select, num_indiv vaut $row['num_cj_1'] ou pas ?
Car si c'est la même valeur tu ne dois pas mettre de LIKE mais un =
J'ai fait ça :
Ca fonctionne, mais peut-être un peu long et pas très esthétique !
Par contre, j'ai voulu tester si il y avait des requêtes vides (pas de conjoint) en faisant if ($tonarray[1] != ""), mais ça fonctionne pas !
if (!empty($row['num_cj_1']))
{
$query4 = 'SELECT nom,prenom,date_naissance,date_dc FROM individus WHERE num_indiv LIKE "'.$row['num_cj_1'].'" ';
$result4 = mysql_query($query4) or die(mysql_error());
$row4 = mysql_fetch_array($result4);
$ident4 = ''.$row4['nom'].' '.$row4['prenom'].'';
}
if (!empty($row['num_cj_2']))
{
$query5 = 'SELECT nom,prenom,date_naissance,date_dc FROM individus WHERE num_indiv LIKE "'.$row['num_cj_2'].'" ';
$result5 = mysql_query($query5) or die(mysql_error());
$row5 = mysql_fetch_array($result5);
$ident5 = ''.$row5['nom'].' '.$row5['prenom'].'';
}
if (!empty($row['num_cj_3']))
{
$query6 = 'SELECT nom,prenom,date_naissance,date_dc FROM individus WHERE num_indiv LIKE "'.$row['num_cj_3'].'" ';
$result6 = mysql_query($query6) or die(mysql_error());
$row6 = mysql_fetch_array($result6);
$ident6 = ''.$row6['nom'].' '.$row6['prenom'].'';
}
if (!empty($row['num_cj_4']))
{
$query7 = 'SELECT nom,prenom,date_naissance,date_dc FROM individus WHERE num_indiv LIKE "'.$row['num_cj_4'].'" ';
$result7 = mysql_query($query7) or die(mysql_error());
$row7 = mysql_fetch_array($result7);
$ident7 = ''.$row7['nom'].' '.$row7['prenom'].'';
}
$tonarray = array();
$tonarray[0]=array("date_mariage" => $row['date_mariage_1'] , "conjoint" => $ident4 , "lieu_mariage" => $row['lieu_mariage_1']);
$tonarray[1]=array("date_mariage" => $row['date_mariage_2'] , "conjoint" => $ident5 , "lieu_mariage" => $row['lieu_mariage_2']);
$tonarray[2]=array("date_mariage" => $row['date_mariage_3'] , "conjoint" => $ident6 , "lieu_mariage" => $row['lieu_mariage_3']);
$tonarray[3]=array("date_mariage" => $row['date_mariage_4'] , "conjoint" => $ident7 , "lieu_mariage" => $row['lieu_mariage_4']);
sort($tonarray);
for($i=0; $i<=3; $i++)
{
if ($tonarray[1] != "")
{
echo '<tr><td><u>Union</u> : </td>avec ';
echo $tonarray[$i]['conjoint']." ".$tonarray[$i]['date_mariage']." ".$tonarray[$i]['lieu_mariage']."<br />";
}
}
Ca fonctionne, mais peut-être un peu long et pas très esthétique !
Par contre, j'ai voulu tester si il y avait des requêtes vides (pas de conjoint) en faisant if ($tonarray[1] != ""), mais ça fonctionne pas !
C'est bon, j'ai trouvé .................. !!!!!!
Merci pour tout !
Bonne fêtes et meilleurs voeux !
A ++
Merci pour tout !
Bonne fêtes et meilleurs voeux !
A ++
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Je peux t'expliquer comment réduire considérablement le nombre de lignes si tu veux mais il faudra encore utiliser une boucle.
Concernant la condition pour vérifier si des lignes sont vides, essaie if(!empty($tonarray[1]))
Concernant la condition pour vérifier si des lignes sont vides, essaie if(!empty($tonarray[1]))
Bonjour TeRMiNo,
J'ai réussi:
La seule chose qui cloche c'est que je n'arrive pas à trier sur date_mariage (SUBSTRING(date_mariage, -4) ASC). Car là, j'ai l'impression que le tri se fait sur "conjoint".
J'ai réussi:
$tonarray = array();
$tonarray[0]=array("date_mariage" => $row['date_mariage_1'] , "conjoint" => $row['num_cj_1'] , "lieu_mariage" => $row['lieu_mariage_1']);
$tonarray[1]=array("date_mariage" => $row['date_mariage_2'] , "conjoint" => $row['num_cj_2'] , "lieu_mariage" => $row['lieu_mariage_2']);
$tonarray[2]=array("date_mariage" => $row['date_mariage_3'] , "conjoint" => $row['num_cj_3'] , "lieu_mariage" => $row['lieu_mariage_3']);
$tonarray[3]=array("date_mariage" => $row['date_mariage_4'] , "conjoint" => $row['num_cj_4'] , "lieu_mariage" => $row['lieu_mariage_4']);
sort($tonarray);
for($i=0; $i<=3; $i++)
{
if ($tonarray[$i]['conjoint'] != "")
{
$query4 = 'SELECT id,nom,prenom,date_naissance,date_dc FROM individus WHERE num_indiv LIKE '.$tonarray[$i]['conjoint'].' ';
$result4 = mysql_query($query4) or die(mysql_error());
$row4 = mysql_fetch_array($result4);
echo '<tr><td><u>Union</u> : </td>'; ....................
La seule chose qui cloche c'est que je n'arrive pas à trier sur date_mariage (SUBSTRING(date_mariage, -4) ASC). Car là, j'ai l'impression que le tri se fait sur "conjoint".
Précédent
- 1
- 2