IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

ne pas autoriser les liens web ?


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Inscrit en
    Avril 2003
    Messages
    215
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 215
    Points : 62
    Points
    62
    Par défaut ne pas autoriser les liens web ?
    Bonjour
    J'ai un formulaire où les visiteurs entrent un message, qui est inséré dans ma base de données.
    Le probleme c'est que souvent j'ai du spam, avec plein de liens web.
    Comment faire pour que avant de faire le insert into dans ma table message, il fasse une verification et n'autorise pas les liens ?

    Du genre

    if $message like %http% (je sais que ce ne s'ecrit aps comme en SQL mais c'est pour vous montrer l'idée !!)

    echo "les liens webs ne sont pas autorisés"

    Merci pour votre aide

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 778
    Points
    17 778
    Par défaut
    En php il y a la fonction preg_match(_all), cela vous conviendrait-il ?


    Julp.

  3. #3
    Membre éprouvé Avatar de FCYPBA
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    745
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 745
    Points : 952
    Points
    952
    Par défaut
    Citation Envoyé par julp
    En php il y a la fonction preg_match(_all), cela vous conviendrait-il ?
    Julp.
    Pas mieux. C'est fait pour rechercher un masque dans du texte. C'est tout a fait ce qu'il te faut. Et tu trouveras des exemples de masques qui conviennet dans ton cas, qui est la recherche de lien dans du texte
    Pierre
    1. Dans le manuel ( PHP, MySQL,..., rayez la mention inutile), tu te plongeras à deux fois plutôt qu'aucune.
    2. Dans la doc php, tu liras attentivement les sections Chaines de caractères, Tableaux et Système de fichiers
    3. Un code rapide c'est bien, un code maintenable c'est mieux
    ...

    Why was the font tag an orphan ? Because it didn't have a font-family.

  4. #4
    Membre du Club
    Inscrit en
    Avril 2003
    Messages
    215
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 215
    Points : 62
    Points
    62
    Par défaut
    merci pour votre réponse, j'ai trouvé ce code mais comment l'appliquer à mon cas ?
    Merci !

    <?php
    $chaine='Ceci est la page d\'un site sur les <a href="http://www.expreg.com">Expressions régulières</a> que j\'ai trouvé sur <a href="http://www.google.be" target="_top">Google.be</a> et que placé dans une chaine avec file_get_contents()';

    $motif='`<a href="[^>]+">[^<]+</a>`';
    preg_match_all($motif,$chaine,$out);

    $count=count($out[0]);

    for($i=0;$i<$count;$i++)
    {
    echo $out[0][$i],'<br/>';
    }
    ?>

  5. #5
    Membre éprouvé Avatar de FCYPBA
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    745
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 745
    Points : 952
    Points
    952
    Par défaut
    Dans la doc preg_match_all() il est dit :

    preg_match_all() retourne le nombre de résultats qui satisfont le masque complet, ou FALSE en cas d'échec ou d'erreur.
    je te laisse deviner la suite
    Pierre
    1. Dans le manuel ( PHP, MySQL,..., rayez la mention inutile), tu te plongeras à deux fois plutôt qu'aucune.
    2. Dans la doc php, tu liras attentivement les sections Chaines de caractères, Tableaux et Système de fichiers
    3. Un code rapide c'est bien, un code maintenable c'est mieux
    ...

    Why was the font tag an orphan ? Because it didn't have a font-family.

  6. #6
    Membre éprouvé Avatar de alain31tl
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    935
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 935
    Points : 1 019
    Points
    1 019
    Par défaut
    Salut

    As-tu essayé avec ereg()

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    if(ereg("http://", $tachaine))
    {
    //option 1
    } 
    else
    {
    // option 2
    }
    Ce n'est pas parce que les choses sont difficiles qu'on n'ose pas les entreprendre.
    C'est parce qu'on n'ose pas les entreprendre qu'elles sont difficiles.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. css marche mais pas depuis les liens de la page index
    Par ak4774 dans le forum Mise en page CSS
    Réponses: 5
    Dernier message: 30/03/2009, 15h26
  2. Ne pas autoriser les domaines @yahoo.com
    Par laurent221 dans le forum Langage
    Réponses: 2
    Dernier message: 02/09/2008, 13h34
  3. Réponses: 2
    Dernier message: 05/10/2006, 12h01
  4. Ne pas voir les liens d'une page !
    Par nicof3 dans le forum Langage
    Réponses: 3
    Dernier message: 25/04/2006, 12h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo