Bonjour,

Voilà j'ai créé avec l'aide de ce forum un formulaire afin d'envoyer un mail avec un fichier. Sur ce point tout fonctionne, maintenant je voudrais qu'il remplisse aussi ma base de données. Pouvez-vous regarder mon code et me dire ce que je fais de mal?
En vous remerciant

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Document sans titre</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf8">
<meta http-equiv="refresh" content="0; URL=CLN.php">
</head>
<?php
// destinataire du message : son email et son nom
$to = "voirie@cc-cln.fr";
$toname = "Côte Landes Nature";
 
// expéditeur du message : son email et son nom
$from = $_POST['ville'];
 
 
// sujet du message
$subject = "Déclaration d'incident";
 
// associer un label à chaque donnée récupérée du formulaire dans un tableau 
$fields = array();
$fields{"voie"} = "\nVoie";
$fields{"code"} = "\nCode";
$fields{"incident"} = "\nMessage";
$fields{"traitement"} = "\nTraitement";
 
 
 
 
// le répertoire où son envoyés les fichiers uploadés 
$chemin_destination = 'uploads/';
 
// et la commande pour les mettre dans le bon répertoire 
move_uploaded_file($_FILES[fichier]['tmp_name'], $chemin_destination.$_FILES[fichier]['name']);
 
 
// création du corps du message, en texte brut dans mon cas
$body = "Message de CLN:\n\n"; 
foreach($fields as $a => $b){ $body .= sprintf("%20s: %s",$b,$_REQUEST[$a]); }  
 
//j'appelle la classe PHPMailer
   require('PHPMailer\_lib\class.phpmailer.php');
 
// On créé une nouvelle instance de la classe
   $mail = new PHPMailer();
 
// De qui vient le message, e-mail puis nom
   $mail->From = $from;
   $mail->FromName = $name;
 
// Définition du sujet/objet
   $mail->Subject = $subject; 
 
// Le message est en UTF-8 
   $mail->CharSet = 'UTF-8';
 
// On définit le corps du message
   $mail->Body = $body;
 
// j'associe les pièces jointes 
   $mail->AddAttachment("uploads/".$_FILES[fichier]['name']);
 
 
// le destinataire
   $mail->AddAddress($to, $toname);
   $mail->AddAddress("technique@cc-cln.fr", "VOIRIE");
 
// Pour finir, j'envoi l'e-mail
   $mail->send();   
 
//Remplir la base de données
// Connexion à la base de données
  try
{
   $bdd = new PDO('mysql:host=localhost;dbname=voirie;charset=utf8', 'root', 'cln40260');
}
catch(Exception $e)
{
        die('Erreur : '.$e->getMessage());
}
 
// On ajoute une entrée dans la table incident
$req = $bdd->prepare('INSERT INTO incident(voirie_id, voirie_code, voirie_ville, voirie_incident, voirie_traitement) VALUES("",:code, :ville, :incident, :traitement)');
$req->execute(array(
   'code' => $code,
   'ville' => $ville,
   'incident' => $incident,
   'traitement' => $traitement
 
 
   ));
 
echo 'L\'incident a bien été ajouté !';
 
 
?>