IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Problème Encodage mysql/php


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    386
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 386
    Points : 90
    Points
    90
    Par défaut Problème Encodage mysql/php
    Re bonjour le forum.
    J'ai semble t'il un problème d'encodage.
    J'ai une page php, et quand j'écris :
    J'ai "tété" en affichage.
    Mais quand j'essaye d'afficher un texte récupéré de ma base de donnée avec un accent, j'ai "t�t�"
    J'ai essayé de fouiller un peu pour trouver le problème et apparemment il faudrait déclaré ma valeur en UTF8 sur ma variable ( mais je suis certainement or sujet )
    Voici mon fichier php :
    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
     
    <!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="cs" lang="cs">
    <head>
    <?php
    include('connexion.php')
    ?>
    <title> </title>
    <meta http-equiv="content-type" content="text/html; charset=utf-8" />
    <link rel="stylesheet" type="text/css" href="css/default.css" media="screen" />
    </head>
    <body>
     
        <h1><?php echo $metier; ?></h1>
     
    </body>
    </html>
    Mon fichier connexion.php est :
    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
     
    <?php
     
    	$hostname = "localhost";
    	$user     = "root";
    	$password = "";
    	$base = "test1";
     
    	$conn = mysqli_connect($hostname, $user, $password) or exit('connexion impossible');
    	mysqli_select_db($conn,$base);
     
     
    $sql2 = "SELECT metier FROM jeux_video";
    $resu2 = mysqli_query ($conn,$sql2);
    $infos2 = mysqli_fetch_array ($resu2);
    $metier = $infos2['metier'];
     
     
     
    ?>
    Dans ma table mysql, le mot est "tété" en utf8_general_ci.
    Donc je comprend pas pourquoi sa bloque mais doit y avoir un truc :-)

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Utilise mysqli_set_charset() pour définir que tu utilises UTF8.

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    386
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 386
    Points : 90
    Points
    90
    Par défaut
    Merci de votre réponse.
    Je l'utilise de préference dans le fichier connexion.php ?

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    386
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 386
    Points : 90
    Points
    90
    Par défaut
    Je viens de trouver, un grand merci, j'ai modifier mon fichier connexion.php comme tel :
    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
    <?php
     
    	$hostname = "localhost";
    	$user     = "root";
    	$password = "";
    	$base = "test1";
     
    	$conn = mysqli_connect($hostname, $user, $password) or exit('connexion impossible');
    	mysqli_select_db($conn,$base);
     
     
    if (!$conn->set_charset("utf8")) {
        printf("Error loading character set utf8: %s\n", $mysqli->error);
    } else {
        printf("Current character set: %s\n", $conn->character_set_name());
    }
     
    $sql2 = "SELECT metier FROM jeux_video";
    $resu2 = mysqli_query ($conn,$sql2);
    $infos2 = mysqli_fetch_array ($resu2);
    $metier = $infos2['metier'];
     
     
     
    ?>

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] Problème compteur mysql-php
    Par MortelleMan dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 28/03/2013, 07h45
  2. Problème d'encodage UTF8 PHP & MySQL
    Par gogetenk dans le forum Langage
    Réponses: 6
    Dernier message: 19/10/2011, 16h19
  3. [MySQL] Problème encodage PHP/MySQL
    Par yasen77 dans le forum PHP & Base de données
    Réponses: 21
    Dernier message: 21/06/2011, 17h33
  4. problème encodage mysql
    Par karybluedoor dans le forum Requêtes
    Réponses: 0
    Dernier message: 08/12/2010, 09h21
  5. [MySQL] Problème apostrophe mysql-php
    Par soulflow dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 03/08/2009, 15h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo