Problème php

Résolu/Fermé
Signaler
Messages postés
1726
Date d'inscription
dimanche 20 mai 2007
Statut
Membre
Dernière intervention
19 décembre 2015
-
Messages postés
1726
Date d'inscription
dimanche 20 mai 2007
Statut
Membre
Dernière intervention
19 décembre 2015
-
Bonjour,

En débutant mon apprentissage du PHP, avec ce site : https://openclassrooms.com/fr/courses/918836-concevez-votre-site-web-avec-php-et-mysql/911847-les-variables#ss_part_4 , je rencontre un problème que voici : dans notepad++, je tape ceci :


<a href="https://www.om.fr/fr?jour=11&amp;mois=08&amp;annee=1993"></a>

Bonjour !


Vous êtes né le <?php echo $_GET['jour']; ?>, <?php echo $_GET['mois']; ?>, <?php echo $_GET['annee']; ?>.


<p>Faites un autre essai, <a href="appel.php">cliquez ici</a> pour revenir à appel.php</p>


Et j'obtiens ceci :

Bonjour ! Vous êtes né le
Notice: Undefined index: jour in C:\wamp\www\TEST\appel.php on line 6
,
Notice: Undefined index: mois in C:\wamp\www\TEST\appel.php on line 6
,
Notice: Undefined index: annee in C:\wamp\www\TEST\appel.php on line 6
.

Faites un autre essai, cliquez ici pour revenir à appel.php



Pour vous me dire pourquoi et comment éviter ce genre de soucis ? Merci :)

8 réponses

Messages postés
18143
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 214
<a href="appel.php?jour=11&mois=08&annee=1993">cliquez ici</a>

avec ce lien, ca devrait mieux marcher
0
Messages postés
1726
Date d'inscription
dimanche 20 mai 2007
Statut
Membre
Dernière intervention
19 décembre 2015
265
J'obtiens ceci :

cliquez ici Bonjour ! Vous êtes né le
Notice: Undefined index: jour in C:\wamp\www\TEST\appel.php on line 6
,
Notice: Undefined index: mois in C:\wamp\www\TEST\appel.php on line 6
,
Notice: Undefined index: annee in C:\wamp\www\TEST\appel.php on line 6
.

Faites un autre essai, cliquez ici pour revenir à appel.php

Quand je clique sur cliquez ici, j'obtiens bien :

cliquez ici Bonjour ! Vous êtes né le 11, 08, 1993.

Faites un autre essai, cliquez ici pour revenir à appel.php

Mais pourquoi y a-t-il les messages d'erreur sur la première page ?
Merci!
0
Messages postés
18143
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 214
<?
if (isset($_GET['jour']))
{ ?>
Vous êtes né le <?php echo $_GET['jour']; ?>, <?php echo $_GET['mois']; ?>, <?php echo $_GET['annee']; ?>.
<? }
else
echo "T'as pas rentré les paramètres dans l'url";

?>
0
Messages postés
1726
Date d'inscription
dimanche 20 mai 2007
Statut
Membre
Dernière intervention
19 décembre 2015
265
Tu peux m'expliquer à quoi ça sert ? (i am a big noob ^^)
0

Normall il faut mettre le code PHP pour se connecté a la base de donnée, Je pense...
0
Messages postés
18143
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 214
dans ta barre d'adresse, tu demandes le fichier php:
appel.php?jour=11&mois=08&annee=1993

=> c'est le fichier appel.php, et tu lui passes les paramètres jour, mois et année. (paramètres qui ioront dans le tableau $_GET
donc, dans ton script php tu fais afficher ces paramètres.

maintenant, toi, quand tu arrives la première fois sur ta page, tu as dans la barre d'adresse:
appel.php
sans paramètres. Du coup, quand tu lui dit d'aller prendre $_GET['jour'] il te dis "Undefined index": il a bien trouvé GET, mais il a pas trouvé la ligne 'jour' dedans...

avec la fonction isset (ou isempty), tu peux voir si $_GET['jour'] existe ou pas... et ainsi éviter l'erreur
0
Messages postés
1726
Date d'inscription
dimanche 20 mai 2007
Statut
Membre
Dernière intervention
19 décembre 2015
265
Ah, et donc il faudrait le faire en deux pages, si par exemple je programmait un site ?
Et donc pour les masquer, il faut juste mettre les fonctions isset ?
0
Messages postés
18143
Date d'inscription
mercredi 4 juin 2008
Statut
Contributeur
Dernière intervention
28 avril 2014
3 214
si tu faisais un site, il faudrait que tes liens soeint toujours paramétrés
le isset permet de détecter si la variable existe ou pas. Donc si elle existe, tu mets le code php qui l'utillise, sinon tu mets un message d'erreur par exemple

généralement, ce genre de page est appellée par un formulaire HTML
0
Messages postés
1726
Date d'inscription
dimanche 20 mai 2007
Statut
Membre
Dernière intervention
19 décembre 2015
265
D'accord! Et bien merci ! :)
0