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

Résolu/Fermé
oliviernapoleon Messages postés 21 Date d'inscription mercredi 8 septembre 2021 Statut Membre Dernière intervention 1 décembre 2021 - 21 sept. 2021 à 14:30
jordane45 Messages postés 38273 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 6 novembre 2024 - 21 sept. 2021 à 17:14
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 23312 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 6 novembre 2024 Ambassadeur 1 552
21 sept. 2021 à 14:50
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 38273 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 6 novembre 2024 4 696
21 sept. 2021 à 15:26
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 mercredi 8 septembre 2021 Statut Membre Dernière intervention 1 décembre 2021
Modifié le 21 sept. 2021 à 15:59
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 38273 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 6 novembre 2024 4 696
21 sept. 2021 à 17:14
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