Mauvais encodage requête sql

Fermé
Utilisateur anonyme - 26 oct. 2006 à 22:52
sebsauvage Messages postés 32893 Date d'inscription mercredi 29 août 2001 Statut Modérateur Dernière intervention 21 octobre 2019 - 27 oct. 2006 à 10:40
bonjour
j'utilise les pages dynamiques de dreamweaver mx, et easy php pour une application. j'ai la surprise de m'aperçevoir que les caractères avec accent le é ou le è se transforment en point d'interrogation ? sur internet, en local et sur mon hébergeur free.

la méta dans ma page est: <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
Une petite précision, le résultat en html est correct, ce qui pose problème c'est l'orthographe de mes requêtes sql.
exemple:http://ipmusicstore.free.fr/public/catalogue.php?VARtheme=1&VARtitre=&Submit=AFFICHER
voici ma requête:
<?php if(!isset($_GET['VARtheme'])) $_GET['VARtheme']=1;//init de VARtheme si non déclaré ?>
<?php require_once('../Connections/ConnexionBoutiquemx.php'); ?>
<?php
mysql_select_db($database_ConnexionBoutiquemx, $ConnexionBoutiquemx);
$query_rsTheme = "SELECT * FROM rubriques ORDER BY theme ASC";
$rsTheme = mysql_query($query_rsTheme, $ConnexionBoutiquemx) or die(mysql_error());
$row_rsTheme = mysql_fetch_assoc($rsTheme);
$totalRows_rsTheme = mysql_num_rows($rsTheme);

$coltitre_rsCatalogue = "mehari";
if (isset($_GET['VARtitre'])) {
$coltitre_rsCatalogue = (get_magic_quotes_gpc()) ? $_GET['VARtitre'] : addslashes($_GET['VARtitre']);
}
$coltheme_rsCatalogue = "1";
if (isset($_GET['VARtheme'])) {
$coltheme_rsCatalogue = (get_magic_quotes_gpc()) ? $_GET['VARtheme'] : addslashes($_GET['VARtheme']);
}
mysql_select_db($database_ConnexionBoutiquemx, $ConnexionBoutiquemx);
$query_rsCatalogue = sprintf("SELECT rubriques.theme, articles.reference, articles.titre, articles.auteur, articles.prix FROM rubriques, articles WHERE articles.rubriqueID=%s AND rubriques.ID=articles.rubriqueID AND articles.titre LIKE '%%%s%%'", $coltheme_rsCatalogue,$coltitre_rsCatalogue);
$rsCatalogue = mysql_query($query_rsCatalogue, $ConnexionBoutiquemx) or die(mysql_error());
$row_rsCatalogue = mysql_fetch_assoc($rsCatalogue);
$totalRows_rsCatalogue = mysql_num_rows($rsCatalogue);
?>
qu'en pensez-vous ? Merci pour votre réponse.

1 réponse

sebsauvage Messages postés 32893 Date d'inscription mercredi 29 août 2001 Statut Modérateur Dernière intervention 21 octobre 2019 15 659
27 oct. 2006 à 10:40
Je n'y connais rien en PHP, mais voici un document que tout développeu devrait avoir lu:
https://sebsauvage.net/python/charsets_et_encoding.html

Regarde quel charset ta base de données renvoie. Assure-toi que tu le convertis bien en iso-8859-1. Et pense à échapper les codes HTML (< > et &).
(Sinon bonjour les risques de sécurité)
0