IF / ELSE ?

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : IF / ELSE ?

par Ryle » 10 août 2006, 13:15

Requete executée avec succès
Certes, mais est ce qu'il y a des résultats de retournés ? (il en faut au moins 1, sinon ca ne marchera pas)

au lieu de $donnee = mysql_fetch_assoc($result);

Fais plutôt :
if ($donnee = mysql_fetch_assoc($result) ) {
  echo "il y a au moins un résultat, c'est donc que le problème ne vient pas de là";
  // ton traitement de $donnee
}
else {
  echo "Aucun résultat";
}

par Johan » 10 août 2006, 11:26

Cette page comporte toutes les requêtes de mes pages (classements, joueurs, calendrier, mini classement, ...) Un peu plus de 1 000 lignes :(

par Tictac » 10 août 2006, 11:22

qui a-t-il sur cette page :fonctions_test.php ?

par Johan » 10 août 2006, 11:20

Requete executée avec succès

par Tictac » 10 août 2006, 11:19

juste ceci =>

Code : Tout sélectionner

SELECT cldom.nom as cldom, clext.nom as clext, phpl_matchs.buts_dom, phpl_matchs.buts_ext, phpl_journees.date_prevue, cldom.id as cliddom, clext.id as clidext, date_reelle, dom.id as eqdom, ext.id as eqext, phpl_matchs.id as id_match, phpl_matchs.lien_article as lien_article2, phpl_journees.id_champ as champ FROM phpl_equipes as dom, phpl_equipes as ext, phpl_matchs, phpl_journees, phpl_clubs as cldom, phpl_clubs as clext WHERE phpl_matchs.id_equipe_dom=dom.id AND phpl_matchs.id_equipe_ext=ext.id AND phpl_journees.id_champ='$champ' AND phpl_journees.numero='$numero' AND dom.id_club=cldom.id AND ext.id_club=clext.id AND phpl_matchs.id_journee=phpl_journees.id AND cldom.nom!='exempte' AND clext.nom!='exempte' ORDER BY date_reelle asc
le reste fait parti du php ;)

par Johan » 10 août 2006, 11:16

Excuse moi, mais je comprends pas exactement la requête que je dois insérer dans phpmyadmin ?

celle ci :
$query1="SELECT cldom.nom as cldom, clext.nom as clext, phpl_matchs.buts_dom, phpl_matchs.buts_ext, 
                        phpl_journees.date_prevue, cldom.id as cliddom, clext.id as clidext, date_reelle, 
                        dom.id as eqdom, ext.id as eqext, phpl_matchs.id as id_match, phpl_matchs.lien_article as lien_article2, phpl_journees.id_champ as champ 
                FROM phpl_equipes as dom, phpl_equipes as ext, phpl_matchs, phpl_journees, 
                     phpl_clubs as cldom, phpl_clubs as clext 
                WHERE phpl_matchs.id_equipe_dom=dom.id 
                        AND phpl_matchs.id_equipe_ext=ext.id 
                        AND phpl_journees.id_champ='$champ' 
                        AND phpl_journees.numero='$numero' 
                        AND dom.id_club=cldom.id 
                        AND ext.id_club=clext.id 
                        AND phpl_matchs.id_journee=phpl_journees.id 
                        AND cldom.nom!='exempte' 
                        AND clext.nom!='exempte' 
                        ORDER BY date_reelle asc"; 
        $result=mysql_query($query1) or die (mysql_error()); 
?

par zeus » 10 août 2006, 11:15

Au risque de me répéter :roll:
Quant tu executes la requete directement dans PhpMyAdmin, est-ce que tu as des résultats ?

D'une manière générale, il faut toujours tester si la requete a retourné des résultats

par Johan » 10 août 2006, 11:14

Erreur : "Parse error: parse error in d:\easyphp1-8\www\resultats\divisions\consult\fonctions_test.php on line 187"

par Tictac » 10 août 2006, 11:11

apres

$donnee = mysql_fetch_assoc($result) ;

par Johan » 10 août 2006, 11:09

Ou dois je inserer "print_r($donnee)" ?

par Johan » 10 août 2006, 11:05

Déjà ma première erreur je pense est d'avoir mis
												if($donnee['lien_article2']=="") 
         echo "<td align=\"right\"><a href=\"../../../actualite/article_handball.php?newsid=$row[lien_article2]\" target=\"_parent\"><img border='1' src='../../../design/18_news.gif' ></a></center></td>"; 
