Requete d'affichage sql/php

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 : Requete d'affichage sql/php

Re: Requete d'affichage sql/php

par rouly67 » 25 nov. 2010, 21:03

2. Tu as 0 ou 1 résultat, aucune boucle n'est donc nécessaire.
Ben justement vu qu'avant cela affichait l'evenement du jour, il y avait effectivement 0 ou 1 résultat.
Mais la du coup je veux afficher le prochain event, parmis toutes celles à venir.

Re: Requete d'affichage sql/php

par devlop78 » 25 nov. 2010, 20:51

1. Le for et le while se marchent sur le pied.
2. Tu as 0 ou 1 résultat, aucune boucle n'est donc nécessaire.

$nbEvenement = mysql_num_rows($res);

Si $nbEvenement == 0 alors afficher "Pas de nouveaux éléments"
Sinon, $l = mysql_fetch_array($res) etc

Re: Requete d'affichage sql/php

par rouly67 » 25 nov. 2010, 20:39

ben oui il me semble :
<?php
function affichageAujourdhui()
	{
		$c = connection("base");
		$sql = "select * from evenements where date_evt='".date("Y-m-d")."' limit 1";
		$res = execution($c,$sql);
		$nbEvenement = mysql_num_rows($res);
		
		if($nbEvenement>0)
		{
			for($i=0;$i<$nbEvenement;$i++)
			{
				while($l = mysql_fetch_array($res))
				{
					$presentationGroupe="";
					$sql_asso = "select * from association where id_asso='".$l['organisateur_evt']."'";
					$resAsso = execution($c,$sql_asso);
					$asso = mysql_fetch_array($resAsso);
							
					if($l['groupe_evt']!=null || $l['groupe_evt']!=0)
					{
						$gp = explode("_",$l['groupe_evt']);
						for($i=0;$i<sizeof($gp)-1;$i++)
						{
							if($gp[$i]!="" || $gp[$i]!=null)
							{
								$sg = "select * from groupe where id_groupe=".$gp[$i];
								$rg = mysql_fetch_array(execution($c,$sg));
								$presentationGroupe.=strtoupper($rg['nom_groupe']). " + ";
							}
						}
						if($gp[sizeof($gp)-1]!="" || $gp[sizeof($gp)-1]!=null)
						{
							$ag = "select * from groupe where id_groupe=".$gp[sizeof($gp)-1];
							$rg = mysql_fetch_array(execution($c,$ag));
							$presentationGroupe.=strtoupper($rg['nom_groupe']);
						}
					}
					echo "<p class='titre'>".$l['intitule_evt']."</p>";
					
					if($asso['nom_asso']!=null)
					{
						echo "Organisateur : ".utf8_decode($asso['nom_asso']).'<br /><br />';
					}
					echo"Heure :&nbsp;".$l['heure_evt'];
					
					if($l['prix_evt']!=0 && $l['prix_evt']!=null)
					{
						echo "<br /><br />Prix : ".$l['prix_evt']."&euro;";
					}
					else
					{
						echo "<br /><br />Prix : Prix libre / Gratuit"; 
					}
					if(isset($presentationGroupe))
					{
						echo "<br /><br />Line-up :".$presentationGroupe."";
					}
					
					
					
					if($l['commentaire_evt']!=null)
					{
						echo "<br />Commentaire : ".nl2br($l['commentaire_evt']).'<br />';
					}
					
				}
			}
		}
		else
		{
			echo "<div>aucun &eacute;v&egrave;nement à venir...</div>";
		}
		mysql_close($c);
	}

?>

Re: Requete d'affichage sql/php

par xTG » 25 nov. 2010, 14:43

Es-tu sûr d'avoir utilisé de bonnes valeurs pour ton essai ?
Car je viens de tester sur une table créée pour l'exemple avec un code de récupération et aucun soucis.

Re: Requete d'affichage sql/php

par rouly67 » 25 nov. 2010, 12:14

Merci de votre réponse.
J'ai essayé votre proposition, cela m'affiche toujours la même chose : l'évènement du jour, sinon un message précisant qu'il n'y a rien dans la base.

Re: Requete d'affichage sql/php

par xTG » 25 nov. 2010, 09:44

$sql = "select * from table where date >= '".date("Y-m-d")."' limit 1";
On recherche tous les évènements du jour ou à venir et on ne sélectionne que le premier.

Requete d'affichage sql/php

par rouly67 » 25 nov. 2010, 06:05

Bonjour,

J'ai une petite question concernant une requête en PHP.

J'ai une base de données d'évènements, et je voudrais afficher en page d'accueil de mon site le prochain evenements à venir.
Pour l'instant j'ai une fonction qui affiche l'évènement du jour et "Pas d'évènement" s'il n'y a rien...
function affichageEvent()
	{
		$c = connection("base");
		$sql = "select * from table where date='".date("Y-m-d")."'";
		$res = execution($c,$sql);
		$nbEvent = mysql_num_rows($res);
		
		if($nbEvent>0)
		{
			for($i=0;$i<$nbEvent;$i++)
			{
				while($l = mysql_fetch_array($res))
				{
					$presentation="";
					$sql_asso = "select * from table where id='".$l['organisateur_evt']."'";
					$resAsso = execution($c,$sql_asso);
					$asso = mysql_fetch_array($resAsso);
							
					if($l['groupe_evt']!=null || $l['groupe_evt']!=0)
					{
						$gp = explode("_",$l['groupe_evt']);
						for($i=0;$i<sizeof($gp)-1;$i++)
						{
							if($gp[$i]!="" || $gp[$i]!=null)
							{
								$sg = "select * from table where id=".$gp[$i];
								$rg = mysql_fetch_array(execution($c,$sg));
								$presentation.=strtoupper($rg['nom_groupe']). " + ";
							}
						}
						if($gp[sizeof($gp)-1]!="" || $gp[sizeof($gp)-1]!=null)
						{
							$ag = "select * from table where id=".$gp[sizeof($gp)-1];
							$rg = mysql_fetch_array(execution($c,$ag));
							$presentation.=strtoupper($rg['nom_groupe']);
						}
					}
					
				}
			}
		}
		else
		{
			echo "Pas d'&eacute;v&egrave;nement";
		}
		mysql_close($c);
	}
Pouvez-vous m'aider ?