Copier donnees d'un formulaire dans 2 table BD et envoi mail

Résolu
oliviernapoleon Messages postés 21 Date d'inscription   Statut Membre Dernière intervention   -  
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour
je suis entraine de mettre en place un formulaire qui me permettra d'enregistrer les données dans deux tables de la mm BD et les envoyer les mm données par mails a X et Y (X et Y sont des personnes ).

1 - lorsqu'on clique sur le bouton enregistrer du formulaire -----> les données (n_sav, date_appel..........., nom_technicien, contrat) sont envoyés vers les tables réception et rapports ensuite les mm données sont envoyés par mail vers le nom_technicien et nom_responsable.

2 - mon soucis est que les données n'arrivent pas vers la table RAPPORTS mais la table réception reçois les données

3 - je ne sais pas comment faire pour les envois de mail

aide moi svp

voici le code :

<?php

session_start();

$connection = mysqli_connect("localhost","root","","adminpanel") or die("Erreur de connexion.");

if(isset($_POST['save_btn']))
{
    $n_sav = $_POST['n_sav']; 
    $date_appel = $_POST['date_appel'];
    $nom_client = $_POST['nom_client'];
    $n_contrat = $_POST['n_contrat'];
    $contact = $_POST['contact'];
    $messages = $_POST['messages'];
    $repere = $_POST['repere'];
    $nombre_panne = $_POST['nombre_panne'];
    $nom_responsable = $_POST['nom_responsable'];
    $nom_technicien = $_POST['nom_technicien'];
    $contrat = $_POST['contrat'];
    
    $query = "INSERT INTO reception (n_sav,date_appel,nom_client,n_contrat,contact,messages,repere,nombre_panne,nom_responsable,nom_technicien,contrat) VALUES ('$n_sav','$date_appel','$nom_client','$n_contrat','$contact','$messages','$repere','$nombre_panne','$nom_responsable','$nom_technicien','$contrat')";
    
    $query_run = mysqli_query($connection, $query);
    
    if($query_run) {

        $query2 = "INSERT INTO rapports (n_sav,date_appel,nom_client,n_contrat,contact,messages,repere,nombre_panne,nom_responsable,nom_technicien,contrat) VALUES ('$n_sav','$date_appel','$nom_client','$n_contrat','$contact','$messages','$repere','$nombre_panne','$nom_responsable','$nom_technicien','$contrat')";
        
        $result = mysqli_query($connection, $query2);

        $_SESSION['success'] = "Panne enregistrée";
        header("Location: reception.php");
    }else{
        $_SESSION['status'] = "Panne non enregistrée";
        header("Location: reception.php");  
    }
}

?>
A voir également:

3 réponses

yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
bonjour,
la première chose à faire, me semble-t-il, est de tester si la seconde insertion se passe bien.
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Bonjour,

Commence par désactiver les lignes de redirection afin de pouvoir visualiser les éventuelles erreurs.
Active ensuite l'affichage des erreurs PHP. ( voir le contenu de ce lien : https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code )


Modifie également un peu ton code pour intercepter les éventuelles erreurs mysqli
en utilisant, pour tes requêtes, la forme :
$result = mysqli_query($connection, $query2);
if ($result) {
    printf("Message d'erreur : %s\n", mysqli_error($connection));
}


0
oliviernapoleon Messages postés 21 Date d'inscription   Statut Membre Dernière intervention  
 
bjr merci pour ta réponse mais j'ai essayer separement c'est a dire :
<?php

session_start();

$connection = mysqli_connect("localhost","root","","adminpanel") or die("Erreur de connexion.");

if(isset($_POST['save_btn']))
{
    $n_sav = $_POST['n_sav']; 
    $date_appel = $_POST['date_appel'];
    $nom_client = $_POST['nom_client'];
    $n_contrat = $_POST['n_contrat'];
    $contact = $_POST['contact'];
    $messages = $_POST['messages'];
    $repere = $_POST['repere'];
    $nombre_panne = $_POST['nombre_panne'];
    $nom_responsable = $_POST['nom_responsable'];
    $nom_technicien = $_POST['nom_technicien'];
    $contrat = $_POST['contrat'];
    
    $query2 = "INSERT INTO rapports (n_sav,date_appel,nom_client,n_contrat,contact,messages,repere,nombre_panne,nom_responsable,nom_technicien,contrat) VALUES ('$n_sav','$date_appel','$nom_client','$n_contrat','$contact','$messages','$repere','$nombre_panne','$nom_responsable','$nom_technicien','$contrat')";
        
        $query_run= mysqli_query($connection, $query2);
    
    if($query_run) {

       
        $_SESSION['success'] = "Panne enregistrée";
        header("Location: reception.php");
    }else{
        $_SESSION['status'] = "Panne non enregistrée";
        header("Location: reception.php");  
    }
}

?>



c'est toujours la mm chose
il n'arrive pas a copier dans la table rapports
jajoute :
$id_reception = $_POST['id_reception'];

et
$query2 = "INSERT INTO rapports (id_reception,n_sav,date_appel,nom_client,n_contrat,contact,messages,repere,nombre_panne,nom_responsable,nom_technicien,contrat) VALUES ('$id_reception ','$n_sav','$date_appel','$nom_client','$n_contrat','$contact','$messages','$repere','$nombre_panne','$nom_responsable','$nom_technicien','$contrat')";

toujours pareil
dit moi ou se trouve mon erreur
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Tant que tu n'auras pas viré les redirections et activé l'affichage des erreurs PHP .. tu ne trouveras pas
Appliques ce que je t'ai déjà répondu dans mon premier message et reviens nous voir ensuite avec le résultat.....
Sans ça;.. aucune aide supplémentaire ne te sera apporté.
0