Bonjour,
Merci par avance pour les personnes qui prendront le temps pour me répondre,
J'ai crée un formulaire sous html/php qui envoie des données vers une BDD Access. (via ODBC)
Le souci c'est que quand les données rentrées dans le formulaire comportent des caractères spéciaux comme des accents, ces données apparaissent bien dans Access MAIS par exemple "Agnès" se transforme en "Agnès".
En plus de cela, quand le formulaire comporte des guillemets simples, dans ce cas là, ça ne veut pas envoyer les données et ça me donne une erreur de ce type:
J'ai donc un double problème, d'un côté avec les guillemets et de l'autre avec les autres caractères spéciaux (les données s'enregistrent bien dans la base mais les caractères spéciaux ne sont pas pris en compte);"Warning: odbc_exec(): SQL error: [Microsoft][Pilote ODBC Microsoft Access] Erreur de syntaxe (op�rateur absent) dans l'expression ��'l'','l''��., SQL state 37000 in SQLExecDirect in I:\Bdps\QA_USINE\ECHANGE\AQ Projet\Projet TPP\ServeurTPP\TPP\form\sauvegarde_num.php on line 31
Erreur de SQL"
Voici mon code pour l'envoi des données dans Access (appelée base TPP)
Merci beaucoup par avance,
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 <?php //Connexion à la base TPP $conn = odbc_connect('TPP','','') or die('Erreur de connexion'); $verif = 1; //message si pas bien rempli Foreach ($_GET as $cle=>$valeur){ if(!$valeur){ echo "Veuillez saisir le champ ".str_replace("_"," ",$cle). ". Mettez bien N/A pour les champs non applicables."; echo "<br> Veuillez revenir en arrière pour compléter la demande."; $verif = 0; exit; } } //execution si bien rempli if($verif == 1){ $Valeurs = "("; Foreach ($_GET as $cle=>$valeur){ $Valeurs = $Valeurs ."'".$valeur."',"; } $Valeurs=substr($Valeurs, 0, -1); //Savegarder la demande dans la base de données $sql = "Insert INTO DemandeNumero (Nom,Prenom,Service,Telephone,TypeDocument,VPassocie,PRVassocie,Phase,NouvelleRev,RevPrecedente,Titre,Auteur,NumCC,NumProjet,Pole,Equipement,Produit) Values ".$Valeurs.")"; $rs = odbc_exec($conn, $sql); if(!$rs){ exit("Erreur de SQL"); } } ?>
Partager