Bonjour,
Je dispose d'une base de données créée avec Postgresql, et encodée en UTF-8.
Via du PHP, je souhaite insérer des données dans cette base.
Cependant, lorsque je souhaite insérer des données comportant des accents ou une apostrophe, cela ne fonctionne pas, j'obtiens une erreur portant sur l'insertion des données dans la base.
Je suis bien en UTF8 dans ma base, et le charset du code HTML l'est également.
Comment résoudre ce problème ?
Merci par avance.
Simon
Voici les codes que j'utilise :
Page 1 :
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 <?php session_start(); if (!isset($_SESSION['pseudo_prof'])) { //$_SESSION['login'] n'existe pas le visteur est envoyer sur la page de login header('Location: index.php'); exit(); } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"> <head> <title>Adressage et Routage</title> <meta http-equiv="content-type" content="application/xhtml+xml; charset=UTF-8" /> <link rel="stylesheet" href="images/Colourise.css" type="text/css" /> </head> <body> <div id="wrap"> <!--header --> <div id="header"> <br/> <br/> <br/> <br/> <br/> <font size=3> Veuillez remplir le formulaire suivant pour ajouter une question à choix multiples : </font> <br/> <form id="form1" name="form1" method="post" action="ajout_question_donnees.php"> <p> <label>Rentrez votre question : </label> <label for="Titre"></label> <input name="Titre" type="text" id="Titre" maxlength="300"/> </p> <p> <label>Rentrez votre réponse JUSTE : </label> <input name="rep_juste" type="text" id="rep_juste" maxlength="300"/> <label>Rentrez votre réponse FAUSSE n°1 : </label> <input name="rep_fausse1" type="text" id="rep_fausse1" maxlength="300"/> <label>Rentrez votre réponse FAUSSE n°2 : </label> <input name="rep_fausse2" type="text" id="rep_fausse2" maxlength="300"/> <label>Rentrez votre réponse FAUSSE n°3 : </label> <input name="rep_fausse3" type="text" id="rep_fausse3" maxlength="300"/> <input type="submit" name="Valider" id="Valider" value="Envoyer"> </p> </form> <a href="administration.php">Retour</a> <BR/><BR/><BR/> </div> <div id="nav"> <ul> <li id="current"><a href="index.php">Accueil</a></li> <li><a href="choix.php">Compte</a></li> <li><a href="cours.php">Accès Cours</a></li> <li><a href="quiz.php">Accès Quiz</a></li> <li><a href="stats.php">Statistiques</a></li> <li><a href="administration.php">Administration</a></li> <li><a href="deconnexion.php">Déconnexion</a></li> </ul> </div> </body> </html>
Page 2 :
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 <?php session_start(); if (!isset($_SESSION['pseudo_prof'])) { //$_SESSION['login'] n'existe pas le visteur est envoyer sur la page de login header('Location: index.php'); exit(); } ?> <?php include('fct_con.php'); ?> <?php $titre = $_POST['Titre'] ; $rep_juste = $_POST['rep_juste']; $rep_fausse1 = $_POST['rep_fausse1']; $rep_fausse2 = $_POST['rep_fausse2']; $rep_fausse3 = $_POST['rep_fausse3']; $query2 = "INSERT INTO questions (intitule_question) VALUES ('".$titre."')"; $result2 = pg_query($query2) or die(); $query3 = "INSERT INTO reponses (intitule_reponse) VALUES ('".$rep_juste."')"; $result3 = pg_query($query3) or die(); $query4 = "INSERT INTO reponses_fausses (intitule_reponse_fausse) VALUES ('".$rep_fausse1."')"; $result4 = pg_query($query4) or die(); $query5 = "INSERT INTO reponses_fausses (intitule_reponse_fausse) VALUES ('".$rep_fausse1."')"; $result5 = pg_query($query5) or die(); $query6 = "INSERT INTO reponses_fausses (intitule_reponse_fausse) VALUES ('".$rep_fausse2."')"; $result6 = pg_query($query6) or die(); $query7 = "INSERT INTO reponses_fausses (intitule_reponse_fausse) VALUES ('".$rep_fausse3."')"; $result7 = pg_query($query7) or die(); header("Location: administration.php") ; ?>
Partager