Requête SQL

Résolu/Fermé
jean.miche Messages postés 90 Date d'inscription samedi 22 août 2009 Statut Membre Dernière intervention 30 mai 2014 - 15 mars 2013 à 16:28
fabrevirgil Messages postés 188 Date d'inscription vendredi 14 janvier 2011 Statut Membre Dernière intervention 26 février 2015 - 16 mars 2013 à 00:49
Bonjour,

J'essaye d'afficher une liste de 2 dates, pour des prochains événements à venir, dans une div.
Ces événements sont stockés dans une BDD appelée 'event' et qui ont les champs 'title' (pour le nom de l'événement) et 'start' (pour la date de début de l'événement).
J'aimerais donc afficher ces dates sous formes de liste (limitée aux deux prochains événements).
Je ne sais pas comment faire ma requête dans mon PHP. Je prends donc vos propositions. Je sais que ça devrait ressembler à quelque chose du genre :
<?php
$sql="SELECT * FROM event WHERE date >= CURRENT_DATE() ORDER BY date LIMIT 2";
$data=mysql_query($sql) or die ("");

while($ligne=mysql_fetch_assoc($data)) { ?>

<ul>
   <li class="date"><?php echo date("d-m-Y", strtotime($ligne["start"])); ?> pour <?php echo $ligne["title"]; ?></li>
</ul>
<?php
}
?>


Ou alors, étant donné que le site fonctione sous Wordpress, utiliser une synthase genre :
$result = $wpdb->get_results("SELECT * FROM wp_aec_event ORDER BY date LIMIT 2");


Merciii d'avance pour votre aide !!!

1 réponse

fabrevirgil Messages postés 188 Date d'inscription vendredi 14 janvier 2011 Statut Membre Dernière intervention 26 février 2015 25
15 mars 2013 à 17:32
$req = mysql_query('SELECT date FROM event ORDER BY date DESC LIMIT 15') or die(mysql_error());
while($data = mysql_fetch_assoc($req))
{
echo .date('d', strtotime($data['NOM_DE_TA_COLONNE'])).';
}


N'oublie pas de corriger ce qui est en gras.
Bonne chance avec ta page !

Donnes des nouvelles !
2
jean.miche Messages postés 90 Date d'inscription samedi 22 août 2009 Statut Membre Dernière intervention 30 mai 2014 1
Modifié par jean.miche le 15/03/2013 à 18:26
Lorsque j'écris cette requête :
<?php 
$req = mysql_query('SELECT start FROM event ORDER BY start DESC LIMIT 15') or die(mysql_error()); 
while($data = mysql_fetch_assoc($req)) 
{ 
echo date('d m Y', strtotime($data['start'])); 
} 
?>


il me renvoie seulement la date,

Comment avoir également le nom de l'événement (title) dans la boucle ?
0
fabrevirgil Messages postés 188 Date d'inscription vendredi 14 janvier 2011 Statut Membre Dernière intervention 26 février 2015 25
15 mars 2013 à 20:30
Entre ton while:
while(){
ici
}

écris echo $data['title'].' est sorti le '.date('d m Y', strtotime($data['start']));
0
jean.miche Messages postés 90 Date d'inscription samedi 22 août 2009 Statut Membre Dernière intervention 30 mai 2014 1
15 mars 2013 à 22:19
ça fonctionne :
<?php
$req = mysql_query('SELECT * FROM event ORDER BY start ASC LIMIT 2') or die(mysql_error());
while($data = mysql_fetch_assoc($req))
{
?>
<ul>
    <li class="date"><?php echo date("d/m/Y", strtotime($data["start"])); ?> à <?php echo $data['title']; ?></li>
</ul>
<?php
}
?>


la requête demande de classer les événements par dates à venir, $data["start"] affiche les dates, et $data["title"] affiche leur nom.

merci mille fois et bon week-end !
0
fabrevirgil Messages postés 188 Date d'inscription vendredi 14 janvier 2011 Statut Membre Dernière intervention 26 février 2015 25
16 mars 2013 à 00:49
De rien ;) !
0