Inscription avec validation du compte par UUID

lesiteduhtml - 1 janv. 2013 à 17:42
 lesiteduhtml - 3 janv. 2013 à 17:10
Bonjour à tous :),

Voici mon problème, j'espère que vous saurez le résoudre :
J'ai une base de données MySQL, contenant une table contenant elle-même 6 catégories : id (en int auto-incrément), user (en varchar 255 et unique), pass (en varchar 255, contenant un mot de passe crypté en MD5 et possédant un sel), un uuid (qui contient comme vous devez l'avoir deviner un UUID en varchar 255), enfin, un verifyuuid (qui est un boolean et qui est de défault 0).

Comme Vous devez l'avoir compris, j'aimerai que la personne puisse s'inscrire, que la page génère un UUID, que le mot de passe soit crypté puis que un mail soit envoyé à la personne contenant un url, sur lequel lorsqu'on clique le verifyuuid soit mis a 1. Voilà :)

Voici les pages que j'ai fait pour le moment mais sa ne marche pas ^^ :

inscription.php


Inscription


S'inscrire :



Pseudo :


Mot de Passe :


Email :















post.php

16 réponses

cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
2 janv. 2013 à 16:52
bonjour

j'ai étudié ton code et je l'ai refait


voici mon code qui fonctionne
j'ai rajouté la vérification contre la double inscription tu as une base de travail

tu remarques que tu peux pousser la vérification du mail par une regex mais si il valide pas son compte il reste mort ... donc

index.php
<?php
session_start();
/*session_start() en tête de fichier*/

function gen_uuid() {

 $uuid = array(
  'time_low'  => 0,
  'time_mid'  => 0,
  'time_hi'  => 0,
  'clock_seq_hi' => 0,
  'clock_seq_low' => 0,
  'node'   => array()
 );

 $uuid['time_low'] = mt_rand(0, 0xffff) + (mt_rand(0, 0xffff) << 16);
 $uuid['time_mid'] = mt_rand(0, 0xffff);
 $uuid['time_hi'] = (4 << 12) | (mt_rand(0, 0x1000));
 $uuid['clock_seq_hi'] = (1 << 7) | (mt_rand(0, 128));
 $uuid['clock_seq_low'] = mt_rand(0, 255);

 for ($i = 0; $i < 6; $i++) {
  $uuid['node'][$i] = mt_rand(0, 255);
 }

 $uuid = sprintf('%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x',
  $uuid['time_low'],
  $uuid['time_mid'],
  $uuid['time_hi'],
  $uuid['clock_seq_hi'],
  $uuid['clock_seq_low'],
  $uuid['node'][0],
  $uuid['node'][1],
  $uuid['node'][2],
  $uuid['node'][3],
  $uuid['node'][4],
  $uuid['node'][5]
 );

 return $uuid;
}


function mail_client($email=null,$user=null,$pass=null,$uuid=null){

if(isset($email,$user,$pass,$uuid) && !empty($email) && !empty($user) && !empty($pass) && !empty($uuid)){

    $destinataire = $email;

$sujet = 'Activation de votre compte MonSite';


// Pour envoyer un mail HTML, l'en-tête Content-type doit être défini
    $entete  = 'MIME-Version: 1.0' . "\r\n";
    $entete .= 'Content-type: text/html; charset=utf-8' . "\r\n";
$entete .= 'From: inscription@monsite.fr' . "\r\n";

$lien = 'Je valide mon inscription';

$message  = 'Bonjour '.$user.'
';

$message .= 'Bienvenue sur le site MonSite.fr
';
$message .= 'Pour utilisé votre compte veuillez l´activé en cliquant sur le lien ci-dessous :
';

$message .= $lien.'
';

$message .= 'Nous vous rappelons votre identifiant et votre mot de passe :
';
$message .= 'Identifiant : '.$user.'
';
$message .= 'Mot de Passe : '.$pass.'
';
$message .= 'Merci d´en prendre note.
';
$message .= 'Cordialement
';
$message .= 'L´équipe de MonSite.fr
';
$message .= '<hr>';

$message .= 'Ceci est un mail automatique. Merci de ne pas y répondre.';


/*derniere etape*/
if(@mail($email,$sujet,$message,$entete)){
echo 'Votre inscription a bien été validée :)';
//ou un header vers une pagemerci.html
//header('Location: pagemerci.html');exit;
}else{
echo 'check smtp ...';
}

}else{
//no user ... 
}
}

