PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 13-08-2009 16:14:38

palisse
Membre
Inscription : 13-08-2009
Messages : 1

Problème pour enregistrer dans BD, puis récuperer et envoyer mail

Bonjour,

Je ne sais si le titre est compréhensible mais je fais un site pour récupérer dans une base de données des infos d'un formulaire. Une fois envoyé, je voudrais:

1er:  insérer dans la base de données les infos

puis 2e: récupérer le dernier id enregistré

puis enfin 3e: avec les infos récupérées, envoyer un mail avec ces infos placées dans un texte.

Voici mon code qui ne marche pas:

<?php
ob_start();

  $cnx = mysql_connect( "localhost", "root", "" ) ;
  $db  = mysql_select_db( "contact" ) ;

 
 if (isset($_POST['submit']))

  //récupération des valeurs des champs:
  //nom:
  $titre= $_POST["titre"];
  $nom= strip_tags($_POST["nom"]);
  $responsabilite= $_POST["responsabilite"];
  $eleve= strip_tags($_POST["eleve"]);
  $classe= $_POST["classe"];
  $email= $_POST["email"];
  $prof= $_POST["prof"];
  $date1= $_POST["date1"];
  $heure1= $_POST["heure1"];
  $date2= $_POST["date2"];
  $heure2= $_POST["heure2"];
 
 

  //création de la requête SQL:
  $sql = "INSERT INTO rendezvous (titre, nom, responsabilite, eleve, classe, email, prof, date1, heure1, date2, heure2) VALUES ('$_POST[titre]', '$nom', '$responsabilite', '$eleve', '$classe', '$email', '$prof', '$date1', '$heure1', '$date2', '$heure2')" ;
 
  //exécution de la requête SQL:
  $requete = mysql_query($sql, $cnx) or die( mysql_error() ) ;
 
 // on récupère le dernier numéro inséré, soit le numéro de tibo  
$dernier_id = mysql_insert_id();


// on prépare la requête pour récupérer le numero du propriétaire
$sql = "SELECT * FROM rendezvous WHERE id = '$dernier_id'";
$requete = mysql_query($sql, $cnx) or die( mysql_error() );

if($requete)
{
// Recuperation des resultats
while($row = mysql_fetch_row($requete))
{
$id = $row["id"];
$titre = $row["titre"];
$nom = $row["nom"];
$responsabilite = $row["responsabilite"];
$eleve = $row["eleve"];
$classe = $row["classe"];
$email = $row["email"];
$prof = $row["prof"];
$date1 = $row["date1"];
$heure1 = $row["heure1"];
$date2 = $row["date2"];
$heure2 = $row["heure2"];
$ref = $row["ref"];
$dateheure = $row["dateheure"];
}
 
  // envoi email au secretariat
   /* Construction du message */
        $msg  = " BONJOUR MR / MME LE PROFESSEUR DE $prof.
   
        UNE DEMANDE DE RENDEZ-VOUS A ETE ENVOYEE PAR LE SITE DE SAINT ELME:
   
    $titre $nom   ($email)
   
    $responsabilite  DE  $eleve, ELEVE EN CLASSE DE $classe.
   
        SOUHAITE VOUS RENCONTRER SOIT:
     
                - LE $date1 A $heure1
                     ou
                - LE $date2 A $heure2
   
        MERCI DE CONFIRMER UN DE CES CHOIX AUPRES DU SECRETARIAT."
;
       
   
        /* Envoi de l'e-mail */
        mail("palisse@numericable.fr", "DEMANDE DE RENDEZ-VOUS PROF", $msg)

 
  //affichage des résultats, pour savoir si l'insertion a marchée:
  if($requete)
 
  {  header('Location: envoimessage.php');
      exit;
  }
  else
  {
    echo("L'envoi du message a échoué") ;
  }
 
  mysql_close($cnx);

ob_end_flush();
?>

J'espère que vous pourrez m'aider... étant un peu novice dans le php...

Merci

Hors ligne

#2 13-08-2009 17:09:37

moijhd
Membre
Inscription : 13-06-2009
Messages : 167

Re : Problème pour enregistrer dans BD, puis récuperer et envoyer mail

Bonjour,

Si je ne me trompe pas, tu veux envoyer par mail les informations que l'utilisateur vien de saisir : par conséquent, les informations, tu n'as pas besoin d'aller les chercher, mais seulement de les utiliser depuis le $_POST ?

Hors ligne

#3 13-08-2009 17:34:36

mcAllan
Mowdérateur
Lieu : Châteaurenard en Provence
Inscription : 08-05-2009
Messages : 269

Re : Problème pour enregistrer dans BD, puis récuperer et envoyer mail

Salut,

C'est quoi qui ne marche pas ?
Que se passe-t-il ?
Y a t-il un message d'erreur ?
Sinon, comme moijhd, pourquoi récupérer des infos que tu as déjà ?

de plus :


$requete = mysql_query($sql, $cnx) or die( mysql_error() );
if($requete)
{
 

Cela ne sert à rien car si $requete est "false" le script va s'arrêter donc ce n'est pas la peine de le tester.


Promotion de PPOO : Programmation Propre Orientée Objet !!
Recommande AAO : Apéritif Avec Olives...
Glop, glop

Hors ligne

Pied de page des forums