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 :

[Tableaux] Problème avec ma newsletter sur la fonction array_map


Sujet :

Langage PHP

  1. #1
    Membre du Club Avatar de Tchupa
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2007
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2007
    Messages : 98
    Points : 59
    Points
    59
    Par défaut [Tableaux] Problème avec ma newsletter sur la fonction array_map
    Bonsoir a tous, voilà j'ai une newsletter et je rencontre un problème avec mon fichier newsletter_inscription

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
     
    <?php
    mysql_connect("****", "*****", "******");
    mysql_select_db("*****"); 
    if(get_magic_quotes_gpc()) {
            $_POST = array_map($_POST, 'stripslashes');
            $_GET = array_map($_GET, 'stripslashes');
            $_COOKIE = array_map($_COOKIE, 'stripslashes');
    }
    $adresse = trim($_POST['adresse']);
     
    if (!empty($adresse) AND (preg_match("#^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$#", $adresse))) //on vérifie qu'une adresse a été entrée et qu'elle a un bon format (pseudo@service.ext)
    {
        /*$adresse = mysql_real_escape_string($_POST['adresse'], ENT_QUOTES); //mesure de sécurité*/
     
        if ($_POST['newsletter'] == 'oui') // s'il a choisi de s'inscrire
        {
            //on insère une nouvelle ligne dans la BDD contenant l'adresse du visiteur
            mysql_query("INSERT INTO newslettermembre VALUES('', '" . $adresse . "', '1')"); 
            echo 'Vous venez de vous inscrire à la newsletter.';
        }
        //s'il a choisi de se désinscrire
        else
        {
            //on supprime son adresse de la BDD
            mysql_query('DELETE FROM newslettermembre WHERE adresse=' . $adresse);
            echo 'Votre désinscription à la newsletter a bien été prise en compte.';
        }
    }
    else //si le champ de l'adresse est vide lorsqu'il a cliqué sur "Envoyer", ou bien si le format de l'adresse n'est pas de la forme "pseudo@service.ext", on affiche une erreur
    {
        echo 'Une erreur est survenue, vérifiez que vous avez bien rempli le formulaire et que votre adresse est bien de la forme PSEUDO@SERVICE.EXT.';
    }
     
    //et on n'oublie pas de se déconnecter !
    mysql_close();
     
    ?>
    Lorsque quelqu'un veut s'inscrire on obtient le message d'erreur suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Warning: array_map() [function.array-map]: The first argument, 'Array', should be either NULL or a valid callback in /home/www/newsletter/inscription_newsletter.php on line 5
     
    Warning: array_map() [function.array-map]: The first argument, 'Array', should be either NULL or a valid callback in /home/www/newsletter/inscription_newsletter.php on line 6
     
    Warning: array_map() [function.array-map]: The first argument, 'Array', should be either NULL or a valid callback in /home/www/newsletter/inscription_newsletter.php on line 7
    Une erreur est survenue, vérifiez que vous avez bien rempli le formulaire et que votre adresse est bien de la forme PSEUDO@SERVICE.EXT.
    Et je ne sais pas d'ou vient l'erreur quelqu'un pourrait m'aider svp?
    En vous remerciant
    Amicalement.

  2. #2
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 576
    Points : 2 440
    Points
    2 440
    Par défaut
    Bonsoir,

    Le message d'erreur te dit que tu inverses les arguments de array_map.
    c'est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    array array_map  ( callback $callback  , array $arr1  [, array $...  ] )

  3. #3
    Membre du Club Avatar de Tchupa
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2007
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2007
    Messages : 98
    Points : 59
    Points
    59
    Par défaut
    Oui mais il dit que c'est le ignes

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $_POST = array_map($_POST, 'stripslashes');
            $_GET = array_map($_GET, 'stripslashes');
            $_COOKIE = array_map($_COOKIE, 'stripslashes');
    Et c'est là que je comprends pas

  4. #4
    Membre actif Avatar de BlackSmith
    Inscrit en
    Mars 2008
    Messages
    181
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Mars 2008
    Messages : 181
    Points : 207
    Points
    207
    Par défaut
    Bonjour,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $_POST = array_map('stripslashes',$_POST);
            $_GET = array_map('stripslashes',$_GET);
            $_COOKIE = array_map('stripslashes',$_COOKIE);
    Voici ce qu'il faut que tu mette.

  5. #5
    Membre du Club Avatar de Tchupa
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2007
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2007
    Messages : 98
    Points : 59
    Points
    59
    Par défaut
    D'accord je comprends mieux je vous remercies beaucoup à trés bientôt.
    Amicalement.

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

Discussions similaires

  1. [Tableaux] Problème avec la fonction str_split
    Par sasaas dans le forum Langage
    Réponses: 3
    Dernier message: 23/02/2008, 10h48
  2. [Tableaux] problème avec la fonction split()
    Par Marcus15 dans le forum Langage
    Réponses: 3
    Dernier message: 26/02/2007, 11h17
  3. [Tableaux] Problème avec la fonction insert
    Par dunbar dans le forum Langage
    Réponses: 5
    Dernier message: 11/08/2006, 10h36
  4. [Tableaux] Problème avec Switch case
    Par philippef dans le forum Langage
    Réponses: 4
    Dernier message: 07/09/2005, 16h37
  5. Problème avec l'utilisation de la fonction clock
    Par Matgic95 dans le forum C++Builder
    Réponses: 13
    Dernier message: 09/05/2005, 19h27

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