function inscription($email,$user,$pass){
/*on se connecte*/
try
{

$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = '';
$dbbase = 'testjerome';

$bdd = new PDO('mysql:host='.$dbhost.';dbname='.$dbbase.'', ''.$dbuser.'', ''.$dbpass.'');
}
catch(Exception $e)
{
        die('Erreur : '.$e->getMessage());
}


/*est il déjà inscrit ?*/
$sql "select id from `testjerome`.`mesusers` where email :email limit 1";
$req = $bdd->prepare($sql);
$req -> bindParam(':email',$email);
$req->execute();
$result = $req->fetch(PDO::FETCH_ASSOC);
if($result==true){
exit('Déjà inscrit vérifier votre messagerie du mail : '.$email);
}

/*tu fais ton uuid que tu te compliques la vie en passant :-)*/
$uuid = gen_uuid();
$sql = "INSERT INTO `testjerome`.`mesusers` (`user`, `pass`, `email`, `uuid`, `estactif`) VALUES (:user,:pass,:email,:uuid,0)";
$md5pass = md5($pass);
try{

$req = $bdd->prepare($sql);
$req -> bindParam(':user',$user);
$req -> bindParam(':pass',$md5pass);
$req -> bindParam(':email',$email);
$req -> bindParam(':uuid',$uuid);

$req->execute();
mail_client($email,$user,$pass,$uuid);
}
catch(Exception $e)
{
         
        
echo('Erreur : '.$e->getMessage());

}


}


/*si la method est post pas de get
le post est mieux ...
beaucoup d'attaque sur les form se font par get
... blabla
*/

$test = false;

if($_SERVER['REQUEST_METHOD']==='POST'
&& isset($_POST['user'],$_POST['pass'],$_POST['email'])
&& strlen($_POST['user'])>3 && strlen($_POST['pass'])>6 && strlen($_POST['email'])>6){
/*un peu de protection basique anti xss*/
$user = htmlentities(trim($_POST['user']));
$pass = htmlentities(trim($_POST['pass']));
$email = htmlentities(trim($_POST['email']));
/*on lance la function inscription*/
/*tu peux contrôler le mail avec une regex ...*/

 
if($test === false){
inscription($email,$user,$pass);
    }else{
echo 'Des champs sont à saisir correctement
'; 
}

}else{
echo 'Des champs sont à saisir correctement
'; 
}
?>
<html>
<head>
<title>Inscription</title>
</head>

S'inscrire :

<form Method="POST" Action="<?php echo htmlentities(trim($_SERVER['PHP_SELF']));?>">

Pseudo :       


Mot de Passe : 


Email :        






</form>

</html>


verify.php
<?php
if(isset($_GET['user'],$_GET['verifyuuid'])){
$user = strip_tags(urldecode(trim($_GET['user'])));
$uuid = strip_tags(urldecode(trim($_GET['verifyuuid'])));
}else{
exit('UNAUTHORISED');
}


/*ON SE CONNECTE*/
try
{

$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = '';
$dbbase = 'testjerome';

$bdd = new PDO('mysql:host='.$dbhost.';dbname='.$dbbase.'', ''.$dbuser.'', ''.$dbpass.'');
}
catch(Exception $e)
{
        die('Erreur : '.$e->getMessage());
}

$sql "SELECT user,uuid,estactif FROM mesusers WHERE user :user and uuid = :uuid limit 1";
$stmt = $bdd->prepare($sql);
$stmt -> bindParam(':user',$user);
$stmt -> bindParam(':uuid',$uuid);

