A la recherche du bonheur php

Résolu/Fermé
ced3E Messages postés 101 Date d'inscription mardi 28 décembre 2010 Statut Membre Dernière intervention 9 janvier 2013 - Modifié par ced3E le 29/12/2010 à 14:03
avion-f16 Messages postés 19250 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 22 décembre 2024 - 29 déc. 2010 à 20:29
Bonjour,


Bon voila je me suis mis en tête de faire mon site je sais ou je veux aller se qui est un trés bon départ, car quand ont sais se que l'ont veux il suffi d' un peu de courage et des heurs devant le pc . . .

Bon j' aime bien échanger avec les gens plutôt qu' un tuto.

Mais la j' avoue un peu blocké sur le php je ne trouve pas de tuto qui me convienne.

Je me demande si y aurai quel que Webmaster qui serai assé sympathique pour échanger avec un petit " noob " qui apprend relativement vite.

Je suis actuellement sur le formulaire, vérification des champs :

Je travail en méthode post, j aime pas trop l idée de mettre des infos visible si nn a quoi bon cacher le mot de passe bref la n' est pas la question.

donc je cherche a vérifier si 2 champs sont identique, validité d' un mail.

if (isset($_POST['Prenom']) && $_POST['Prenom'] != '') {
print 'Prénom valide!';
} else {
print 'Vous aver pas donner votre Prénom.';
}

petit vérification de la présence du champ rempli.

if ($_POST['email'] != $_POST['email2']) {
} else {
print 'mail non valide.';
}
le code si dessus ne fonction pas

Et pour se qui est de la vérification d' un mail j' ai bien vue comment on fais mais pas moyen non plus de le faire marcher.

function VerifierAdresseMail($email)
{
$Syntaxe='#^[\w.-]+@[\w.-]+\.[a-zA-Z]{2,6}$#';
if(preg_match($Syntaxe,$email))
print 'Youpi !';
else
print 'Erreur mail.';

}

Merci d' avance ;)
A voir également:

1 réponse

avion-f16 Messages postés 19250 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 22 décembre 2024 4 505
29 déc. 2010 à 20:29
Salut.

Pour vérifier si une variable n'est pas vide, j'utilise plutôt la fonction empty() qui retourne true si la variable passé est vide.

Tu peux également utiliser strlen() qui retourne la longueur d'une chaine. Ainsi, tu pourras mettre un minimum de caractères et un maximum. Un prénom à une lettre, je doute que ça existe ...

Il faut également utiliser la fonction trim() qui effacer les espaces en début et fin de chaine, pour éviter de te faire rouler par des espaces :)

Pour vérifier la syntaxe de l'adresse email, j'ai encore mieux que les regex, ceci :
https://www.php.net/manual/fr/book.filter.php

Pour valider mes formulaires, j'utilise également un tableau pour lister les messages d'erreurs.

Voilà ton code avec les conseils cités ci-dessus :
<?php
$prenom = isset($_POST['prenom']) ? trim($_POST['prenom']) : '';
$email1 = isset($_POST['email1']) ? $_POST['email1'] : '';
$email2 = isset($_POST['email2']) ? $_POST['email2'] : '';

$errors = array();

if(!strlen($prenom) > 2) { // 3 caractères minimum
   $errors[] = 'Le prénom doit contenir au moins 3 caractères';
}

if(!filter_var($email1, FILTER_VALIDATE_EMAIL)) {
    $errors[] = 'L\'adresse email indiquée est invalide';
}

if($email1 !== $email2) {
    $errors[] = 'Les adresses emails entrées ne correspondent pas';
}

if(count($errors) > 0) {
    echo '<div class="errors">';
    echo 'Il y a '.count($errors).' erreur(s) :<br/>';
    foreach($errors as $error) {
        echo '- '.$error.'<br/>';
    }
    echo '</div>';
} else {
    
    // Code à exécuter si le formulaire est valide

}
0