Précédent   Forum des professionnels en informatique > PHP > Langage > Fonctions
Fonctions Forum d'entraide sur les fonctions PHP. Avant de poster -> FAQ fonctions et Sources diverses
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 26/05/2008, 11h59   #1
Nouveau Membre du Club
 
Avatar de Tchupa
 
Étudiant
Inscription : mai 2007
Messages : 97
Détails du profil
Informations personnelles :
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : mai 2007
Messages : 97
Points : 27
Points : 27
Par défaut erreur avec mon script newsletter

Bonjour a tous voila j'essais de faire une newsletter, alors pour le moment j'ai fait mon formulaire ou la personne peut rentrer son adresse et celui envois la requête vers un fichier inscription_newsletter.php et quand je veux tester mon script en local sous easy php j'obtiens cette erreur:

Citation:
Warning: mysql_real_escape_string() expects parameter 2 to be resource, integer given in c:\program files\easyphp1-8\www\wartelle\inscription_newsletter.php on line 13
Vous venez de vous inscrire à la newsletter.
Voici le code concerner
Code :
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("localhost", "login", "password");
mysql_select_db("newsletter"); 
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 seb@univ.valenciennes.fr';
}
 
//et on n'oublie pas de se déconnecter !
mysql_close();
 
?>
Si quelqu'un pouvais m'aider car je ne comprends l'erreur.
En vous remerciant.
Amicalement.
Tchupa est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/05/2008, 12h05   #2
Membre confirmé
 
Développeur Web
Inscription : octobre 2006
Messages : 251
Détails du profil
Informations personnelles :
Âge : 24
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : octobre 2006
Messages : 251
Points : 268
Points : 268
Le deuxième arguement de mysql_real_escape_string, doit etre la resource de connexion a la base (mais il est optionnel)

donc il ne faut qu'un seul parametre pour cette fonction.

et le ENT_QUOTES me fait penser que tu a confondu cette fonction avec htmlentities

La doc: http://fr.php.net/manual/fr/function...ape-string.php
benji07 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h33.


 
 
 
 
Partenaires

Hébergement Web