parce que je veux que si le champ lien_article est vide, cela n'affiche pas de lien, et une autre image. non ?

par Tictac » 10 août 2006, 11:05

que te donne un print_r($donnee) ?

par Johan » 10 août 2006, 11:03

Voici le code :
        // cellule d'affichage des derniers résultats
        $color=0;
        $query1="SELECT cldom.nom as cldom, clext.nom as clext, phpl_matchs.buts_dom, phpl_matchs.buts_ext,
                        phpl_journees.date_prevue, cldom.id as cliddom, 
clext.id as clidext, date_reelle,
                        dom.id as eqdom, ext.id as eqext, 
phpl_matchs.id as id_match, phpl_matchs.lien_article as lien_article2, phpl_journees.id_champ as champ
                FROM phpl_equipes as dom, phpl_equipes as ext, 
phpl_matchs, phpl_journees,
                     phpl_clubs as cldom, phpl_clubs as clext
                WHERE phpl_matchs.id_equipe_dom=dom.id
                        AND phpl_matchs.id_equipe_ext=ext.id
                        AND phpl_journees.id_champ='$champ'
                        AND phpl_journees.numero='$numero'
                        AND dom.id_club=cldom.id
                        AND ext.id_club=clext.id
                        AND phpl_matchs.id_journee=phpl_journees.id
                        AND cldom.nom!='exempte'
                        AND clext.nom!='exempte'
                        ORDER BY date_reelle asc";
        $result=mysql_query($query1) or die (mysql_error());

                		// on fait une boucle qui va faire un tour pour chaque enregistrement
$donnee = mysql_fetch_assoc($result);

				
                echo "<td align=\"right\" width=\"45%\"><a href=\"#\" 
onclick=\"window.open('../../../resultats/divisions/consult/club.php?id_clubs=$row[cliddom]
&champ=$row[champ]','Fichematch','toolbar=0,location=0,directories=0,status=0,
scrollbars=1,resizable=0,copyhistory=0,menuBar=0,width=400,height=350');return
 false;\">".$DebMarqueur1.$clubs_nom.$FinMarqueur1." </a></td><td 
align=\"center\"><a 
href=\"../../../../../resultats/divisions/consult/match.php?id_match=$row[id_match]\"
 target=\"_parent\">".$domproba." - ".$extproba."</a></td><td 
align=\"left\" width=\"35%\"><a href=\"#\" 
onclick=\"window.open('../../../resultats/divisions/consult/club.php?id_clubs=$row[clidext]
&champ=$row[champ]','Fichematch','toolbar=0,location=0,directories=0,status=0,
scrollbars=1,resizable=0,copyhistory=0,menuBar=0,width=400,height=350');return
 false;\">".$DebMarqueur2.$clubs_nom1.$FinMarqueur2." </a></td>";

				
								
												if($donnee['lien_article2']=="") 
         echo "<td align=\"right\"><a href=\"../../../actualite/article_handball.php?newsid=$row[lien_article2]\" 
target=\"_parent\"><img border='1' src='../../../design/18_news.gif' 
></a></center></td>"; 

else {
         echo "<td align=\"right\"><img border='1' src='../../../design/18_blank.gif' width='10' height='10'></center></td>"; 
 }
voilà désolé c'est un peu long :)

par Johan » 10 août 2006, 11:00

je viens d'envoyer la page sur mon serveur, voici le résultat : http://www.chti-handball.com/resultats/ ... &numero=26

En fait ce que j'ai fais c'est ajouter une colonne après chaque équipe extérieur et donc j'ai ajouté ce code
												if($donnee['lien_article2']=="") 
         echo "<td align=\"right\"><a href=\"../../../actualite/article_handball.php?newsid=$row[lien_article2]\" 
target=\"_parent\"><img border='1' src='../../../design/18_news.gif' 
></a></center></td>"; 

else {
         echo "<td align=\"right\"><img border='1' src='../../../design/18_blank.gif' width='10' height='10'></center></td>"; 
dans la dernière colonne...

Sur cette exemple, il n'y a que le match ARRAS - ROUEN qui a un article en cliquant sur la petite image ; les autres matches ont dans la BDD le champ "lien_article" vierge mais il y a quand même l'image qui s'affiche avec un lien ''NULL''

Je pense que là tu vois déjà un peu plus ce que je veux faire ?[/code]

par zeus » 10 août 2006, 10:59

Normalement, oui ... mais il faudrait voir le code depuis la récupération des données jusqu'a leur utilisation pour confirmer cette affirmation ;)