Php verification d'un champs

Résolu
bonjour
j'ai un champs de formulaire ou je demande le site du visiteur s'il en a un ce n'est pas obligatoire.

donc dans mon champs il y a deja prerempli "http://" pour que le visisteur puisse mettre la suite

le probleme c'est que derriere si il a pas de site la variable $_post['site'] contient quand meme http://

et ensuite moi j'ai un code qui dit

si $_POST['site'] est vide
on affiche rien
sinon
on affiche le lien

pour cela juste avant je doit mettre un code qui fais ca

si $_POST['site'] contient seulement "http://"
on met $_POST['site'] ==""

pour qu'en suite on affiche rien si le visiteur n'a rien mis le probleme c'est comment faire ca pour voir si $_POST['site']contient seulement http://

si vous avez des idees merci pour votre aide

3 réponses

  1. Bonjour,

    il existe une multitude de solution pour ce problème. Soit tu changes la présentation de ton formulaire et tu retires "http://". Tu vérifies juste par la suite sur le http:// est présent dans l'entrée :

    if(!strstr($_POST['site'], "http://")
    echo "Il manque le http:// devant l'adresse de votre site.";

    strstr() permet de comparer des chaines de caractères.

    Soit tu laisses tout comme ça et dans le même genre, tu vérifies s'il ne contient que ça (strictement).
    if($_POST['site'] == 'http://')
    $site = false;
    else
    $site = $_POST['site'];


    Schématiquement, si le post à uniquement http:// tu mets la variable à false, sinon tu mets ce qui est inscrit dedans.

    J'espère que ça t'aidera.
    1. parfaitement ca m'a aider je savai pas qu'on pouvait faire ca la deuxieme solution
      merci bcq