mes apostrophes disparaissent !

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • mes apostrophes disparaissent !

    Bonjour, je suis sur une page de listing d'artisan, commercants, etc.
    Mes noms d'entreprises (com_contact) sont correctement orthographièes dans la base de données et sur mon administration. J'ai besoin de leur amener un petit peu de mise en page avec une majuscule, etc et un utf8-encode pour afficher les accents, sinon, il ne m'affiche rien du tout.

    $myname=ucwords(strtolower($donnees['name']));
    $myname=utf8_encode($myname);

    Soucis est qu'il me mage les apostrophes !

    Il me faut mes apostrophes !
    Une idée?

  • #2
    Salut

    Je viens de vite faire un test:

    Code PHP:
    <?php

    $nom 
    'établissements Été comme hiver';

    $myname ucwords(mb_strtolower($nom"UTF-8"));

    echo 
    '<h2>'.$nom.'</h2>';
    echo 
    '<h2>'.$myname.'</h2>';
    et l'output que j'obtiens est :

    établissements Été comme hiver
    établissements été Comme Hiver
    Je garde mes accents mais la majuscule n'est pas de mise pour les deux premiers mots (car accentués).

    Note : personnellement, je trouve que c'est une mauvaise idée de modifier les données. Si le nom est, réellement, "Jacquot de Paris", il serait incorrect je pense de mettre "De Paris"; tu changes la dénomination ==> la donnée introduite est présumée totalement correcte sinon il faut la corriger.

    Bonne nuit.
    Christophe (cavo789)
    Mon blog, on y parle Docker, PHP, WSL, Markdown et plein d'autres choses : https://www.avonture.be
    Logiciel gratuit de scan antivirus : https://github.com/cavo789/aesecure_quickscan (plus de 45.000 virus détectés, 700.000 fichiers sur liste blanche)​

    Commentaire


    • #3
      Bonjour.

      Christophe, peut-être n'ai-je pas tout compris et fais erreur mais "mb_strtolower" ne met-il pas la chaîne en minuscule ?
      Lower de Lowercase = minuscule
      Upper de uppercase = majuscule.
      Mais il semble que strtoupper change toute la chaîne en lettres capitales sauf les lettres accentuées.
      Cordialement.
      __
      Eddy !!!
      Tutoriels BreezingForms en Français : https://www.breezingforms.eddy-vh.com/

      Commentaire


      • #4
        Oui mais ucword met la première lettre de chaque mot en majuscule
        Christophe (cavo789)
        Mon blog, on y parle Docker, PHP, WSL, Markdown et plein d'autres choses : https://www.avonture.be
        Logiciel gratuit de scan antivirus : https://github.com/cavo789/aesecure_quickscan (plus de 45.000 virus détectés, 700.000 fichiers sur liste blanche)​

        Commentaire


        • #5
          Ah ok...
          Cordialement.
          __
          Eddy !!!
          Tutoriels BreezingForms en Français : https://www.breezingforms.eddy-vh.com/

          Commentaire


          • #6
            ok, en utilisant ce code :
            $myname= ucwords(mb_strtolower($donnees['name'], "UTF-8"));
            j'obtiens des "?" sur chaque charactere spécial + apostrophes.

            nb : avec le code d'origine
            $myname=ucwords(strtolower($donnees['name']));
            $myname=utf8_encode($myname);
            j'obtiens des carrés sur certains systemes

            Mon encodage de page est
            <meta charset="utf-8">
            Dernière édition par fabvincent à 14/05/2019, 08h25

            Commentaire

            Annonce

            Réduire
            Aucune annonce pour le moment.

            Partenaire de l'association

            Réduire

            Hébergeur Web PlanetHoster
            Travaille ...
            X