Inscription/description newsletter [Résolu]

Signaler
Messages postés
47
Date d'inscription
lundi 3 décembre 2007
Statut
Membre
Dernière intervention
18 novembre 2011
-
Messages postés
47
Date d'inscription
lundi 3 décembre 2007
Statut
Membre
Dernière intervention
18 novembre 2011
-
Bonjour,
J'ai chargé un "Newsletter avec BD" sur Codes Sources et j'ai tenté de l'adapter à mes besoins.
Ça semble fonctionner mais rien ne se charge sur la BD...
Ma table se nomme inscrits et les champs que je veux remplir sont nom, prénom et mail.

Mon script :

<?php

function presence_de_l_addresse_mail($mail) {

require_once ("connect.php");
$base_id= mysql_pconnect(serveur,nom,passe);
$resultat=mysql_select_db(base,$base_id);

$query="SELECT * FROM `inscrits` WHERE mail='".addslashes($mail1)."'";
$resultat=mysql_query($query,$base_id);
//$mail=mysql_fetch_array(base,$base_id);
return ($mail['resultat']>0);
}


if($action=="ajouter")
{
if (!presence_de_l_addresse_mail($mail))
{ // ajout de l'addresse email
$query="INSERT INTO `inscrits` ( `nom` , `mail` ) VALUES ('', '$mail');"; // requete
$base_id=mysql_pconnect(serveur,nom,passe);
$resultat=mysql_query(base,$base_id); // execution de la requete SQL
$message="Votre inscription a bien été prise en compte.

Merci.";
}
else $message="Vous êtes déja inscrit";
}

elseif ($action=="supprimer")
{
if (presence_de_l_addresse_mail($mail))
{ // suppression de l'addresse email
$query="DELETE FROM newsletter WHERE mail = $mail"; // requete
$resultat=mysql_query($query,$base_id); // execution de la requete SQL
$message="Votre désinscription a bien été prise en compte.

Merci.";
}
else $message="L'adresse e-mail n'existe pas dans la base de donnée";
}

echo " Inscription à la newsletter trimestrielle
<form name ="mail" method="post" action="">
Nom :
Prénom :
Email :


S'inscrire
Se désinscrire
</form>
$message";

?>


Mon script connect.php fonctionne.


Pourriez vous m'aidez ?

Merci d'avance,
Ehp

19 réponses

Messages postés
1654
Date d'inscription
dimanche 7 septembre 2008
Statut
Membre
Dernière intervention
11 septembre 2013
12
bonsoir
j'ai regardé
le script est vieux donc j'ai rajouté des fonctionnalités ...
a++

CREATE TABLE IF NOT EXISTS `inscrits` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`nom` varchar(50) NOT NULL,
`prenom` varchar(50) NOT NULL,
`mail` varchar(50) NOT NULL,
`actif` enum('oui','non') NOT NULL,
`date` datetime NOT NULL,
`ip` varchar(15) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE= MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;
Messages postés
1654
Date d'inscription
dimanche 7 septembre 2008
Statut
Membre
Dernière intervention
11 septembre 2013
12
re bonsoir
le même script avec une verification javascript ...
il faudrait accepté le post 'validée' 'reponse acceptée' y a un bouton ... s.t.p merci a++

<script type= "text/javascript">
<!--
function verif_formulaire(){ 

  if(document.formmail.nom.value == "")  {
   alert("Veuillez entrer votre nom !");
   document.formmail.nom.focus();
   return false;
  }
  
    
  if(document.formmail.prenom.value == "")  {
   alert("Veuillez entrer votre prenom !");
   document.formmail.prenom.focus();
   return false;
  }
  
  
  if(document.formmail.mail.value == "") {
   alert("Veuillez entrer votre e-mail !");
   document.formmail.mail.focus();
   return false;
  } else {
    
  var str = document.formmail.mail.value;
  var re = /^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/;
    
  if (!str.match(re)) {
        alert("Verifier le format\n de votre e-mail !");
        document.formmail.mail.focus();
        return false;
  }  
  
  }
  
   
}
//-->
</script>
<?php 
/*identifiants*/
$serveur='localhost';
$login ='root';
$passe =''; 
$base='letter';

////////////////////////////////////////////////////////////////////////////////

