Ses derniers messages sur les forums
est-ce que tu peux m'expliquer le deroulement de l'operateur ternaire stp, même carrément la boucle
foreach( $champs as $i => $champ ) {
$sens = 'a' === $tri[$i] ? ' ASC' : ' DESC';
$order[] = $champ . $sens;
}
autant pour moi je suis allé un peu vite dans la comprehension. par contre j'ai un message d'erreur à la compilation 'Uninitialized string offset:' sur la ligne
$sens = 'a' === $tri[$i] ? ' ASC' : ' DESC';
dans mon code :
if( !isset( $_GET['tri'] ) ) $tri = 'ddd';
else $tri = $_GET['tri'];
$champs = array( 'd.ID', 'd.enseigne', 'd.nom', 'd.prenom', 'd.ville', 'd.codePostal', 'r.nom');
$order = array();
foreach( $champs as $i => $champ ) {
$sens = 'a' === $tri[$i] ? ' ASC' : ' DESC';
$order[] = $champ . $sens;
}
$order = implode(', ', $order );
//$requete = 'SELECT date, nom, prenom FROM table ORDER BY ' . $order;
$query_rs_listeDistrib = "SELECT d.ID, d.enseigne, d.nom, d.prenom, d.ville, d.codePostal, r.nom
FROM distributeur AS d, region AS r
WHERE d.region = r.ID
ORDER BY " . $order;
je ne vois pas d'où ça vient
merci pour le code
peux-tu m'expliquer 2-3 trucs dans le code proposé :
si la variable $GET['tri'] n'existe pas, quelle devrait être la valeur de $order?
car moi cela me sort ORDER BY date DESC, nom DESC, prenom DESC, alors qu'il ne faudrait q'une valeur pour le tri.
Bonjour,
j'affiche dans un tableau le resultat d'une requete SQL et j'aimerai en cliquant sur le libellé de chaque colonne faire un tri ordonné sur chaque colonne.
Je ne sais pas du tout commment m'y prendre; je suppose qu'il ne faut pas créer une page par tri.
peut-etre faut-il indiquer la requete dans l'URL?
merci d'avance pour l'aide.
ok. le but de la jointure est de definir la variable que l'on souhaite importer d'une autre table dans la 1ere requete. ainsi on peut l'utiliser comme un champ de la table.
par contre ma boucle est à revoir car un seul enregistrement affiché et sans mesage d'erreur.
je verrais ca lundi car là week-end.
bon we
d'ailleurs ma boucle ne m'affiche qu'un enregistrement!
c'est bon j'ai trouvé il y avait un :
mysql_free_result($rs_listeDistrib);
qui trainait!
la prise de tête!!
merci pour l'aide.
je ne touche pas à la variable $rs_listeDistrib.
voici la totalité de la boucle :
<?php do { ?><tr>
<td><a href="tables_modif_distrib.php?ID=<?php echo $row_rs_listeDistrib['ID']; ?>"><?php echo $row_rs_listeDistrib['enseigne']; ?></a></td>
<td><?php echo $row_rs_listeDistrib['nom']; ?></td>
<td><?php echo $row_rs_listeDistrib['prenom']; ?></td>
<td><?php echo $row_rs_listeDistrib['codePostal']; ?></td>
<td><?php echo $row_rs_listeDistrib['ville']; ?></td>
<td><?php $query = "SELECT nom FROM region WHERE ID = ".$row_rs_listeDistrib['region'];
$result = mysql_query($query, $conn_teissa);
$reg = mysql_fetch_assoc($result);
echo $reg['nom']; ?></td>
</tr>
<?php } while ($row_rs_listeDistrib == mysql_fetch_assoc($rs_listeDistrib)); ?>
je ne fais que comparer les 2 tableaux
voici le debut de mon code :
mysql_select_db($database_conn_teissa, $conn_teissa);
$query_rs_listeDistrib = "SELECT ID, enseigne, nom, prenom, ville, codePostal FROM distributeur ORDER BY enseigne ASC";
$rs_listeDistrib = mysql_query($query_rs_listeDistrib, $conn_teissa) or die(mysql_error());
$row_rs_listeDistrib = mysql_fetch_assoc($rs_listeDistrib);
et l'endroi où se produit l'erreur :
<?php do{ ...instruction...
while ($row_rs_listeDistrib == mysql_fetch_assoc($rs_listeDistrib)) ?>
Bonjour, j'ai un message d'erreur à l'execution :
Warning: mysql_fetch_assoc(): 4 is not a valid MySQL result resource in ...
4 est un type d'erreur ou la valeur renvoyée par fetch_assoc?