[php] problème au niveau de ma requete SQL
Résolu
maudus
Messages postés
41
Date d'inscription
Statut
Membre
Dernière intervention
-
maudus Messages postés 41 Date d'inscription Statut Membre Dernière intervention -
maudus Messages postés 41 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
Je suis débutante en php et pour le site internet que je suis en train de créer, j'ai trouvé un script sur internet qui permet de créer un petit calendrier qui affiche les évènements contenus dans ma base de données. J'ai donc adapté le code à mon site, qui se divise en 4 pages distinctes :
- agenda.php qui affiche le calendrier
- calendar.php qui est le script du calendrier
- connexion.php pour la connexion à la bdd
- event.php qui affiche les évènements quand on clique sur les différentes dates.
Quand je fais le test en local mon calendrier s'affiche bien mais quand je veux afficher un évènement, il me met le message d'erreur suivant :
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\program files\easyphp1-8\www\*******\event.php on line 22
Si vous pouviez m'aider à trouver ce qui ne va pas ce serait super car ça fait plusieurs jours que je suis dessus et je sèche complètement... Merci d'avance pour votre aide
je vous donne donc le code de event.php :
et également le code de calendar.php :
Je suis débutante en php et pour le site internet que je suis en train de créer, j'ai trouvé un script sur internet qui permet de créer un petit calendrier qui affiche les évènements contenus dans ma base de données. J'ai donc adapté le code à mon site, qui se divise en 4 pages distinctes :
- agenda.php qui affiche le calendrier
- calendar.php qui est le script du calendrier
- connexion.php pour la connexion à la bdd
- event.php qui affiche les évènements quand on clique sur les différentes dates.
Quand je fais le test en local mon calendrier s'affiche bien mais quand je veux afficher un évènement, il me met le message d'erreur suivant :
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\program files\easyphp1-8\www\*******\event.php on line 22
Si vous pouviez m'aider à trouver ce qui ne va pas ce serait super car ça fait plusieurs jours que je suis dessus et je sèche complètement... Merci d'avance pour votre aide
je vous donne donc le code de event.php :
<?php include ("connexion.php"); function mysql_date_fr($champ) { $annee=substr($champ,0,4); $mois=substr($champ,5,2); $jour=substr($champ,8,2); return $jour."-".$mois."-".$annee; } $ref_event = $_GET["ref"]; $result = mysql_query("SELECT * FROM events where idevent=\"$ref_event\" "); while ($val = mysql_fetch_array($result)) { $idevent = $val["idevent"]; $date_event = mysql_date_fr($val["date_event"]); $desc_event = $val["desc_event"]; echo "le <b class=\"title2\">".$date_event."</b><br /><br />"; echo "<p class=\"text4\">".$desc_event."</p>"; } ?>
et également le code de calendar.php :
<?php include ("connexion.php"); function mysql_date($champ) { $annee=substr($champ,0,4); $mois=substr($champ,5,2); $jour=substr($champ,8,2); return $jour; } function premier_jour_du_mois($mois,$annee) { $intPremierJour = date("w",mktime(0,0,0,$mois,1,$annee)); if($intPremierJour == 0) $intPremierJour = 7; // si c'est un dimanche return $intPremierJour-1; } function nbjour($m,$a) { if(($a%4)==0) { $fev=29; } else { $fev=28; } $mois = array(0,31,$fev,31,30,31,30,31,31,30,31,30,31); for($x=1;$x<13;$x++) { if($m == $x) { return $mois[$x]; } } } function lister_table() { $table="events"; $dates = array(); $query = "SELECT * FROM $table"; $result = mysql_query($query); while ($val = mysql_fetch_array($result)) { $date_event =mysql_date($val["date_event"]); echo $date_event; } } function afficheMois($mois, $annee) { $tab = getdate(); $jourc = $tab["mday"]; $anneec = $tab["year"]; $moisc = $tab["mon"]; $labelMois = array(" ","Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", "Septembre", "Octobre", "Novembre", "Décembre"); $labelJour = array("Lu.","Ma.","Me.","Je.","Ve.","Sa.","Di."); $nbJours=nbjour($mois,$annee); $css = "text"; echo "<table border=0>\n"; $mp=$mois+1; $mm=$mois-1; $ap=$annee+1; $am=$annee-1; $acp=$annee; $acm=$annee; if($mp==13) { $mp=1; $acp=$acp+1; if($acp==2038) { $acp=1980; } } if($mm==0) { $mm=12; $acm=$acm-1; if($acm<1980) { $acm=2037; } } if($ap>2037){$ap=1980;} if($am<1980){$am=2037;} echo "<tr>". //modifier les liens ci-dessous avec votre chemin "<td colspan=\"4\" class=\"$css\"><a href=\"http://localhost/54agauche/agenda.php?mois=$mm&annee=$acm\"><img src=\"images/arrow_left.gif\" border=\"0\">". "</a> $labelMois[$mois] <a href=\"http://localhost/54agauche/agenda.php?mois=$mp&annee=$acp\"><img src=\"images/arrow_right.gif\" border=\"0\"></a></td>"; echo "<td colspan=\"3\" align=\"right\" class=\"$css\"><a href=\"http://localhost/54agauche/agenda.php?mois=$mois&annee=$am\"><img src=\"images/arrow_left.gif\" border=\"0\"> ". "</a>$annee<a href=\"http://localhost/54agauche/agenda.php?mois=$mois&annee=$ap\"> <img src=\"images/arrow_right.gif\" border=\"0\"></a> </td></tr>"; echo "<tr>"; for ($i = 0; $i < 7; $i++) { echo "<td class=\"$css\">$labelJour[$i]</td>"; } echo "</tr>\n"; echo "<tr>"; for ($i = 0; $i < premier_jour_du_mois($mois,$annee); $i++) { echo "<td></td>"; } /********************************/ for ($i = 1; $i <= $nbJours; $i++) { if (($i-1 + premier_jour_du_mois($mois,$annee)) % 7 == 0) { echo "</tr>\n<tr>";// Retour à la ligne chaque Lundi } if(($i-1==$jourc-1)&&($annee==$anneec)&&($mois==$moisc)) { $cssClass = "datejour"; $htmltext = "<td align=\"right\" class=\"$cssClass\">$i</td>"; } else { $cssClass = "date"; $htmltext = "<td align=\"right\" class=\"$cssClass\">$i</td>"; } /*****************/ $debut_mois = date("Y-m-d", mktime(0,0,0,$mois,1,$annee)); $fin_mois = date("Y-m-d", mktime(0,0,0,$mois,$nbJours,$annee)); $query = "SELECT *FROM events where date_event >='$debut_mois' and date_event <='$fin_mois' ORDER BY date_event"; $result = mysql_query($query); while ($val = mysql_fetch_array($result)) { $date_event = mysql_date($val["date_event"]); $idevent = $val["idevent"]; if($i==$date_event) { $cssClass = "date_event"; $htmltext = "<td align=\"right\" class=\"$cssClass\"><a href=event.php?ref=$idevent\" class=\"lien\" title=\"date événement\">$i</a></td>"; } } echo $htmltext; } /******************************/ echo "</tr>"; echo "</table>"; } ?>
A voir également:
- [php] problème au niveau de ma requete SQL
- Easy php - Télécharger - Divers Web & Internet
- Mise a niveau windows 7 vers 10 - Accueil - Mise à jour
- Clé de mise à niveau windows 7 gratuit - Guide
- Test afpa niveau 5 pdf ✓ - Forum Études / Formation High-Tech
- Expert php pinterest - Télécharger - Langages
4 réponses
Salut,
Il est probable que ta requete n'est pas bonne
ajoute un affichage de l'erreur :
Cela devrait te renseigner.
ec
Il est probable que ta requete n'est pas bonne
ajoute un affichage de l'erreur :
$result = mysql_query("SELECT * FROM events where idevent=\"$ref_event\" "); echo mysql_error(); while ($val = mysql_fetch_array($result))
Cela devrait te renseigner.
ec
j'ai fait ce que tu m'a dit et voilà l'erreur affichée :
Erreur de syntaxe près de '"38""' à la ligne 1
(sachant que 38 est la l'identifiant de l'évènement sur lequel j'ai cliqué)
donc ca ne m'avance pas beaucoup...
Erreur de syntaxe près de '"38""' à la ligne 1
(sachant que 38 est la l'identifiant de l'évènement sur lequel j'ai cliqué)
donc ca ne m'avance pas beaucoup...
Salut,
Moi cela me renseigne... Il me semble voir des guillemets de trop...
Et en regardant le code au bon endroit je vois
il ne faudrait pas plutot
????
ec
Moi cela me renseigne... Il me semble voir des guillemets de trop...
Et en regardant le code au bon endroit je vois
<a href=event.php?ref=$idevent\"
il ne faudrait pas plutot
<a href=\"event.php?ref=$idevent\"
????
ec