Vous n'êtes pas identifié(e).
Pages : 1
mais non, comme dit précédemment il semble que le problème vient de la mauvaise interprétation du serveur du fait que le formulaire est dans la balise php (un problème de syntaxe ou de configuration du serveur...d'où vos réflexions justifiées sur le fait que free et orange c'est pas terrible) donc si je sors le formulaire du script et intègre le script dans le formulaire, j'imagine que le serveur n'aura plus ce travail d'interprétation à faire et donc un résultat plus conforme sera renvoyé. Donc en ce qui me concerne c'est bien résolu. Il ne me reste plus qu'à réécrire le script en tenant compte de tout ça, pour qu'il fonctionne avec $_POST. Bien que le fichier source indique le problème sus mentionné, il fonctionne avec $_GET ce qui explique le fonctionnement de l'affichage (j'ai réécris le script avec Get et non Post pour vérifier vos dires et cela fonctionne d'où mes conclusions).
Donc mes remerciements à vos endroits respectifs ne sont pas volés, mais largement mérités.:cool:
La preuve que vos dernières remarques étaient fort pertinentes regardez par la: http://pharmacieberthelot.free.fr/gardes.php
Il ne me reste plus qu'à tout remettre au propre. Je posterai le script quand fini pour servir d'exemple à d'autres qui rencontreraient le même problème donc je confirme :
C'EST RESOLU ! ! !
MERCI A TOUS.
Super je crois avoir compris l'origine du problème puisque bien que j'ai écrit depuis le début method="post" le fichier source dit autre chose. Donc je vais extraire le formulaire de la balise php et integrer le php dont j'ai besoin dans le formulaire afin que l'interprétation soit correcte.
Avant de le faire je devrais avoir confirmation par la méthode proposée par Alnoss (2e solution). Ce que Sergnal propose est aussi intéressant, en fait j'avais déjà essayer l' echo de $_Post qui ne renvoyait rien et je pense que el var_dump sera vide aussi.
En tout cas un GRAND MERCI à tous pour vos excellentes idées. Je suis à présent sûr que mon prochain post sera pour vous certifier que vous êtes tous des pros!
Encore merci à chacun de vous: Alnoss, Sergnal, JC, Pierrot et XTG.
en tenant compte de toutes vos remarques...cela done:
résultat.... pareil le début est ok et l'affichage de la 2eme partie ne donne rien, alors résolu ?
Pourtant :
Après ....
Ou alors c'est peut-être la rédaction de mon formulaire qui pose problème? Une idée sur la question?
EN fait free me sert de site de test, car j'ai un compte premium chez orange mais les test effectués avec mon script donnent les mêmes (absences) de résultats...
J'ai mis en ligne les modifs que tu proposes (Pierrot; Merci au passage de ta collaboration!) toujours aucun résultat (voir le lien suivant) :
http://pharmacieberthelot.free.fr/gardes.php
ce qui m'étonne c'est que ce programme est relativement simple et pourtant nombreux sont ceux qui sèchent sur l'origine du problème ( je me suis inscrit sur d'autres forums et les solutions apportées n'ont rien fait).
Ce que je me dit c'est que si le programme fonctionne sur un serveur local sans probleme c'est l'origine du pbm doit etre la configuration du serveur de free qui pose des pbms mais avec quoi je ne sais pas!
Vous avez peut-être des idées?
Pas de résultat sur le site distant rien ne s'affiche (voir lien http plus haut)
j'ai modifié cette partie en la simplifiant pour donner ceci:
$choix = isset($_POST['ord'])? $_POST['ord'] : '';
if ($choix) {
$resultat2=mysql_query("SELECT Pharmacies,Adresse,Ville,Cp,Numtel,DATE_FORMAT(Dates,'%d/%m/%Y') AS Dates FROM gardes_2010 WHERE ID='mysql_real_escape_string($choix)'") or die ("Requête non executée.".mysql_error());
$ligne2=mysql_fetch_array($resultat2);
if ($resultat2) {
echo "<br>";
echo "<br>";
echo '<b>La Pharmacie de garde Le : </b>'.$ligne2['Dates'].'<br>';
echo "<br>";
echo '<b>Est la Pharmacie : </b>'.$ligne2['Pharmacies'] .'<br>';
echo "<br>";
echo '<b>Elle se situe à l\'adresse suivante : </b>'.$ligne2['Adresse'].'<br>';
echo "<br>";
echo '<b>Dans la ville de(du) : </b>'.$ligne2['Ville'].'<br>';
echo "<br>";
echo '<b>Dont le code Postal est le suivant : </b>'.$ligne2['Cp'].'<br>';
echo "<br>";
echo '<b>Vous pouvez la joindre au : </b>'.$ligne2['Numtel'] .'<br>';
echo "<br>";
echo "<br>";
}
}
mysql_close($connexion);
?>
J'avais bien compris et je l'ai testé sur les 2 (wamp et mon site distant) le résultat est bien celui que j'ai décrit plus haut et sur le site distant ...toujours rien.
JC j'ai proposé ta correction à mon script, sur mon serveur locale il me renvoi requête non excutée. je remet " ' " à la place des guillemets proposés et tout refonctionne normalement.
j'ai corrigé en tenant compte des remarques ci-dessus (merci au passage ) mais toujours pas de changement fonctionne correctement sur wamp server et pas sur le site distant.
Voilà j'ai retravaillé le script en le simplifiant un peu. mais toujours pareil fonctionne sous Wamp server mais pas sur mon site...
if ($resultat) {
echo '<p>Choisissez une date de garde:</p>';
echo"<form name='form1' action='http://localhost/Test/essai.php' method='POST'>";
echo '<select name="ID" id="ID">';
echo '<OPTION VALUE=0>Choisissez</OPTION>';
while ($ligne=mysql_fetch_array($resultat))
{
echo '<option value="'.$ligne[ID].'" >'.$ligne[Dates].'</option>';
}
echo '</select>';
echo '<input type="submit" value="Afficher" name="go">';
echo '</form>';
}
$choix = isset($_POST['ID'])? $_POST['ID'] : '';
$fin=$_POST['ID'];
$resultat2 = mysql_query('Select *, DATE_FORMAT(Dates,\'%d/%m/%Y\') AS Dates from gardes_2010
where ID='.$fin.'') or die ("Requête non executée.");
$ligne2=mysql_fetch_array($resultat2);
if ($choix) {
echo "<br>";
echo "<br>";
echo '<b>La Pharmacie de garde Le : </b>'.$ligne2[Dates].'<br>';
echo "<br>";
echo '<b>Est la Pharmacie : </b>'.$ligne2[Pharmacies] .'<br>';
echo "<br>";
echo '<b>Elle se situe à l\'adresse suivante : </b>'.$ligne2[Adresse].'<br>';
echo "<br>";
echo '<b>Dans la ville de(du) : </b>'.$ligne2[Ville].'<br>';
echo "<br>";
echo '<b>Dont le code Postal est le suivant : </b>'.$ligne2[Cp].'<br>';
echo "<br>";
echo '<b>Vous pouvez la joindre au : </b>'.$ligne2[Numtel] .'<br>';
echo "<br>";
echo "<br>";
}
mysql_close($connexion);
?>
Voici l'adresse du site avec la page qui ne répond pas : http://pharmacieberthelot.free.fr/gardes.php
Si vous avez des idées....
Merci pour toutes ces infos je retourne donc étudier mon code pour l'améliorer, ceci dit entre les quotes et les guillemets ce n'est pas évident car j'ai bêtement recopier le code de moogli et le serveur me retournait des erreurs "parse" j'ai donc fait un certains nombres d'essai à taton our essayer de trouver l'erreur la seule façon que j'ai eu de sortir de là c'est de mettre servit des guillemets et des quotes, un peu comme si seuls les guillemets pouvait les encadrer.(comparez nos lignes de codes) .J'ai essayer de n'utiliser que les quotes mais j'ai toujours des erreurs "parse".
Sinon comment fait-on pour tester la variable $_POST. Soyez indulgent et patient envers votre serviteur (je suis un vrai débutant).
Encore merci de votre attention .
Oui le tableau existe bel et bien et d'ailleurs l'affichage des dates est issu de ce tableau (La liste déroulante est fonctionnelle).
Comme tu m'as mis le doute j'ai été vérifier et la table est ok.
Et que pensez-vous de cette possibilité ?
Utiliser le resultat de la premiere requête selectionnée puis injecter cette valeur de l'ID dans le résultat de la seconde....
$ligne2=mysql_fetch_array($resultat2);
J'ai donc appliquer les corrections proposées par "moogli" (merci au passage pour les identifiants connexions quescon peut etre tete en l'air parfois) c'est à dire :
$resultat2 = mysql_query('Select Pharmacies,Adresse,Ville,Cp,Numtel, DATE_FORMAT(Dates,\'%d/%m/%Y\') AS Dates from gardes_2010 where ID='.mysql_real_escape_string($_POST['ID']).'') or die ("Requête non executée.");
$ligne2=mysql_fetch_array($resultat2);
Sur Wamp (serveur local) tout fonctionne super les résultats sont affichés mais une fois sur le serveur dus site distant retour à la case départ ie aucun affichage des résulats seul la liste déroulante des dates de gardes est fonctionnel.
Sinon encore merci pour tout vos conseils
J'y avais pensé et je l'ai fait mais le resultat est identique. pas de resultat. voici le code :
echo '<p>Choisissez une date de garde:</p>';
echo"<form name='form1' action='gardes.php' method='POST'>";
echo '<select name="ID" id="ID">';
echo '<OPTION VALUE=0>Choisissez</OPTION>';
$resultat=mysql_query("select ID, DATE_FORMAT(Dates,'%d/%m/%Y') AS Dates from gardes_2010 order by ID") or die ("Requête non executée.");
while ($ligne=mysql_fetch_array($resultat))
{
echo '<option value="'.$ligne[ID].'" >'.$ligne[Dates].'</option>';
}
echo '</select>';
echo '<input type="submit" value="Afficher" name="go">';
echo '</form>';
if(!isset($_POST['ID'])){
exit;
}
//Les lignes suivantes affichent le détail d'un adhérent
// si l'utilisateur en a choisi un
$resultat2 = mysql_query("Select *, DATE_FORMAT(Dates,'%d/%m/%Y') AS Dates
from gardes_2010 where ID=$_POST[ID]") or die ("Requête non executée.");
$ligne2=mysql_fetch_array($resultat2);
echo "<br>";
echo "<br>";
echo '<b>La Pharmacie de garde Le : </b>'.$ligne2['Dates'].'<br>';
echo "<br>";
echo '<b>Est la Pharmacie : </b>'.$ligne2['Pharmacies'] .'<br>';
echo "<br>";
echo '<b>Elle se situe à l\'adresse suivante : </b>'.$ligne2['Adresse'].'<br>';
echo "<br>";
echo '<b>Dans la ville de(du) : </b>'.$ligne2['Ville'].'<br>';
echo "<br>";
echo '<b>Dont le code Postal est le suivant : </b>'.$ligne2['Cp'].'<br>';
echo "<br>";
echo '<b>Vous pouvez la joindre au : </b>'.$ligne2['Numtel'] .'<br>';
echo "<br>";
echo "<br>";
mysql_close($connexion);
?>
Encore merci
Edit modo : j'ai supprimer les access mysql dans les premières lignes
Après les modifications apportés par JC, résultats sur wamp nickel, mais sur mon site internet rien il ne renvoi aucun résultat.:/
Merci JC pour tes explications, bien entendu que mon code est une vrai passoire et manque de rigueur étant donné que je suis débutant et autodidacte, mais je compte bien m'améliorer avec des conseils comme les tiens.
Ceci dit comment expliques-tu que ce code fonctionne parfaitement sur wamp en local et pas sur le serveur de mon site? je n'y comprends rien. Sans la ligne de l'exit j'ai l'erreur et avec la ligne il me renvoit parfaitement le résultat escompté!!
Je m'en vais de ce pas appliquer les changement préconisés dans mon code...
Encore merci pour les tuyaux.
Je l'ai enlever pour voir ce que cela donne, mais le résultat est identique aucun affichage sur la page web.
Lors du test sur Wampserver l'enlèvement de ces lignes contenant la fonction exit voici l'erreur affichée :
Notice: Undefined index: ID in C:\wamp\www\Test\testdates.php on line 33
Requête non executée.
Une idée?
tu a raison pour le php.ini l'affichage des erreurs est désactivé.
Néanmoins pour le reste je ne suis que débutant et par conséquent je n'ai pas compris grand chose aux infos que tu m'as délivré.
encore merci de ton aide
J'ai essayer mais toujours pas de résultat !!
Néanmoins merçi d'avoir essayer.
Bonjour à tous, je suis débutant en php et en vue d'afficher des dates de garde pour les pharmacie de mon quartier j'ai fait ce petit programme en php que j'ai testé sous wampserver et il fonctionne parfaitement, mais une fois transféré sur le serveur orange, il affiche bien les différentes dates des gardes, mais ne m'affiche plus les résultats .:(..j'ai essayé de comprendre d'où venait cet absence de résultats, et je crois que le probleme doit se situé au niveau de la bouche " if isset ", mais je cale.:/.Alors si l'un de vous pouvait m'aider je le(s) remercie d'avance.:)
echo '<p>Choisissez une date de garde:</p>';
echo"<form name='form1' action='$_SERVER[PHP_SELF]' method='POST'>";
echo '<select name="ID" id="ID">';
echo '<OPTION VALUE=0>Choisissez</OPTION>';
$resultat=mysql_query("select ID, DATE_FORMAT(Dates,'%d/%m/%Y') AS Dates from gardes_2010 order by ID") or die ("Requête non executée.");
while ($ligne=mysql_fetch_array($resultat))
{
echo '<option value='.$ligne[ID].'>'.$ligne[Dates].'</option>';
}
echo '</select>';
echo '<input type="submit" value="Afficher" name="go">';
echo '</form>';
if(!isset($_POST['ID'])){
exit;
}
//Les lignes suivantes affichent le détail d'un adhérent
// si l'utilisateur en a choisi un
$resultat2 = mysql_query("Select *, DATE_FORMAT(Dates,'%d/%m/%Y') AS Dates
from gardes_2010 where ID=$_POST[ID]") or die ("Requête non executée.");
$ligne2=mysql_fetch_array($resultat2);
echo "<br>";
echo "<br>";
echo '<b>La Pharmacie de garde Le : </b>'.$ligne2['Dates'].'<br>';
echo "<br>";
echo '<b>Est la Pharmacie : </b>'.$ligne2['Pharmacies'] .'<br>';
echo "<br>";
echo '<b>Elle se situe à l\'adresse suivante : </b>'.$ligne2['Adresse'].'<br>';
echo "<br>";
echo '<b>Dans la ville de(du) : </b>'.$ligne2['Ville'].'<br>';
echo "<br>";
echo '<b>Dont le code Postal est le suivant : </b>'.$ligne2['Cp'].'<br>';
echo "<br>";
echo '<b>Vous pouvez la joindre au : </b>'.$ligne2['Numtel'] .'<br>';
echo "<br>";
echo "<br>";
mysql_close($connexion);
?>
Pages : 1