function presence_mail($arg_mail) { 
$res="";
$serveur='localhost';
$login ='root';
$passe =''; 
$base='letter'; 
$test="";
$base_id=mysql_connect($serveur,$login,$passe); 
$resultat=mysql_select_db($base); 
/*protection*/
mysql_real_escape_string(strip_tags($arg_mail)); 
$sql="SELECT * FROM `inscrits` WHERE mail='".$arg_mail."'"; 
$query=mysql_query($sql);  
  
  if($res=mysql_num_rows($query)==1){ 
  //echo 'DEJA INSCRIT';
  $test='oui'; 
  //$test=true;
  }else{
  //echo 'PAS INSCRIT';
  $test='non';  
  }  

mysql_close();
return $test;
$test="";

} 

////////////////////////////////////////////////////////////////////////////////

if(isset($_POST['message'])){
$message=$_POST['message'];
}else{
$message="";
}

if(isset($_POST['action'])){
$action=$_POST['action'];
}else{
$action="";
}

if($action=="ajouter" && !empty($_POST['mail']))  
{
$mail=strtolower($_POST['mail']); 
if(presence_mail($mail)=="non"){
$base_id=mysql_connect($serveur,$login,$passe); 
mysql_select_db($base);
$prenom=mysql_real_escape_string(strip_tags($_POST['prenom']));
$nom=strtoupper(mysql_real_escape_string(strip_tags($_POST['nom'])));
$mail=strtolower(mysql_real_escape_string(strip_tags($_POST['mail'])));  
$sql="INSERT INTO `inscrits`(
`id` ,
`nom` ,
`prenom` ,
`mail` ,
`actif` ,
`date`,
`ip`
)
VALUES (
NULL , '".$nom."', '".$prenom."' , '".$mail."', 'oui', now(), '".$_SERVER['REMOTE_ADDR']."' 
)";    
mysql_query($sql);
mysql_close();
$message="Votre inscription a bien été prise en compte.

Merci.";
}else{
$message="Vous êtes déjà inscrit"; 
} 

}

else if($action=="supprimer" && !empty($_POST['mail'])) 
{
$mail=strtolower($_POST['mail']); 
if(presence_mail($mail)=="oui"){

$base_id=mysql_connect($serveur,$login,$passe); 
mysql_select_db($base,$base_id);
$prenom=mysql_real_escape_string(strip_tags($_POST['prenom']));
$nom=mysql_real_escape_string(strip_tags($_POST['nom']));

$mail=strtolower(mysql_real_escape_string(strip_tags($_POST['mail'])));     

     // suppression de l'addresse email 
    $query="DELETE FROM `inscrits` WHERE mail='".$mail."'"; // requete  `inscrits` WHERE mail='".$arg_mail."'"
    $resultat=mysql_query($query); // execution de la requete SQL 
    mysql_close();
    $message="Votre désinscription a bien été prise en compte.

Merci."; 
    } 
    else {
    $message="L'adresse e-mail n'existe pas dans la base de donnée"; 
    } 

}

else{}

echo " Inscription à la newsletter trimestrielle 

<form name ="formmail" method="post" action="" onSubmit="return verif_formulaire();" > 
Nom :  
Prénom :  
Email : 

 
 S'inscrire 
 Se désinscrire 
</form>
$message"; 
?>
Messages postés
1654
Date d'inscription
dimanche 7 septembre 2008
Statut
Membre
Dernière intervention
11 septembre 2013
12
bonjour

<form name="formmail" method="post" action="" onSubmit="return verif_formulaire();" >

a++
Messages postés
1654
Date d'inscription
dimanche 7 septembre 2008
Statut
Membre
Dernière intervention
11 septembre 2013
12
bonjour

donne nous le lien de ce script pour le tester

a++
Messages postés
1654
Date d'inscription
dimanche 7 septembre 2008
Statut
Membre
Dernière intervention
11 septembre 2013
12
essaie voir comme ça ...

<?php 
function presence_de_l_addresse_mail($mail) { 

require_once ("connect.php"); 
$base_id= mysql_pconnect(serveur,nom,passe); 
$resultat=mysql_select_db(base,$base_id); 

$query="SELECT * FROM `inscrits` WHERE mail='".addslashes($mail1)."'"; 
$resultat=mysql_query($query,$base_id); 
//$mail=mysql_fetch_array(base,$base_id); 
return ($mail['resultat']>0); 
} 

if(isset($_POST['message'])){
$message=$_POST['message'];
}else{
$message="";
}

if(isset($_POST['action'])){
$action=$_POST['action'];
}else{
$action="";
}

if($action=="ajouter" && !empty($_POST['mail'])) 
{
$mail=$_POST['mail']; 
if (!presence_de_l_addresse_mail($mail)) 
{ // ajout de l'addresse email 
$query="INSERT INTO `inscrits` ( `nom` , `mail` ) VALUES ('', '$mail');"; // requete 
$base_id=mysql_pconnect(serveur,nom,passe); 
$resultat=mysql_query(base,$base_id); // execution de la requete SQL 
$message="Votre inscription a bien été prise en compte.

Merci."; 
} 
else $message="Vous êtes déja inscrit"; 
} 

