PHP : Test presence données.
Résolu
rmerme
Messages postés
36
Statut
Membre
-
rmerme Messages postés 36 Statut Membre -
rmerme Messages postés 36 Statut Membre -
Bonjour,
J'ai un problème.
Fichier formulaire.php
Mon problème : php ne détecte jamais que le champ pseudo est vide, par contre, $lvlen est égal à 0.
Quelle est l'erreur dans le isset ?
Merci pour vos réponses
EDIT : Déplacement du sujet dans le forum PHP
EDIT² : Ajout du LANGAGE dans les balises de code pour avoir la coloration syntaxique.
J'ai un problème.
<!DOCTYPE html>
<html>
<head>
<!-- Entete de la page -->
<meta charset "utf-8" />
<title>Test Forms</title>
</head>
<body>
<form method="post" action="formulaire.php">
<label for="pseudo">Votre pseudo :</label>
<input type="text" name="pseudo" id="pseudo" />
<input type="submit" value="Envoyer" />
</form>
</body>
</html>
Fichier formulaire.php
<!DOCTYPE html
<html>
<head>
<title>Formulaire</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<?php
if (isset($_POST['pseudo']))
{
$pseudo = $_POST['pseudo'];
echo $pseudo;
$lvlen = strlen($pseudo);
echo $lvlen;
}
else
{
$pseudo = 'vide';
echo $pseudo;
echo $lvlen;
}
if($lvlen == 0)
{
echo 'longueur = 0';
}
?>
</body>
</html>
Mon problème : php ne détecte jamais que le champ pseudo est vide, par contre, $lvlen est égal à 0.
Quelle est l'erreur dans le isset ?
Merci pour vos réponses
EDIT : Déplacement du sujet dans le forum PHP
EDIT² : Ajout du LANGAGE dans les balises de code pour avoir la coloration syntaxique.
A voir également:
- PHP : Test presence données.
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Retour a la ligne php - Forum Webmastering
- Alert php - Forum PHP
- Retour a la ligne php ✓ - Forum PHP
3 réponses
Bonjour,
isset sert à vérifier que la variable existe.
Pour savoir si elle est vide .. c'est empty qu'il faut utiliser
Essaye ça :
Je t'invite fortement à lire ceci :
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
et concernant l'écriture des IF /ELSE .. je t'invite à consulter la norme PSR-2
https://www.php-fig.org/psr/psr-2/
isset sert à vérifier que la variable existe.
Pour savoir si elle est vide .. c'est empty qu'il faut utiliser
Essaye ça :
<?php
//récupération PROPRE des variables AVANT de les utiliser
$pseudo = !empty($_POST['pseudo']) ? trim($_POST['pseudo']) : NULL;
$lvlen = $pseudo ? strlen($pseudo) : 0;
?>
<!DOCTYPE html>
<html>
<head>
<title>Formulaire</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<?php
if ($pseudo){
echo $pseudo;
echo $lvlen;
} else {
echo 'vide';
}
if($lvlen == 0){
echo 'longueur = 0';
}
?>
</body>
</html>
Je t'invite fortement à lire ceci :
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
et concernant l'écriture des IF /ELSE .. je t'invite à consulter la norme PSR-2
https://www.php-fig.org/psr/psr-2/
yg_be
Messages postés
24281
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 585
bonsoir, as tu essayé
!emptyau lieu de
isset?