Formulaire de contact session start
Posté : 23 mai 2013, 20:05
Bonjour à tous,
J'ai précédemment réussi à créer un espace membre qui inclut l'inscription, la connexion et la déconnexion.
J'aimerais faire en sorte que le pseudo de la personne connecté et son mail, viennent automatiquement s'insérer lorsque le membre accède a ma page "contact".
Voici le code de ma page contact.php actuelle :
Mais je ne vois pas comment adapter le reste de monde code.
Un peu d'aide ne serais pas de refus
.
Merci pour votre attention.
Sincèrement.
J'ai précédemment réussi à créer un espace membre qui inclut l'inscription, la connexion et la déconnexion.
J'aimerais faire en sorte que le pseudo de la personne connecté et son mail, viennent automatiquement s'insérer lorsque le membre accède a ma page "contact".
Voici le code de ma page contact.php actuelle :
<?php session_start(); ?>
<!DOCTYPE HTML>
<html>
<link rel="shortcut icon" title="crobara2bal" type="image/png" href="mafavicon.png" />
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="description" content="Vous cherchez à contacter Crobara2bal envoyez nous votre message à partir du formulaire de contact." />
<meta name="keywords" content="contact, contactez-nous, message, formulaire, suggestion, site, objet" />
<title>Contact / Contacter Crobara2bal, ses artistes, webmaster, etc...</title>
<link href="css1.css" rel="stylesheet" type="text/css">
</head>
<body>
<div id="container">
<?php include("header.inc.php"); ?>
<?php include("menus.inc.php"); ?>
<div id="corpscontact">
<div id="retourselect">
<a href="contact.php" title="recharger la page"><p class="titre1">Contact</p></a>
</div>
<div id="formulairecontact">
<p class="texte3">Formulaire de contact</p>
<form id="formcontact" method="post" action="contact.php" enctype="multipart/form-data">
<p class="classconta"><label for="pseudo">Votre pseudo</label> : <br /><input type "text" name="pseudo" id="pseudo" placeholder="20 caractères maximum" size="30" maxlength="20" /></p>
<p class="classconta">
<label for"email">Votre E-mail : </label><br />
<input type="email" name="email" id="email" /></p>
<p class="classconta">
<label for="objet">Objet du message ?</label><br />
<select name="objet" id="objet">
<option value="apdsite">A propos du site</option>
<option value="demandedessin">Demande de Dessin</option>
<option value="dprofessionelle">Demande professionelle</option>
<option value="autre">Autre...</option>
</select>
</p>
<p class="classconta">
<label for="ameliorer">Votre message : </label><br />
<textarea name="message" id="message" row="10" clols="50"></textarea></p>
<p class="classconta"><input type="submit" value="Envoyer" /></p>
</form>
<?php
if(isset($_POST['pseudo'])) $pseudo=$_POST['pseudo'];
else $pseudo="";
if(isset($_POST['email'])) $email=$_POST['email'];
else $email="";
if(isset($_POST['objet'])) $objet=$_POST['objet'];
else $objet="";
if(isset($_POST['message'])) $message=$_POST['message'];
else $message="";
if(filter_var($email, FILTER_VALIDATE_EMAIL))
echo '<p class="classechovalide">Email valide !</p>';
else
echo '<p class="classechoerreur">Email non valide !</p>';
if(empty($pseudo) OR empty($email) OR empty($objet) OR empty($message))
{
echo '<p class="classechoerreur">Attention, vous devez remplir tous les champs</p>';
}
else
{
// connexion à la base
require_once("connexioncontact.inc.php");
// on écrit la requête sql
try
{
// Etape 1: On indique la requête à effectuer et on remplace les valeurs par des marqueurs textuels.
// Ton champ " id " est en auto increment, pas besoin de le renseigner dans la requête car
// MySQL va automatiquement lui attribuer une valeur.
$req = $bdd->prepare('INSERT INTO recu(pseudo, email, objet, message) VALUES(:pseudo,:email,:objet,:message)');
// Etape 2: On indique à PDO se que signifie chaque marqueurs et à quel variable il doit assigner chacun d'eux.
// Vu que ce sont 4 champs de texte on a pas besoin de renseigner le type de donnée, par défaut
// il considère ça comme des chaînes de caractères (PDO::PARAM_STR).
$req->bindValue(':pseudo', $pseudo);
$req->bindValue(':email', $email);
$req->bindValue(':objet', $objet);
$req->bindValue(':message', $message);
// Etape 3: On exécute la requête !
$req->execute();
}
catch (Exception $e)
{
die('Erreur : ' . $e->getMessage());
}
// on affiche le résultat pour le visiteur
echo '<p class="classechovalide">Votre message à bien été envoyé !</p>';
}
?>
</div>
</div>
<?php include("footer.inc.php"); ?>
</div>
</body>
</html>
Je sais qu'il faut absolument utiliser le session_start avant tout code pour garder en mémoire la connexion du membre.Mais je ne vois pas comment adapter le reste de monde code.
Un peu d'aide ne serais pas de refus
Merci pour votre attention.
Sincèrement.