if($stmt->execute() && $row = $stmt->fetch())
  {
    $uuidbdd = $row['uuid'];	// Récupération de la clé
    $estactif = $row['estactif']; // $uuidverify contiendra alors 0 ou 1
  }


// On teste la valeur de la variable $uuidverify récupéré dans la BDD
if((int)$estactif == '1') // Si le compte est déjà uuidverify on prévient
  {
     echo "Votre compte est déjà activé !";
  }
else // Si ce n'est pas le cas on passe aux comparaisons
  {
          // Si elles correspondent on active le compte !	
          echo "Votre compte a bien été activé !";

          // La requête qui va passer notre champ uuidverify de 0 à 1
          $stmt $bdd->prepare('UPDATE mesusers SET estactif 1 WHERE user = :user ');
          $stmt->bindParam(':user', $user);
          $stmt->execute();       
  }
?>


ma table
-- phpMyAdmin SQL Dump
-- version 3.5.1
-- http://www.phpmyadmin.net
--
-- Client: localhost
-- Généré le: Mer 02 Janvier 2013 à 15:50
-- Version du serveur: 5.5.8-log
-- Version de PHP: 5.4.3

SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";


/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;

--
-- Base de données: `testjerome`
--

-- --------------------------------------------------------

--
-- Structure de la table `mesusers`
--

CREATE TABLE IF NOT EXISTS `mesusers` (
  `id` int(10) NOT NULL AUTO_INCREMENT,
  `user` varchar(30) NOT NULL,
  `pass` varchar(32) NOT NULL,
  `email` varchar(50) NOT NULL,
  `uuid` varchar(50) NOT NULL,
  `estactif` tinyint(1) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;

--
-- Contenu de la table `mesusers`
--

INSERT INTO `mesusers` (`id`, `user`, `pass`, `email`, `uuid`, `estactif`) VALUES
(1, 'toto', '961592c3731e8513e81cae739a36a7d9', 'bricomamfree.fr', 'b92853ee-a082-4564-bc64-a0ffce7c792c', 1);

/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;




Bonne programmation !
0
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
2 janv. 2013 à 16:56
il manque un bout dans verify.php
faut aussi changer les identifiants

verify.php
<?php
if(isset($_GET['user'],$_GET['verifyuuid'])){
$user = strip_tags(urldecode(trim($_GET['user'])));
$uuid = strip_tags(urldecode(trim($_GET['verifyuuid'])));
}else{
exit('UNAUTHORISED');
}


/*ON SE CONNECTE*/
try
{

$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = '';
$dbbase = 'testjerome';

$bdd = new PDO('mysql:host='.$dbhost.';dbname='.$dbbase.'', ''.$dbuser.'', ''.$dbpass.'');
}
catch(Exception $e)
{
        die('Erreur : '.$e->getMessage());
}

$sql "SELECT user,uuid,estactif FROM mesusers WHERE user :user and uuid = :uuid limit 1";
$stmt = $bdd->prepare($sql);
$stmt -> bindParam(':user',$user);
$stmt -> bindParam(':uuid',$uuid);

if($stmt->execute() && $row = $stmt->fetch())
  {
    $uuidbdd = $row['uuid'];	// Récupération de la clé
    $estactif = $row['estactif']; // $uuidverify contiendra alors 0 ou 1
  }


// On teste la valeur de la variable $uuidverify récupéré dans la BDD
if((int)$estactif == '1') // Si le compte est déjà uuidverify on prévient
  {
     echo "Votre compte est déjà activé !";
  }
else // Si ce n'est pas le cas on passe aux comparaisons
  {
          // Si elles correspondent on active le compte !	
          echo "Votre compte a bien été activé !";

          // La requête qui va passer notre champ uuidverify de 0 à 1
          $stmt $bdd->prepare('UPDATE mesusers SET estactif 1 WHERE user = :user ');
          $stmt->bindParam(':user', $user);
          $stmt->execute();       
  }
?>



Bonne programmation !
0
Re-Salut :)
Merci de m'aider mais sa ne marche pas, voici les deux premières images sont sur Firefox et les deux dernières sont sur google chrome.
Merci d'avance ^^

