Aide pour .php
Résolu
brioche95
Messages postés
585
Date d'inscription
Statut
Membre
Dernière intervention
-
brioche95 Messages postés 585 Date d'inscription Statut Membre Dernière intervention -
brioche95 Messages postés 585 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je commence tout juste en php... je test un peu faire quelque truc mais là je ne comprend pas ou est mon error:
deux pages .php appel.php et cible.php
appel.php:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Notre première instruction : echo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<p>
Bonjours,<br />
Veuillez taper votre age :
</p>
<form action="cible.php" method="post">
<p>
<input type="text" name="age" /> <input type="submit" value="Valider" />
</p>
</form>
</body>
</html>
résultat:
Bonjours.
Veuillez taper votre age :
[ ] Validé ([ ] zone texte)
cible.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Notre première instruction : echo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<?php
if ($age <= 12)
{
echo "Salut gamin !";
}
if ($age >= 13)
{
echo "Tu es trop vieu!";
}
?>
</body>
</html>
résultat:
Notice: Undefined variable: age in C:\wamp\www\essai\cible.php on line 9
Salut gamin !
Notice: Undefined variable: age in C:\wamp\www\essai\cible.php on line 13
Je commence tout juste en php... je test un peu faire quelque truc mais là je ne comprend pas ou est mon error:
deux pages .php appel.php et cible.php
appel.php:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Notre première instruction : echo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<p>
Bonjours,<br />
Veuillez taper votre age :
</p>
<form action="cible.php" method="post">
<p>
<input type="text" name="age" /> <input type="submit" value="Valider" />
</p>
</form>
</body>
</html>
résultat:
Bonjours.
Veuillez taper votre age :
[ ] Validé ([ ] zone texte)
cible.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Notre première instruction : echo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<?php
if ($age <= 12)
{
echo "Salut gamin !";
}
if ($age >= 13)
{
echo "Tu es trop vieu!";
}
?>
</body>
</html>
résultat:
Notice: Undefined variable: age in C:\wamp\www\essai\cible.php on line 9
Salut gamin !
Notice: Undefined variable: age in C:\wamp\www\essai\cible.php on line 13
Configuration: Windows Vista Safari 530.5
15 réponses
-
dans cible .php tu ne defini pas ta variable age
rajoute ça au debut de ton fichier
$age = isset($_POST['age']) ? $_POST['age'] : null;
autrement si $_post[age ] existe il prend la valeur de $post[age] sinon il est null
et comme ça plus de probleme de variable indefinie.
Meme si age est vide elle existera mais aura la valeur null -
Oui voila je comprend mieux (je te rassure je fait des testes pour comprendre... ^^)
un autre petit truc, regarde sa:
php:
<?php
$age = isset($_POST['age']) ? $_POST['age'] : null;
if ($age <= 12)
{
echo "Salut gamin !";
}
if ($age >= 13)
{
echo "Tu es trop vieu!";
}
if ($age == NULL)
echo "J'ai demandé ton age!"
?>
J'ai rajouté:
if ($age == NULL)
echo "J'ai demandé ton age!"
quand je met rien j'ai comme résultat
Salut gamin! J'ai demandé ton age!
quand je met rien c'est =0?
Ok..mais comment évité sa? -
Salut,
remplace par
<?php
$age = isset($_POST['age']) ? $_POST['age'] : null;
if ($age <= 12 & $age =! NULL)
{
echo "Salut gamin !";
}
if ($age >= 13 & $age =! NULL )
{
echo "Tu es trop vieu!";
}
if ($age == NULL)
echo "J'ai demandé ton age!"
?>
Tu peux aussi définir une autre valeur pour age si elle est NULL
ex :
<?php
$age = isset($_POST['age']) ? $_POST['age'] : null;
if ($age == NULL)
{
$age="zéro"
}
if ($age <= 12)
{
echo "Salut gamin !";
}
if ($age >= 13)
{
echo "Tu es trop vieu!";
}
?>
je sais pas si cela marche... -
met ça
if(!isset($age) || empty($age)) //si $age est null ou n'existe pas { echo 'J'ai demandé ton age!'; } else { //tu affiche ce que tu veut quand l'age est entré } -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
il y a toujours écrit gamin.
-
-
-
Dsl, les opérateurs différent sont erronés pour mon msg et les & aussi :
<?php $age = isset($_POST['age']) ? $_POST['age'] : null; if ($age <= 12 && $age != NULL) { echo "Salut gamin !"; } if ($age >= 13 && $age != NULL ) #inutile à prioris! { echo "Tu es trop vieu!"; } if ($age == NULL) { echo "J'ai demandé ton age!" } ?> -
oui comme sa sa marche nikel
Mais je voudrait comprendre:
ta ligne : if ($age >= 13 && $age != NUL ) #inutile à prioris!
c'est pas plutôt != NULL ?
même avec cette "error" sa marche c'est sa que je voudrait comprendre.
Merci à vous! -
oui j'ai corrigé, une petite erreur de frappe !
ça marche car il ne se trouve pas dans ce cas; la première partie de la condition l'élimine de base, donc de toute façon même si il ne comprend pas la deuxième partie de la condition, il tient compte de la première ;) !
bon courage ;) -
Ok donc au faite il fallait dire que NULL et différent à <=12 et à >=13
-
non, le premier cas est suffisant car il prend nul comme étant égal à 0 ! Donc, comme 0<=12 il affiche
Salut gamin ! J'ai demandé ton age !
mais inutile de le préciser pour >=13 car de tout façon, 0 ne peut pas être supérieur à 13 ni égal ... hum !! ^^
si d'autre découverte à faire, n'hésite pas, je suis un peu rouillé, il est vrai, mais bon ! -
Ok ba merci bien
moi je suis les leçons sur https://openclassrooms.com/fr/courses/918836-concevez-votre-site-web-avec-php-et-mysql -
c'est aussi comme cela que j'ai appris ;) très bon site !
-
lol oui il explique bien avec des exemples tout sa, mais moi au faite c'est que je veut aller plus vite que les leçons.