Script php pour identification et redirection

Résolu
le_fermier Messages postés 63 Date d'inscription   Statut Membre Dernière intervention   -  
le_fermier Messages postés 63 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
Sur mon site html j'ai une page avec des fichier téléchargeables.
J'aimerais mettre en place une page intermédiaire avec un mini formulaire (nom, société, email) qui me permettrait de recevoir ces informations directement par email (sans base de données) et puis rediriger le visiteur sur la page qui contient mes documents téléchargeables.
L'idée est de connaitre tout ceux qui téléchargent mes documents.
Avez vous des scripts dans ce sens ? Merci pour votre aide


A voir également:

6 réponses

Dynamix Messages postés 202 Date d'inscription   Statut Membre Dernière intervention   76
 
Qu'est ce qu'il ne marche pas?

Je te conseille de te documenter pour essayer de comprendre un minmum ce que tu fais, sinon je pense que tu vas patauger.
1
avion-f16 Messages postés 19256 Date d'inscription   Statut Contributeur Dernière intervention   4 509
 
Utilise la balise <.code> (sans le point) sur CCM, sinon, ton code est illisible.
Je n'ai pas pris la peine de lire le code, mais inutile de mettre des ";" après les "}" qui ferment les "else".
1
Dynamix Messages postés 202 Date d'inscription   Statut Membre Dernière intervention   76
 
Bonjour,

je ne connais pas ton niveau en programmation mais le script ne serait pas difficile à réaliser.

1ère étape : le formulaire et l'envoi du mail.

Tu trouves des scripts tout fait incluant le formulaire et l'envoi du mail en php sur le net. Tu l'adaptes un peu à ta sauce et voilà.

Un exemple : http://www.php-astux.info/script-formulaire-contact.php

Ensuite la 2ème étape serait de donner l'accès aux documents.

Là ça dépend de comment tu veux procéder, veux-tu une redirection vers une page spécifique ou alors des liens qui se mettent sur la page une fois le mail envoyé etc...
0
avion-f16 Messages postés 19256 Date d'inscription   Statut Contributeur Dernière intervention   4 509
 
0

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

Posez votre question
le_fermier Messages postés 63 Date d'inscription   Statut Membre Dernière intervention   5
 
salut les amis,
merci pour vos réponses :)
j'ai essayé le script de la 1ere réponse mais ça marche pas encore,
voila ce que j'ai écris :

## page 1 : index.html

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Bienvenu sur mon site personne</title>
<!--[if IE]>
<style type="text/css">@import url(<link rel="stylesheet" type="text/css" href="css/modele-IE.css" media="screen">);</style>
<style type="text/css">@import url(<link rel="stylesheet" type="text/css" href="css/style-IE.css" media="screen">);</style>
<![endif]-->
<link rel="stylesheet" type="text/css" href="css/modele.css" media="screen">
<link rel="stylesheet" type="text/css" href="css/style.css" media="screen">
</head>

<body onload="load()" onunload="GUnload()">
<!--gabarit-->
<div id="gabarit">
<div id="contener">
<td class="div460" valign="top">
<h1><strong>Identification</strong></h1>
<form method="post" action="envoi_identifiant.php">
<ul style="list-style:none;">
<p>Pour accèder aux informations demandées, veuillez remplir le formulaire suivant.</p><br>
<li> Nom</li>
<li><input type="text" name="nom" size="35"></li>
<li>Téléphone</li>
<li><input type="text" name="telephone" size="35"></li>
<li>e-mail</li>
<li><input type="text" name="email" size="35"></li>
<li>Société</li>
<li><input type="text" name="societe" size="35"></li>
<li>Votre commentaire ou message</li>
<li><textarea rows="5" name="message" cols="52"></textarea></li>
<li><br><input type="submit" value="valider"></li>
</ul>
</form>
</td>
</tr><
/table>

</div>
</div>
</body>
</html>


""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

## la 2eme page du traitement : envoi_identifiant.php


<?php
/*
********************************************************************************************
CONFIGURATION
********************************************************************************************
*/
// destinataire est votre adresse mail. Pour envoyer à plusieurs à la fois, séparez-les par une virgule
$destinataire = 'monemail@gmail.com';

// copie ? (envoie une copie au visiteur)
$copie = 'non'; // 'oui' ou 'non'

// Messages de confirmation du mail
$message_envoye = "Votre message nous est bien parvenu !";
$message_non_envoye = "L'envoi du mail a échoué, veuillez réessayer SVP.";