Déjà je ne sais pas pourquoi il me met sa de base ??

Ensuite Google Chrome :



Voilà, merci :)
Et à bientôt
Jérôme
0
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
2 janv. 2013 à 21:05
bonsoir error 500 as tu un htaccess qui traine ... le serveur n'est pas accessible

Bonne programmation !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
2 janv. 2013 à 21:10
attention le form il manque des " desfois ...
un peu mieux formaté

<html>
<head>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>  
  <head>  
    <meta http-equiv="content-type" content="text/html; utf-8">  
    <meta name="generator" content="PSPad editor, www.pspad.com">  
    <title>Inscription
    </title>
    <style>
    
#divform{
text-align:center;
background-color:#eedddd;
}

#pform label{
background-color:#ddeeff;
width:25%;
padding:10px;
} 

#pform input{ 
background-color:#ffeedd;
width:25%;
padding:10px;
} 
    
</style>
  </head>
  
  
  

  
  S'inscrire :

  
<form Method="POST" Action="<?php echo htmlentities(trim($_SERVER['PHP_SELF']));?>">
      
        
<label>Pseudo :
        </label>


        


        
<label>Mot de Passe :
        </label>


        


        
<label>Email :
        </label>


        


        


        




      


    </form>


  
</html>


Bonne programmation !
0
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
2 janv. 2013 à 21:13
le script fonctionne nickel chez moi
verifie bien le non de la table mesusers
dans toutes les requetes ...
verifie tes identifiants ...

avec une regex pour le mail ...
<?php
session_start();
/*session_start() en tête de fichier*/

function gen_uuid() {

 $uuid = array(
  'time_low'  => 0,
  'time_mid'  => 0,
  'time_hi'  => 0,
  'clock_seq_hi' => 0,
  'clock_seq_low' => 0,
  'node'   => array()
 );

 $uuid['time_low'] = mt_rand(0, 0xffff) + (mt_rand(0, 0xffff) << 16);
 $uuid['time_mid'] = mt_rand(0, 0xffff);
 $uuid['time_hi'] = (4 << 12) | (mt_rand(0, 0x1000));
 $uuid['clock_seq_hi'] = (1 << 7) | (mt_rand(0, 128));
 $uuid['clock_seq_low'] = mt_rand(0, 255);

 for ($i = 0; $i < 6; $i++) {
  $uuid['node'][$i] = mt_rand(0, 255);
 }

 $uuid = sprintf('%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x',
  $uuid['time_low'],
  $uuid['time_mid'],
  $uuid['time_hi'],
  $uuid['clock_seq_hi'],
  $uuid['clock_seq_low'],
  $uuid['node'][0],
  $uuid['node'][1],
  $uuid['node'][2],
  $uuid['node'][3],
  $uuid['node'][4],
  $uuid['node'][5]
 );

 return $uuid;
}


function mail_client($email=null,$user=null,$pass=null,$uuid=null){

if(isset($email,$user,$pass,$uuid) && !empty($email) && !empty($user) && !empty($pass) && !empty($uuid)){

    $destinataire = $email;

$sujet = 'Activation de votre compte MonSite';


// Pour envoyer un mail HTML, l'en-tête Content-type doit être défini
    $entete  = 'MIME-Version: 1.0' . "\r\n";
    $entete .= 'Content-type: text/html; charset=utf-8' . "\r\n";
$entete .= 'From: inscription@monsite.fr' . "\r\n";

$lien = 'Je valide mon inscription';

$message  = 'Bonjour '.$user.'
';

$message .= 'Bienvenue sur le site MonSite.fr
';
$message .= 'Pour utilisé votre compte veuillez l´activé en cliquant sur le lien ci-dessous :
';

$message .= $lien.'
';

$message .= 'Nous vous rappelons votre identifiant et votre mot de passe :
';
$message .= 'Identifiant : '.$user.'
';
$message .= 'Mot de Passe : '.$pass.'
';
$message .= 'Merci d´en prendre note.
';
$message .= 'Cordialement
';
$message .= 'L´équipe de MonSite.fr
';
$message .= '<hr>';

$message .= 'Ceci est un mail automatique. Merci de ne pas y répondre.';


/*derniere etape*/
if(@mail($email,$sujet,$message,$entete)){
echo 'Votre inscription a bien été validée :)';
//ou un header vers une pagemerci.html
//header('Location: pagemerci.html');exit;
}else{
echo 'check smtp ...';
}

}else{
//no user ... 
}
}