elseif ($action=="supprimer" && !empty($_POST['mail'])) 
{
$mail=$_POST['mail'];  
if (presence_de_l_addresse_mail($mail)) 
{ // suppression de l'addresse email 
$query="DELETE FROM newsletter WHERE mail = $mail"; // requete 
$resultat=mysql_query($query,$base_id); // execution de la requete SQL 
$message="Votre désinscription a bien été prise en compte.

Merci."; 
} 
else $message="L'adresse e-mail n'existe pas dans la base de donnée"; 
} 

echo " Inscription à la newsletter trimestrielle 
<form name ="mail" method="post" action=""> 
Nom :  
Prénom :  
Email : 

 
 S'inscrire 
 Se désinscrire 
</form>
$message"; 
?>
Messages postés
47
Date d'inscription
lundi 3 décembre 2007
Statut
Membre
Dernière intervention
18 novembre 2011

bonjour,
ça ne fonctionne pas...
as tu besoin du script de connect.php qui n'est autre que le nom de la base, le passe, le serveur et la base

merci pour ton aide,
ehp
Messages postés
1654
Date d'inscription
dimanche 7 septembre 2008
Statut
Membre
Dernière intervention
11 septembre 2013
12
si tu as le lien je pourrais essayer en local ...
Messages postés
47
Date d'inscription
lundi 3 décembre 2007
Statut
Membre
Dernière intervention
18 novembre 2011

le lien ?
Messages postés
1654
Date d'inscription
dimanche 7 septembre 2008
Statut
Membre
Dernière intervention
11 septembre 2013
12
J'ai chargé un "Newsletter avec BD" sur Codes Sources et j'ai tenté

oui sinon la table ...
Messages postés
47
Date d'inscription
lundi 3 décembre 2007
Statut
Membre
Dernière intervention
18 novembre 2011

connect.php

<?php
define ('nom','946326_eed');
define ('passe','eed_cambodge');
define ('serveur','mysqlhost5');
define ('base','946326_eed');
?>
Messages postés
1654
Date d'inscription
dimanche 7 septembre 2008
Statut
Membre
Dernière intervention
11 septembre 2013
12
non pas ça !
le lien sur code sources vers le script
s.t.p.
pas grave je vais essayer comme ça
Messages postés
47
Date d'inscription
lundi 3 décembre 2007
Statut
Membre
Dernière intervention
18 novembre 2011

Messages postés
47
Date d'inscription
lundi 3 décembre 2007
Statut
Membre
Dernière intervention
18 novembre 2011

je pense que tu as chargé le même
Messages postés
47
Date d'inscription
lundi 3 décembre 2007
Statut
Membre
Dernière intervention
18 novembre 2011

je ne sais pas comment te donner une copie de la table mais tu trouveras l'image sur ce lien :
http://www.enfantsetdeveloppement.org/tableInscrits.html
Messages postés
47
Date d'inscription
lundi 3 décembre 2007
Statut
Membre
Dernière intervention
18 novembre 2011

ça marche !!!

un énorme merci pour ton aide.

par ailleurs j'ai un paiement en ligne à réaliser sur mercanet bnp,
moyennant rémunération serais-tu intéressé ?

mon mail : emmabarret@yahoo.fr
Messages postés
47
Date d'inscription
lundi 3 décembre 2007
Statut
Membre
Dernière intervention
18 novembre 2011

je ne comprends pas "il faudrait accepté le post 'validée' 'reponse acceptée' y a un bouton";

si je rajoute un champ CONFIRMATION EMAIL aurais une fonction a me donner

merci
Messages postés
47
Date d'inscription
lundi 3 décembre 2007
Statut
Membre
Dernière intervention
18 novembre 2011

je l'ai mis dans le btn de validation, mais ça ne marche pas :
Messages postés
1654
Date d'inscription
dimanche 7 septembre 2008
Statut
Membre
Dernière intervention
11 septembre 2013
12
@il faudrait accepté le post 'validée' 'reponse acceptée' y a un bouton ... s.t.p merci <= confusion, pas dans le code

c'est la discussion ! 'Réponse acceptée !' pour le forum
tu as un bouton sur le forum pour ça
sinon c'est pas grave

a++
Messages postés
47
Date d'inscription
lundi 3 décembre 2007
Statut
Membre
Dernière intervention
18 novembre 2011

c'est fait, je n'avais vraiment rien compris !

a+ et encore merci