Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & MySQL
PHP & MySQL Forum d'entraide sur les fonctions MySQL avec PHP. Avant de poster -> FAQ MySQL, Cours MySQL et Sources MySQL. Pour les questions concernant le moteur MySQL plutôt que les fonctions PHP, merci d'utiliser le forum MySQL.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 21/01/2011, 19h51   #1
Invité de passage
 
Inscription : janvier 2011
Messages : 1
Détails du profil
Informations forums :
Inscription : janvier 2011
Messages : 1
Points : 0
Points : 0
Par défaut Problème changement d'année sur un calendrier - requète SQL

Bonsoir,

Je suis actuellement en train d'essayer de créer un calendrier en php/sql pour un projet d'année dans mon école.

J'ai réussi à récupérer les mois et à afficher les articles créés lors du mois sélectionné, malheureusement, avec le changement d'année, tout les posts de 2010 ne sont plus sélectionnés par le calendrier, seuls ceux de février marchent désormais.

Pourriez vous m'aider à comprendre ce qui me fait défaut ?

Le code php :
Code php :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
echo "</div><div id='news_contenu'>"; 
	$back = mysql_query('SELECT * FROM news ORDER BY id_news DESC');
	$retour = mysql_fetch_array($back);
	$date = $retour['date'];
	$tab_date = explode(' ', $date);
	$tab_dmy = explode('-', $tab_date[0]);
 
if ($_GET['id']==$tab_dmy[1]){
	$back = mysql_query('SELECT * FROM news WHERE MONTH(date) = "'. $tab_dmy[1] .'" ORDER BY id_news DESC');
	while($retour = mysql_fetch_array($back)){
	$date = $retour['date'];
	$suffix = " à";
	$tab_month = array(1=>"Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Aout", "Septembre", "Octobre", "Novembre", "Décembre");
	$tab_day = array("Dimanche", "Lundi", "Mardi", "Mercredi", "Jeudi", "Vendredi", "Samedi");
	$tab_date = explode(' ', $date);
	$date_hour = explode(':', $tab_date[1]);
	$tab_dmy = explode('-', $tab_date[0]);
	$day = date("w", mktime(0, 0, 0, $tab_dmy[1], $tab_dmy[2], $tab_dmy[0]));
	$date = "$tab_day[$day] " . "$tab_dmy[2] ";
	$date .= $tab_month[$tab_dmy[1]] . " $tab_dmy[0]" . $suffix . " $date_hour[0]h " . "$date_hour[1]min";
 
		echo "<div class='news'><div class='news_top'></div><h3>".$retour['titre']."</h3>";
		echo "<p>".nl2br($retour['texte'])."</p>";
		echo "<p class='date'>Publié le " ; 
		echo $date . "</p><br />";
		echo "<p class='lien'><a href='news.php?id=". $retour['id_news'] ."'>En savoir plus</a></p>";
		echo "<div class='news_bottom'></div></div>";
	}
}

Le code Html :
Code html :
1
2
3
4
5
6
7
8
9
10
11
12
<ul>
    <li <?php if($month=="0"){echo "class='active'";} ?>><a href="index.php?id=0">Derniers Ajouts</a></li>
</ul>
 
<table>
<tr><td <?php if($month=="01"){echo "class='active'";} ?>><a href="index.php?id=01">Janvier</a></td><td <?php if($month=="07"){echo "class='active'";} ?>><a href="index.php?id=07">Juillet</a></td></tr>
<tr><td <?php if($month=="02"){echo "class='active'";} ?>><a href="index.php?id=02">Février</a></td><td <?php if($month=="08"){echo "class='active'";} ?>><a href="index.php?id=08">Aout</a></td></tr>
<tr><td <?php if($month=="03"){echo "class='active'";} ?>><a href="index.php?id=03">Mars</a></td><td <?php if($month=="09"){echo "class='active'";} ?>><a href="index.php?id=09">Septembre</a></td></tr>
<tr><td <?php if($month=="04"){echo "class='active'";} ?>><a href="index.php?id=04">Avril</a></td><td <?php if($month=="10"){echo "class='active'";} ?>><a href="index.php?id=10">Octobre</a></td></tr>
<tr><td <?php if($month=="05"){echo "class='active'";} ?>><a href="index.php?id=05">Mai</a></td><td <?php if($month=="11"){echo "class='active'";} ?>><a href="index.php?id=11">Novembre</a></td></tr>
<tr><td <?php if($month=="06"){echo "class='active'";} ?>><a href="index.php?id=06">Juin</a></td><td <?php if($month=="12"){echo "class='active'";} ?>><a href="index.php?id=12">Décembre</a></td></tr>
</table>

Merci d'avance de votre aide.
nightwind est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/01/2011, 08h27   #2
Rédacteur/Modérateur
 
Avatar de MaitrePylos
 
Homme Gérard Ernaelsten
DBA & Dev PHP
Inscription : juin 2005
Messages : 3 174
Détails du profil
Informations personnelles :
Nom : Homme Gérard Ernaelsten
Âge : 39
Localisation : Belgique

Informations professionnelles :
Activité : DBA & Dev PHP
Secteur : Service public

Informations forums :
Inscription : juin 2005
Messages : 3 174
Points : 6 460
Points : 6 460
Rapidement en passant comme ça

Code :
1
2
3
4
5
6
7
 
echo "</div><div id='news_contenu'>"; 
	$back = mysql_query('SELECT * FROM news ORDER BY id_news DESC');
	$retour = mysql_fetch_array($back);
	$date = $retour['date'];
	$tab_date = explode(' ', $date);
	$tab_dmy = explode('-', $tab_date[0]);
tu as une erreur dans $date, vu que tu ne fais pas de while , $retour['date'] vaut un array et non pas une date.

Le code juste en dessous tu fais un while, inspire toi de ce code pour résoudre ton souci ici
MaitrePylos est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 02h30.


 
 
 
 
Partenaires

Hébergement Web