function inscription($email,$user,$pass){
/*on se connecte*/
try
{

$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = '';
$dbbase = 'testjerome';

$bdd = new PDO('mysql:host='.$dbhost.';dbname='.$dbbase.'', ''.$dbuser.'', ''.$dbpass.'');
}
catch(Exception $e)
{
        die('Erreur : '.$e->getMessage());
}


/*est il déjà inscrit ?*/
$sql "select id from `testjerome`.`mesusers` where email :email limit 1";
$req = $bdd->prepare($sql);
$req -> bindParam(':email',$email);
$req->execute();
$result = $req->fetch(PDO::FETCH_ASSOC);
if($result==true){
exit('Déjà inscrit vérifier votre messagerie du mail : '.$email);
}

/*tu fais ton uuid que tu te compliques la vie en passant :-)*/
$uuid = gen_uuid();
$sql = "INSERT INTO `testjerome`.`mesusers` (`user`, `pass`, `email`, `uuid`, `estactif`) VALUES (:user,:pass,:email,:uuid,0)";
$md5pass = md5($pass);
try{

$req = $bdd->prepare($sql);
$req -> bindParam(':user',$user);
$req -> bindParam(':pass',$md5pass);
$req -> bindParam(':email',$email);
$req -> bindParam(':uuid',$uuid);

$req->execute();
mail_client($email,$user,$pass,$uuid);
}
catch(Exception $e)
{
         
        
echo('Erreur : '.$e->getMessage());

}


}


/*si la method est post pas de get
le post est mieux ...
beaucoup d'attaque sur les form se font par get
... blabla
*/

$test = false;
$err = null;
if($_SERVER['REQUEST_METHOD']==='POST'
&& isset($_POST['user'],$_POST['pass'],$_POST['email'])
&& strlen($_POST['user'])>3 && strlen($_POST['pass'])>6 && strlen($_POST['email'])>6){
/*un peu de protection basique anti xss*/
$user = htmlentities(trim($_POST['user']));
$pass = htmlentities(trim($_POST['pass']));
$email = htmlentities(trim($_POST['email']));
/*on lance la function inscription*/
/*tu peux contrôler le mail avec une regex ...*/


if(preg_match('#^[a-zA-Z0-9]+[\w.-]*@[a-z0-9._-]{2,}\.[a-z]{2,4}$#',$email )){
}else{
$test = true;
$err .= 'Verifier le mail !
';
}

if($test === false){
inscription($email,$user,$pass);
    }else{
echo $err .= 'les champs sont à saisir correctement
'; 
}

}else{
echo 'Les champs sont à saisir correctement
'; 
}
?>
<html>
<head>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>  
  <head>  
    <meta http-equiv="content-type" content="text/html; utf-8">  
    <meta name="generator" content="PSPad editor, www.pspad.com">  
    <title>Inscription
    </title>
    <style>
    
#divform{
text-align:center;
background-color:#eedddd;
}

#pform label{
background-color:#ddeeff;
width:25%;
padding:10px;
} 

#pform input{ 
background-color:#ffeedd;
width:25%;
padding:10px;
} 
    
</style>
  </head>
  
  
  

  
  S'inscrire :

  
<form Method="POST" Action="<?php echo htmlentities(trim($_SERVER['PHP_SELF']));?>">
      
        
<label>Pseudo :
        </label>


        


        
<label>Mot de Passe :
        </label>


        


        
