Page 1 sur 1

affichage requéte problèmatique

Posté : 24 oct. 2006, 16:12
par jean-claude93
bonjour, je débute en php j'aurais besoin d'aide sur mon problème:
je souhaite affiché les désultat d'une requête en ligne, seulement j'aimerais faire un teste par exemple sur chaque valeur de mon tableau (du genre monprenom='-' ) et ne pas affiche cette ligne (prenom: monprenom)
j'ai commencé un bout de code mais j'ai une quarantaine de ligne à tester , je pense qu'il y a peut être une facon plus intelligente d'effectuer ce test ?

par ex:
nom: monnom
prenom: monprenom
age: monage

nom: monnom2
age: monage2

nom: monnom3
prenom: monprenom3

mon bout de code :oops: :oops:

Code : Tout sélectionner

$sql = 'SELECT nom,prenom,tel,date FROM matable_tbl'; $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error()); while($data = mysql_fetch_assoc($req)) { echo '</li>NOM: '.$data['nom'].'</li>'; if ($prenom!='-') { echo '<li>PRENOM: '.$data['prenom'].'</li>'; else { } } if ($date!=0) { echo '<li>DATE: '.$data['date'].'</li>'; else { } } .....x40 ??!! } mysql_close();

Posté : 24 oct. 2006, 18:09
par Vikchill
Pourquoi ne pas faire le test dans la requête SQL pour ensuite tout afficher?

Code : Tout sélectionner

SELECT nom,prenom,tel,date FROM matable_tbl WHERE prenom <> '-' AND date <> 0
Autre chose, là tu as testé tous les champs, que testes-tu d'autre?[/code]

Posté : 24 oct. 2006, 20:01
par jean-claude93
ben :( tout mes champs :oops: mais c'est peut etre pas une bonne idée :!:
j'avais pensé en fait pouvoir tout mettre dans un tableau (array) et peut etre c'était + simple ?

Posté : 24 oct. 2006, 20:39
par Vikchill
ben :( tout mes champs :oops: mais c'est peut etre pas une bonne idée :!:
j'avais pensé en fait pouvoir tout mettre dans un tableau (array) et peut etre c'était + simple ?
Tu as 4 champs pour le moment oO

Posté : 25 oct. 2006, 08:23
par Ryle
C'est pas vraiment la même chose... si le prénom n'est pas renseigné il veut juste ne pas l'afficher, mais rammene quand même les autres informations de l'enregistrement... si tu filtres au niveau de la requête tu n'auras jamais les autes informations associées à l'enregistrement...

Ta façon de faire est donc la bonne, mais tu n'utilises pas les bonnes variables, ce n'est pas "$prenom" qu'il te faut tester mais plus vraissemblablement "$data['prenom']"
Par ailleurs là syntaxe du if me parait bizare avec tes accolades. La bonne syntaxe devrait être :
if (...) {

}
else {

}
Pour te simplifier un peu la vie et l'écriture, si dans tes else {} il n'y a rien à faire, ce n'est pas la peine de les spécifier :)

Posté : 25 oct. 2006, 10:35
par jean-claude93
merci pour vos réponses, j'ai plus qu'a tester tout ça. :D