Se connecter / S'enregistrer
Votre question

Caractères spéciaux

Tags :
  • Programmation
Dernière réponse : dans Programmation
3 Mai 2006 20:22:54

Salut!
J'ai un petit problème de caractères spéciaux... Je m'explique:
j'ai mis sur mon site une gallerie photos (coppermine), et j'ai fait une requête sql qui en sélectionne une au hasard:
  1. <?php
  2. $gal = mysql_query("SELECT pid,aid,filepath,filename,title,position FROM galleries_pictures ORDER BY rand() LIMIT 0,1") or die ("erreur sql ".mysql_error());
  3. while($data = mysql_fetch_array($gal))
  4. {
  5. echo('<a href="http://www.anneau-des-dieux.com/galeries/thumbnails.php?album='.$data['aid'].'" target="_blank"><img src="galeries/albums/'.htmlentities($data['filepath']).htmlentities($data['filename']).'" border="1" class="bordure" width="100" alt="'.$data['title'].'"></a>');
  6. }
  7. ?>

Le problème, c'est que certaines images se nomment par exemple "1.07 Sérum Steeve se nourrit de l'énergie vitale de Merell". A l'écran, il n'apparaît auucne image et le nom de l'image: "1.07 Sérum Steeve se nourrit de l'énergie vitale de Merell"... En effet, la source de l'image affichée est :
<img src="galeries/albums/userpics/10006/PDVD%5F286.jpg">

Je voudrais donc savoir si'l est possible d'éviter ces images non trouvées sur la page d'accueil...
Je crois qu'il n'est pas possible de remplacer les é par des é... Mais peut être qu'il est possible d'exclure les images comportant des caractères spéciaux de la requête? :-?

Autres pages sur : caracteres speciaux

3 Mai 2006 21:44:31

Enlèves les caractères spéciaux des titres de tes images au lieu de te prendre la tête.

Si tu es sur MySQl et que tes enregistrement possèdent déjà des é, il te faudra refaire les enregistrement en BDD ou créer un script qui modifiera les noms des images présents en BDD.

Sinon, la requête SQL ne peut exclure les caractères spéciaux.

Par contre, rien ne t'empêche de modifier $data['filename'] par une variable temporaire qui sera modifiée avant l'affichage pour remplacer les caractères non reconnus par des accents correctement français.

MySQL doit être configuré en latin et pas en UTF8 pour accepter les caractères spéciaux français je crois, à vérifier.
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS