Bonjour,
Je ne suis pas développeur mais je dois effectuer un très simple formulaire qui insère des données dans ma BDD (donc relativement très très simple :))
Petit problème que je n’avais pas eu lors d’autres tests sur des trucs perso : si mon visiteur insère un ’ dans un champ, aucune insertion se fait dans la bdd. En lisant des tutos j’ai cru comprendre que la fonction “htmlspecialchars” pouvait résoudre ce problème.
Or ca ne marche pas et meme si je ne mets pas de ’ l’insertion ne se fait pas.
Une erreur de syntaxe ?
Voici ma page de traitement en php :
<?php
$var1 = htmlspecialchars($_POST['raison']);
$var2 = htmlspecialchars($_POST['adresse']);
$var3 = htmlspecialchars($_POST['contact']);
$var3 = htmlspecialchars($_POST['ville']);
$var4 = htmlspecialchars($_POST['tel']);
$var5 = htmlspecialchars($_POST['etage']);
$var6 = htmlspecialchars($_POST['elec']);
$var7 = htmlspecialchars($_POST['ether']);
$var8 = htmlspecialchars($_POST['ip']);
$var9 = htmlspecialchars($_POST['sel1']);
$var10 = htmlspecialchars($_POST['scan']);
$var11 = htmlspecialchars($_POST['scanmail']);
$var12 = htmlspecialchars($_POST['os']);
$var13 = htmlspecialchars($_POST['nombre']);
$var14 = htmlspecialchars($_POST['mailfai']);
$var15 = htmlspecialchars($_POST['smtp']);
$conn = mysqli_connect("localhost","root","root","app");
if (mysqli_connect_errno()) {
printf("Échec de la connexion : %s\n", mysqli_connect_error());
exit();
}
$req = $conn->query("INSERT INTO donnees (raison, adresse, ville, contact, tel, etage, elec, ether, ip, sel1, scan, scanmail, os, nombre, mailfai, smtp) VALUES( $var1, $var2, $var3, $var4, $var5, $var6, $var7, $var8, $var9, $var10, $var11, $var12, $var13, $var14, $var15)");
?>
<?php
header('Location: succes.php');
?>