// Messages d'erreur du formulaire
$message_erreur_formulaire = "Vous devez d'abord <a href=\"index.html\">remplir le formulaire</a>.";
$message_formulaire_invalide = "Vérifiez que tous les champs soient bien remplis et que l'email soit sans erreur.";

/*
********************************************************************************************
FIN DE LA CONFIGURATION
********************************************************************************************
*/

// on teste si le formulaire a été soumis
if (!isset($_POST['envoi']))
{
// formulaire non envoyé
echo '<p>'.$message_erreur_formulaire.'</p>'."\n";
}
else
{
/*
* cette fonction sert à nettoyer et enregistrer un texte
*/
function Rec($text)
{
$text = trim($text); // delete white spaces after & before text
if (1 === get_magic_quotes_gpc())
{
$stripslashes = create_function('$txt', 'return stripslashes($txt);');
}
else
{
$stripslashes = create_function('$txt', 'return $txt;');
}

// magic quotes ?
$text = $stripslashes($text);
$text = htmlspecialchars($text, ENT_QUOTES); // converts to string with " and ' as well
$text = nl2br($text);
return $text;
};

/*
* Cette fonction sert à vérifier la syntaxe d'un email
*/
function IsEmail($email)
{
$pattern = "^([a-z0-9_]|\\-|\\.)+@(([a-z0-9_]|\\-)+\\.)+[a-z]{2,7}$";
return (eregi($pattern,$email)) ? true : false;
};

// formulaire envoyé, on récupère tous les champs.
$nom = (isset($_POST['nom'])) ? Rec($_POST['nom']) : '';
$telephone = (isset($_POST['telephone'])) ? Rec($_POST['telephone']) : '';
$email = (isset($_POST['email'])) ? Rec($_POST['email']) : '';
$societe = (isset($_POST['societe'])) ? Rec($_POST['societe']) : '';
$message = (isset($_POST['message'])) ? Rec($_POST['message']) : '';

// On va vérifier les variables et l'email ...
$email = (IsEmail($email)) ? $email : ''; // soit l'email est vide si erroné, soit il vaut l'email entré

if (($nom != '') && ($telephone != '') && ($email != '') && ($societe != '') && ($message != ''))
{
// les 4 variables sont remplies, on génère puis envoie le mail
$headers = 'From: '.$nom.' <'.$email.'>' . "\r\n";

// envoyer une copie au visiteur ?
if ($copie == 'oui')
{
$cible = $destinataire.','.$email;
}
else
{
$cible = $destinataire;
};

// Remplacement de certains caractères spéciaux
$message = str_replace("'","'",$message);
$message = str_replace("'","'",$message);
$message = str_replace(""",'"',$message);
$message = str_replace('<br>','',$message);
$message = str_replace('<br />','',$message);
$message = str_replace("<","<",$message);
$message = str_replace(">",">",$message);
$message = str_replace("&","&",$message);

// Envoi du mail
if (mail($cible, $objet, $message, $headers))
{
echo '<p>'.$message_envoye.'</p>'."\n";
}
else
{
echo '<p>'.$message_non_envoye.'</p>'."\n";
};
}
else
{
// une des 3 variables (ou plus) est vide ...
echo '<p>'.$message_formulaire_invalide.' <a href="index.html">Retour au formulaire</a></p>'."\n";
};
}; // fin du if (!isset($_POST['envoi']))
?>
0
le_fermier Messages postés 63 Date d'inscription   Statut Membre Dernière intervention   5
 
Page index.html (le formulaire) :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Bienvenu sur mon site personne</title>
<!--[if IE]>
<style type="text/css">@import url(<link rel="stylesheet" type="text/css" href="css/modele-IE.css" media="screen">);</style>
<style type="text/css">@import url(<link rel="stylesheet" type="text/css" href="css/style-IE.css" media="screen">);</style>
<![endif]-->
<link rel="stylesheet" type="text/css" href="css/modele.css" media="screen">
<link rel="stylesheet" type="text/css" href="css/style.css" media="screen">
</head>

<body onload="load()" onunload="GUnload()">
<!--gabarit-->
<div id="gabarit">
<div id="contener">
<td class="div460" valign="top">
<h1><strong>Identification</strong></h1>
<form method="post" action="envoi_identifiant.php">
<ul style="list-style:none;">
<p>Pour accèder aux informations demandées, veuillez remplir le formulaire suivant.</p><br>
<li> Nom</li>
<li><input type="text" name="nom" size="35"></li>
<li>Téléphone</li>
<li><input type="text" name="telephone" size="35"></li>
<li>e-mail</li>
<li><input type="text" name="email" size="35"></li>
<li>Société</li>
<li><input type="text" name="societe" size="35"></li>
<li>Votre commentaire ou message</li>
<li><textarea rows="5" name="message" cols="52"></textarea></li>
<li><br><input type="submit" value="valider"></li>
</ul>
</form>
</td>
</tr><
/table>

</div>
</div>
</body>
</html> 


Page envoi_identifiant.php (traitement)

<?php
/*
********************************************************************************************
CONFIGURATION
********************************************************************************************
*/
// destinataire est votre adresse mail. Pour envoyer à plusieurs à la fois, séparez-les par une virgule
$destinataire = 'monemail@gmail.com';

// copie ? (envoie une copie au visiteur)
$copie = 'non'; // 'oui' ou 'non'

// Messages de confirmation du mail
$message_envoye = "Votre message nous est bien parvenu !";
$message_non_envoye = "L'envoi du mail a échoué, veuillez réessayer SVP.";

// Messages d'erreur du formulaire
$message_erreur_formulaire = "Vous devez d'abord <a href=\"index.html\">remplir le formulaire</a>.";
$message_formulaire_invalide = "Vérifiez que tous les champs soient bien remplis et que l'email soit sans erreur.";

/*
********************************************************************************************
FIN DE LA CONFIGURATION
********************************************************************************************
*/

// on teste si le formulaire a été soumis
if (!isset($_POST['envoi']))
{
// formulaire non envoyé
echo '<p>'.$message_erreur_formulaire.'</p>'."\n";
}
else
{
/*
* cette fonction sert à nettoyer et enregistrer un texte
*/
function Rec($text)
{
$text = trim($text); // delete white spaces after & before text
if (1 === get_magic_quotes_gpc())
{
$stripslashes = create_function('$txt', 'return stripslashes($txt);');
}
else
{
$stripslashes = create_function('$txt', 'return $txt;');
}

// magic quotes ?
$text = $stripslashes($text);
$text = htmlspecialchars($text, ENT_QUOTES); // converts to string with " and ' as well
$text = nl2br($text);
return $text;
};

/*
* Cette fonction sert à vérifier la syntaxe d'un email
*/
function IsEmail($email)
{
$pattern = "^([a-z0-9_]|\\-|\\.)+@(([a-z0-9_]|\\-)+\\.)+[a-z]{2,7}$";
return (eregi($pattern,$email)) ? true : false;
};

// formulaire envoyé, on récupère tous les champs.
$nom = (isset($_POST['nom'])) ? Rec($_POST['nom']) : '';
$telephone = (isset($_POST['telephone'])) ? Rec($_POST['telephone']) : '';
$email = (isset($_POST['email'])) ? Rec($_POST['email']) : '';
$societe = (isset($_POST['societe'])) ? Rec($_POST['societe']) : '';
$message = (isset($_POST['message'])) ? Rec($_POST['message']) : '';

// On va vérifier les variables et l'email ...
$email = (IsEmail($email)) ? $email : ''; // soit l'email est vide si erroné, soit il vaut l'email entré

if (($nom != '') && ($telephone != '') && ($email != '') && ($societe != '') && ($message != ''))
{
// les 4 variables sont remplies, on génère puis envoie le mail
$headers = 'From: '.$nom.' <'.$email.'>' . "\r\n";

// envoyer une copie au visiteur ?
if ($copie == 'oui')
{
$cible = $destinataire.','.$email;
}
else
{
$cible = $destinataire;
};

// Remplacement de certains caractères spéciaux
$message = str_replace("'","'",$message);
$message = str_replace("'","'",$message);
$message = str_replace(""",'"',$message);
$message = str_replace('<br>','',$message);
$message = str_replace('<br />','',$message);
$message = str_replace("<","<",$message);
$message = str_replace(">",">",$message);
$message = str_replace("&","&",$message);

// Envoi du mail
if (mail($cible, $objet, $message, $headers))
{
echo '<p>'.$message_envoye.'</p>'."\n";
}
else
{
echo '<p>'.$message_non_envoye.'</p>'."\n";
};
}
else
{
// une des 3 variables (ou plus) est vide ...
echo '<p>'.$message_formulaire_invalide.' <a href="index.html">Retour au formulaire</a></p>'."\n";
};
}; // fin du if (!isset($_POST['envoi']))
?>
0