<label>Email :
        </label>


        


        


        




      


    </form>


  
</html>


Bonne programmation !
0
Voici ma configuration virtualhost :


<VirtualHost *:80>
ServerName monsite
ServerAdmin webmaster@localhost

DocumentRoot /var/www/
<Directory />
Options FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
<Directory /var/www/>
Options -Indexes -FollowSymLinks
AllowOverride None
Order allow,deny
allow from all
</Directory>

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log

# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.

LogLevel warn

CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

J'ai enlevé tous les htacess du site mais sa ne marche toujours pas.
Mer id'avance :)
Amicalement
Jérôme
0
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
3 janv. 2013 à 09:27
bonjour
peut être pdo pas ou mal chargé ...
j'ai lu ça en vitesse
Tapez le texte de l'url ici.
et ça Tapez le texte de l'url ici.
essaie avec le vieux connecteur
mysql_connect()
mysql_select_db()
pour en savoir plus
Bonne programmation !
0
En faite, je crois que c'est la fonction mail qui plante car j'ai déjà réussi a me connecté comme ça mais sans le mail et le uuid. Donc j’essaie d'installer un serveur smtp :)
Merci, j’envoie ça dès que je trouve mais j'ai déjà cherché hier et ça ne marche toujours pas ...
Amicalement
Jérôme
0
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
3 janv. 2013 à 11:11
il faut voir regardes ton php.ini
si le mail est le serveur sont paramétrés
[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP = smtp.neuf.fr
; http://php.net/smtp-port
smtp_port = 25

; For Win32 only.
; http://php.net/sendmail-from
sendmail_from = xxx@xxx.fr

Bonne programmation !
0
Salut :),
Je n'avais pas vu la deuxième page, bref ...
Pour l'instant dans mon php.ini
J'ai
SMTP = rudelune.fr (c'est mon site web)
; http://php.net/smtp-port
smtp_port = 25

; For Win32 only.
; http://php.net/sendmail-from
sendmail_from = inscription@rudelune.fr


; For Unix only. You may supply arguments as well
(default: "sendmail -t -i").
; http://php.net/sendmail-path
sendmail_path = /usr/sbin/sendmail
Voilà ^^, merci d'avance
Amicalement
Jérôme
0
Je viens de faire un test (en passant j'ai postfx installé)
j'ai fait un test.php
qui contient ceci :
<?php
$headers ='From: "jerome"'."\n";
    $headers .='Reply-To: inscription@rudelune.fr'."\n";
    $headers .='Content-Type: text/html; charset="iso-8859-1"'."\n";
    $headers .='Content-Transfer-Encoding: 8bit';
$message ='<html><head><title>Un titre ici</title></head>Un message de test</html>'; 
if(mail('monadresse@truc.com', 'Sujet', $message, $headers))
     {
          echo 'Le message a été envoyé';
     }
     else
     {
          echo 'Le message n\'a pu être envoyé';
     } 
mail('monadresse@truc.com', 'monessai', 'message');
?>


Lorsque je vais sur cette page, sa me met "Le message a été envoyé" mais lorsque je vais sur la messagerie, je n'ai pas de nouveau message ???
Voilà,
Merci d'avance
Amicalement
Jérôme
0
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
3 janv. 2013 à 14:20
étrange
chez moi les deux fonctionnent
tu testes en local ou chez un hebergeur


Bonne programmation !
0
Re :),
Je test chez mon hébergeur en utilisant apache2, php5 sur un serveur dédié debian.
Voilà, à bientôt
Amicalement
Jérôme :)
0
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
3 janv. 2013 à 14:48
je lui poserai la question ... bonne suite


Bonne programmation !
0
Re,
Je viens de testé en local, je n'ai plus d'erreur 500 (ce qui prouve que c'est bien la fonction mail() qui plante) mais le script s’arrête à "check smtp".
Je ne sais pas pourquoi ??
Voilà, merci d'avance :)
Amicalement
Jérôme
0
Rejoignez-nous