Problème affichage caractères accentués
Résolu/Fermé
YameFAZE
Messages postés
201
Date d'inscription
mardi 24 avril 2012
Statut
Membre
Dernière intervention
14 mars 2021
-
23 janv. 2021 à 20:30
YameFAZE Messages postés 201 Date d'inscription mardi 24 avril 2012 Statut Membre Dernière intervention 14 mars 2021 - 24 janv. 2021 à 17:14
YameFAZE Messages postés 201 Date d'inscription mardi 24 avril 2012 Statut Membre Dernière intervention 14 mars 2021 - 24 janv. 2021 à 17:14
A voir également:
- Php caractères accentués
- Caractères ascii - Guide
- Caractères spéciaux clavier azerty - Guide
- Caractères spéciaux - Guide
- Easy php - Télécharger - Divers Web & Internet
- Caractères spéciaux mac - Guide
7 réponses
jordane45
Messages postés
38346
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 décembre 2024
4 717
23 janv. 2021 à 21:01
23 janv. 2021 à 21:01
Bonjour,
Applique ceci : https://forums.commentcamarche.net/forum/affich-37584944-php-html-caracteres-accentues-et-l-utf8
.
Applique ceci : https://forums.commentcamarche.net/forum/affich-37584944-php-html-caracteres-accentues-et-l-utf8
.
YameFAZE
Messages postés
201
Date d'inscription
mardi 24 avril 2012
Statut
Membre
Dernière intervention
14 mars 2021
23 janv. 2021 à 21:51
23 janv. 2021 à 21:51
Merci pour ta réponse. J'ai lu ton lien et j'ai déjà appliqué tout ce qu'il y est conseillé. Je ne vois donc pas d'où vient le problème. Surtout que le reste de ma page s'affiche parfaitement. Il n'y a QUE cet echo qui pose problème.
jordane45
Messages postés
38346
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 décembre 2024
4 717
23 janv. 2021 à 21:55
23 janv. 2021 à 21:55
Il n'est pas possible, si tu as réellement suivi TOUT ce qui est indiqué dans le lien que je t'ai donné .. que les caractères accentués ne s'affichent pas correctement ...
Fais nous un Screen shot de chaque étape .. à commencer par :
- Format UTF8 de ton fichier
- Encode utf8 déclaré dans l'en-tête de ton fichier php/html
Fais nous un Screen shot de chaque étape .. à commencer par :
- Format UTF8 de ton fichier
- Encode utf8 déclaré dans l'en-tête de ton fichier php/html
YameFAZE
Messages postés
201
Date d'inscription
mardi 24 avril 2012
Statut
Membre
Dernière intervention
14 mars 2021
23 janv. 2021 à 22:03
23 janv. 2021 à 22:03
jordane45
Messages postés
38346
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 décembre 2024
4 717
23 janv. 2021 à 22:09
23 janv. 2021 à 22:09
On ne voit pas le head de ta page
Pourrais tu nous partager le code complet de ce fichier ?
( en le collant directement sur le forum et en utilisant les balises de code )
Pourrais tu nous partager le code complet de ce fichier ?
( en le collant directement sur le forum et en utilisant les balises de code )
YameFAZE
Messages postés
201
Date d'inscription
mardi 24 avril 2012
Statut
Membre
Dernière intervention
14 mars 2021
Modifié le 23 janv. 2021 à 22:20
Modifié le 23 janv. 2021 à 22:20
Le fichier est en cours de construction. La partie PHP n'est pas terminée donc c'est normal s'il y a des manques. ;-)
Encore une fois il n'y a que cet echo qui pose problème. Même quand je fais un echo sur $string le "é" s'affiche parfaitement. On dirait que c'est dans la boucle que ça merde. Dans la boucle le caractère doit s'encoder quelque part et du coup lorsque je l'affiche à nouveau ça bug. J'ai vu qu'il existait utf8_encode() mais je ne sais pas si ça règlerait le problème.
Encore une fois il n'y a que cet echo qui pose problème. Même quand je fais un echo sur $string le "é" s'affiche parfaitement. On dirait que c'est dans la boucle que ça merde. Dans la boucle le caractère doit s'encoder quelque part et du coup lorsque je l'affiche à nouveau ça bug. J'ai vu qu'il existait utf8_encode() mais je ne sais pas si ça règlerait le problème.
<?php /* On démarre une session pour sauvegarder les données du formulaire. */ session_start(); /* On sauvegarde les différents pattern de validation des champs du formulaire dans des variables. */ $registration_firstName_pattern = '#[0-9\.,;:\'"\!\?<>\{\}\[\]\(\)/\|\\\_=\+\#£\$&§%@\* ]+#'; $registration_lastName_pattern = '#[0-9\.,;:\'"\!\?<>\{\}\[\]\(\)/\|\\\_=\+\#£\$&§%@\* ]+#'; /* Si le bouton a été activé par l'utilisateur,... */ if (isset($_POST['registration_send'])) { /* ...on sauvegarde cette activation dans une variable de session,... */ $_SESSION['registration_send'] = $_POST['registration_send']; /* ...on sauvegarde ensuite les éventuelles données renseignées par l'utilisateur dans des variables de session,... */ $_SESSION['registration_firstName'] = $_POST['registration_firstName']; $_SESSION['registration_lastName'] = $_POST['registration_lastName']; /* ...on prépare dans une variable de session un message d'erreur à afficher à l'utilisateur si ce dernier a oublié de remplir un champs obligatoire,... */ $_SESSION['required_error'] = ' <p class="error"> Vous avez oublié de remplir ce champs. Ce champs est obligatoire. Merci de bien vouloir le remplir. </p> '; /* ...on prépare dans une variable de session un message d'erreur à afficher à l'utilisateur si les conditions de remplissage n'ont pas été respectées par ce dernier,... */ $_SESSION['pattern_error'] = ' <p class="error"> Vous avez utilisé un ou plusieurs des caractères interdits ci-dessous en remplissant ce champs. Merci de bien vouloir remplir le champs en respectant les conditions ci-dessous. </p> '; /* ...puis on effectue les différents contrôles sur les champs. */ /*----------------------*/ /*-- FIRST NAME FIELD --*/ /*----------------------*/ /* Si le champs « Prénom : » n'a pas été rempli par l'utilisateur,... */ if (empty($_SESSION['registration_firstName'])) { /* ...on redirige ce dernier vers le champs. */ header("Location: #registration_firstName"); /* Arrêt. */ exit(); } /* Si le champs « Prénom : » a été rempli par l'utilisateur mais qu'il présente une ou plusieurs erreurs,... */ if (!empty($_SESSION['registration_firstName']) AND preg_match($registration_firstName_pattern, $_SESSION['registration_firstName'])) { /* ...on redirige ce dernier vers le champs. */ header("Location: #registration_firstName"); /* Arrêt. */ exit(); } /*---------------------*/ /*-- LAST NAME FIELD --*/ /*---------------------*/ /* Si le champs « Nom : » n'a pas été rempli par l'utilisateur,... */ if (empty($_SESSION['registration_lastName'])) { /* ...on redirige ce dernier vers le champs. */ header("Location: #registration_lastName"); /* Arrêt. */ exit(); } /* Si le champs « Nom : » a été rempli par l'utilisateur mais qu'il présente une ou plusieurs erreurs,... */ if (!empty($_SESSION['registration_lastName']) AND preg_match($registration_lastName_pattern, $_SESSION['registration_lastName'])) { /* ...on redirige ce dernier vers le champs. */ header("Location: #registration_lastName"); /* Arrêt. */ exit(); } } ?> <!DOCTYPE html> <html lang="fr"> <!---------------> <!-- Variables --> <!---------------> <?php include 'parts/vars.php'; ?> <!----------> <!-- Head --> <!----------> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <link rel="icon" href="img/bubble_15x15.ico" /> <link rel="stylesheet" href="css/style.css" /> <title><?php echo strip_tags($string_companyName).' | '.strip_tags($title_registrationAndLogin); ?></title> <meta name="description" content="<?php echo strip_tags($string_companyName).' | '.strip_tags($title_registrationAndLogin); ?>" /> </head> <body> <!------------> <!-- Header --> <!------------> <header> <h1> <?php echo $string_companyName.'<br />'.$title_registrationAndLogin; ?> </h1> <?php echo $phone.''.$email; ?> </header> <!---------------------------> <!-- Navigation de la page --> <!---------------------------> <?php include 'parts/nav.php'; ?> <div class="background"></div> <!--------------------------> <!-- Conteneur de la page --> <!--------------------------> <main id="anchor_main"> <article id="registrationAndLogin"> <h2> <?php echo $title_registration; ?> </h2> <p class="hidden">x</p> <p></p> <form id="registration" name="registration" method="post" action="#"> <fieldset> <legend> Informations personnelles </legend> <!----------------------> <!-- FIRST NAME FIELD --> <!----------------------> <div class="<?php /* Si le bouton a été activé par l'utilisateur,... */ if (isset($_SESSION['registration_send'])) { /* ...on effectue les différents contrôles sur le champs « Prénom : ». */ /* Si le champs n'a pas été rempli par l'utilisateur,... */ if (empty($_SESSION['registration_firstName'])) { /* ...on modifie le CSS du champs en ajoutant une classe. */ echo 'error'; } /* Si le champs a été rempli par l'utilisateur mais qu'il présente une ou plusieurs erreurs,... */ if (!empty($_SESSION['registration_firstName']) AND preg_match($registration_firstName_pattern, $_SESSION['registration_firstName'])) { /* ...on modifie le CSS du champs en ajoutant une classe. */ echo 'error'; } } ?>"> <div> <label for="registration_firstName">Prénom :</label> <input type="text" id="registration_firstName" name="registration_firstName" title="Merci de bien vouloir renseigner votre prénom." minlength="2" maxlength="50" placeholder="Jean" value="<?php /* Si le bouton a été activé par l'utilisateur,... */ if (isset($_SESSION['registration_send'])) { /* ...on effectue les différents contrôles sur le champs « Prénom : ». */ /* Si le champs a été rempli par l'utilisateur,... */ if (!empty($_SESSION['registration_firstName'])) { /* ...on traite les données renseignées par ce dernier. */ /* ...on ré-affiche dans le champs les données. */ echo $_SESSION['registration_firstName']; } } ?>" oncopy="return false;" onpaste="return false;"> <?php /* Si le bouton a été activé par l'utilisateur,... */ if (isset($_SESSION['registration_send'])) { /* ...on effectue les différents contrôles sur le champs « Prénom : ». */ /* Si le champs n'a pas été rempli par l'utilisateur,... */ if (empty($_SESSION['registration_firstName'])) { /* ...on lui affiche le message d'erreur pré-préparé. */ echo $_SESSION['required_error']; } /* Si le champs a été rempli par l'utilisateur mais qu'il présente une ou plusieurs erreurs,... */ if (!empty($_SESSION['registration_firstName']) AND preg_match($registration_firstName_pattern, $_SESSION['registration_firstName'])) { /* ...on lui affiche le message d'erreur pré-préparé. */ echo $_SESSION['pattern_error']; } } ?> <p> Champs obligatoire. De 2 à 50 caractères. <span class="under">Caractères interdits</span> = « . , ; : ' " ! ? < > { } [ ] ( ) / | \ _ = + # £ $ & § % @ * ». Caractères numériques de 0 à 9. Espaces. </p> <?php /**/ $string = 'aLEXANDRE-Maurice-théo-édouArd'; /**/ echo $string; /**/ $arrayOFstring = explode('-', $string); /**/ $nbr = count($arrayOFstring); /**/ $i_while = 1; /**/ $i_firstChar = 0; /**/ $i_arrayOFstring = 0; /**/ while ($i_while <= $nbr) { /**/ $firstChar[$i_firstChar] = substr($arrayOFstring[$i_arrayOFstring], 0, 1); /**/ echo '<p>'.$firstChar[$i_firstChar].'</p>'; /**/ $i_while++; /**/ $i_firstChar++; /**/ $i_arrayOFstring++; } /**/ echo implode('-', $arrayOFstring); ?> </div> </div> <!---------------------> <!-- LAST NAME FIELD --> <!---------------------> <div class="<?php /* Si le bouton a été activé par l'utilisateur,... */ if (isset($_SESSION['registration_send'])) { /* ...on effectue les différents contrôles sur le champs « Nom : ». */ /* Si le champs n'a pas été rempli par l'utilisateur,... */ if (empty($_SESSION['registration_lastName'])) { /* ...on modifie le CSS du champs en ajoutant une classe. */ echo 'error'; } /* Si le champs a été rempli par l'utilisateur mais qu'il présente une ou plusieurs erreurs,... */ if (!empty($_SESSION['registration_lastName']) AND preg_match($registration_lastName_pattern, $_SESSION['registration_lastName'])) { /* ...on modifie le CSS du champs en ajoutant une classe. */ echo 'error'; } } ?>"> <div> <label for="registration_lastName">Nom :</label> <input type="text" id="registration_lastName" name="registration_lastName" title="Merci de bien vouloir renseigner votre nom." minlength="2" maxlength="50" placeholder="Martin" value="<?php /* Si le bouton a été activé par l'utilisateur,... */ if (isset($_SESSION['registration_send'])) { /* ...on effectue les différents contrôles sur le champs « Nom : ». */ /* Si le champs a été rempli par l'utilisateur,... */ if (!empty($_SESSION['registration_lastName'])) { /* ...on ré-affiche dans le champs les données. */ echo $_SESSION['registration_lastName']; } } ?>" oncopy="return false;" onpaste="return false;"> <?php /* Si le bouton a été activé par l'utilisateur,... */ if (isset($_SESSION['registration_send'])) { /* ...on effectue les différents contrôles sur le champs « Nom : ». */ /* Si le champs n'a pas été rempli par l'utilisateur,... */ if (empty($_SESSION['registration_lastName'])) { /* ...on lui affiche le message d'erreur pré-préparé. */ echo $_SESSION['required_error']; } /* Si le champs a été rempli par l'utilisateur mais qu'il présente une ou plusieurs erreurs,... */ if (!empty($_SESSION['registration_lastName']) AND preg_match($registration_lastName_pattern, $_SESSION['registration_lastName'])) { /* ...on lui affiche le message d'erreur pré-préparé. */ echo $_SESSION['pattern_error']; } } ?> <p> Champs obligatoire. De 2 à 50 caractères. <span class="under">Caractères interdits</span> = « . , ; : ' " ! ? < > { } [ ] ( ) / | \ _ = + # £ $ & § % @ * ». Caractères numériques de 0 à 9. Espaces. </p> </div> </div> <!--------------------> <!-- BIRTHDAY FIELD --> <!--------------------> <div> <div> <label for="registration_birthday">Date de naissance :</label> <input type="date" id="registration_birthday" name="registration_birthday" title="Merci de bien vouloir renseigner votre date de naissance." max="<?php echo date('Y-m-d', strtotime('-18 year')); ?>" value=""> <p> Champs obligatoire. Vous devez avoir au moins 18 ans pour pouvoir vous inscrire. </p> </div> </div> </fieldset> <fieldset> <legend> Adresse de livraison </legend> <!--------------------> <!-- LOCALITY FIELD --> <!--------------------> <div> <div> <label for="registration_locality">Lieu-dit :</label> <input type="text" id="registration_locality" name="registration_locality" title="Si nécessaire merci de bien vouloir renseigner votre lieu-dit." minlength="3" maxlength="50" pattern="['\-0-9A-Za-zÀ-ÄÆ-ÏÒ-ÖŒÙ-Üà-äæ-ïò-öœù-ü ]{3,50}" placeholder="quartier Notre-Dame" value="" oncopy="return false;" onpaste="return false;"> <p> Champs facultatif. De 3 à 50 caractères. <span class="under">Caractères autorisés</span> = « ' » (apostrophe simple). « - » (tiret du 6). Caractères numériques de « 0 » à « 9 ». Caractères alphabétiques de « a » à « z ». Minuscules et majuscules. Accents. « ç » (c cédille). Espaces. </p> </div> </div> <!-------------------------> <!-- STREET NUMBER FIELD --> <!-------------------------> <div> <div> <label for="registration_streetNumber">Numéro de voie :</label> <input type="text" id="registration_streetNumber" name="registration_streetNumber" title="Merci de bien vouloir renseigner votre numéro de voie." minlength="1" maxlength="5" pattern="[0-9]{1,5}" placeholder="1" value="" oncopy="return false;" onpaste="return false;"> <p> Champs obligatoire. De 1 à 5 caractères. <span class="under">Caractères autorisés</span> = Caractères numériques de « 0 » à « 9 ». </p> </div> </div> <!---------------------------> <!-- STREET ADDITION FIELD --> <!---------------------------> <div> <div> <label for="registration_streetAddition">Complément de voie :</label> <select id="registration_streetAddition" name="registration_streetAddition" title="Merci de bien vouloir sélectionner votre type de voie."> <option value=""></option> <option value="bis">bis</option> <option value="ter">ter</option> <option value="quater">quater</option> </select> <p> Champs facultatif. </p> </div> </div> <!-----------------------> <!-- STREET TYPE FIELD --> <!-----------------------> <div> <div> <label for="registration_streetType">Type de voie :</label> <select id="registration_streetType" name="registration_streetType" title="Merci de bien vouloir sélectionner votre type de voie."> <option value=""></option> <option value="allée">allée</option> <option value="rue">rue</option> <option value="avenue">avenue</option> <option value="boulevard">boulevard</option> <option value="place">place</option> <option value="esplanade">esplanade</option> <option value="impasse">impasse</option> <option value="chemin">chemin</option> <option value="ancien chemin">ancien chemin</option> <option value="route">route</option> <option value="ancienne route">ancienne route</option> </select> <p> Champs obligatoire. </p> </div> </div> <!-----------------------> <!-- STREET NAME FIELD --> <!-----------------------> <div> <div> <label for="registration_streetName">Nom de voie :</label> <input type="text" id="registration_streetName" name="registration_streetName" title="Merci de bien vouloir renseigner votre nom de voie." minlength="3" maxlength="50" pattern="['\-0-9A-Za-zÀ-ÄÆ-ÏÒ-ÖŒÙ-Üà-äæ-ïò-öœù-ü ]{3,50}" placeholder="de France" value="" oncopy="return false;" onpaste="return false;"> <p> Champs obligatoire. De 3 à 50 caractères. <span class="under">Caractères autorisés</span> = « ' » (apostrophe simple). « - » (tiret du 6). Caractères numériques de « 0 » à « 9 ». Caractères alphabétiques de « a » à « z ». Minuscules et majuscules. Accents. « ç » (c cédille). Espaces. </p> </div> </div> <!--------------------> <!-- POSTCODE FIELD --> <!--------------------> <div> <div> <label for="registration_postcode">Code postal :</label> <input type="text" id="registration_postcode" name="registration_postcode" title="Merci de bien vouloir renseigner votre code postal." minlength="5" maxlength="5" pattern="[0-9]{5}" placeholder="75000" value="" oncopy="return false;" onpaste="return false;"> <p> Champs obligatoire. 5 caractères. <span class="under">Caractères autorisés</span> = Caractères numériques de « 0 » à « 9 ». </p> </div> </div> <!----------------> <!-- CITY FIELD --> <!----------------> <div> <div> <label for="registration_city">Ville :</label> <input type="text" id="registration_city" name="registration_city" title="Merci de bien vouloir renseigner votre ville." minlength="3" maxlength="50" pattern="['\-A-Za-zÀ-ÄÆ-ÏÒ-ÖŒÙ-Üà-äæ-ïò-öœù-ü]{3,50}" placeholder="Paris" value="" oncopy="return false;" onpaste="return false;"> <p> Champs obligatoire. De 3 à 50 caractères. <span class="under">Caractères autorisés</span> = « ' » (apostrophe simple). « - » (tiret du 6). Caractères alphabétiques de « a » à « z ». Minuscules et majuscules. Accents. « ç » (c cédille). </p> </div> </div> <!-------------------> <!-- DETAILS FIELD --> <!-------------------> <div> <div> <label for="registration_details">Précisions éventuelles :</label> <textarea id="registration_details" name="registration_details" title="Merci de bien vouloir renseigner les informations qui pourraient aider à la livraison." minlength="3" maxlength="255" pattern="[!\#'\(-\*,-\.0-9:;\?A-Za-zÀ-ÄÆ-ÏÒ-ÖŒÙ-Üà-äæ-ïò-öœù-ü ]{3,255}" placeholder="bâtiment A, escalier B, 7ème étage, porte 321..." oncopy="return false;" onpaste="return false;"></textarea> <p> Champs facultatif. De 3 à 255 caractères. <span class="under">Caractères autorisés</span> = « # » (dièse). « * » (étoile). « ' » (apostrophe simple). « - » (tiret du 6). Caractères numériques de « 0 » à « 9 ». Caractères alphabétiques de « a » à « z ». Minuscules et majuscules. Accents. « ç » (c cédille). Ponctuations. Espaces. </p> </div> </div> <!--------------------> <!-- ELEVATOR FIELD --> <!--------------------> <div> <div> <label for="registration_elevator">Présence d'un ascenseur :</label> <select id="registration_elevator" name="registration_elevator" title="Merci de bien vouloir préciser la présence ou non d\'un ascenseur."> <option value=""></option> <option value="oui">oui</option> <option value="non">non</option> </select> <p> Champs facultatif. </p> </div> </div> </fieldset> <fieldset> <legend> Coordonnées de contact </legend> <!-----------------> <!-- PHONE FIELD --> <!-----------------> <div> <div> <label for="registration_phone">Téléphone :</label> <input type="text" id="registration_phone" name="registration_phone" title="Merci de bien vouloir renseigner votre numéro de téléphone." minlength="10" maxlength="10" pattern="0[0-9]{9}" placeholder="0612345678" value="" oncopy="return false;" onpaste="return false;"> <p> Champs obligatoire. 10 caractères. <span class="under">Caractères autorisés</span> = Caractères numériques de « 0 » à « 9 ». </p> </div> </div> <!-----------------> <!-- EMAIL FIELD --> <!-----------------> <div> <div> <label for="registration_email">E-mail :</label> <input type="email" id="registration_email" name="registration_email" title="Merci de bien vouloir renseigner votre adresse e-mail." minlength="5" maxlength="50" pattern="[\-\.0-9A-Z\_a-z]{1,50}@[\-\.0-9A-Z\_a-z]{1,50}\.[\-\.0-9A-Z\_a-z]{1,50}" placeholder="jean-martin_75@site.net" value="" oncopy="return false;" onpaste="return false;"> <p> Champs obligatoire. Les deux adresses e-mail doivent être identiques. De 5 à 50 caractères. <span class="under">Caractères autorisés</span> = « - » (tiret du 6). « _ » (tiret du 8). Caractères numériques de « 0 » à « 9 ». Caractères alphabétiques de « a » à « z ». Minuscules et majuscules. « . » (point). « @ » (arobase). </p> </div> </div> <!-----------------------> <!-- CHECK EMAIL FIELD --> <!-----------------------> <div> <div> <label for="registration_checkEmail">Confirmation de l'e-mail :</label> <input type="email" id="registration_checkEmail" name="registration_checkEmail" title="Merci de bien vouloir confirmer votre adresse e-mail." minlength="5" maxlength="50" pattern="[\-\.0-9A-Z\_a-z]{1,50}@[\-\.0-9A-Z\_a-z]{1,50}\.[\-\.0-9A-Z\_a-z]{1,50}" placeholder="jean-martin_75@site.net" value="" oncopy="return false;" onpaste="return false;"> <p> Champs obligatoire. Les deux adresses e-mail doivent être identiques. De 5 à 50 caractères. <span class="under">Caractères autorisés</span> = « - » (tiret du 6). « _ » (tiret du 8). Caractères numériques de « 0 » à « 9 ». Caractères alphabétiques de « a » à « z ». Minuscules et majuscules. « . » (point). « @ » (arobase). </p> </div> </div> </fieldset> <fieldset> <legend> Sécurité du compte </legend> <!--------------------> <!-- PASSWORD FIELD --> <!--------------------> <div> <div> <label for="registration_password">Mot de passe :</label> <input type="password" id="registration_password" name="registration_password" title="Merci de bien vouloir choisir un mot de passe." minlength="5" maxlength="25" pattern="[\#\*\-0-9A-Z\_a-zÀ-ÄÆ-ÏÒ-ÖŒÙ-Üà-äæ-ïò-öœù-ü@]{5,25}" placeholder="Je@n-M@rtin_75" oncopy="return false;" onpaste="return false;"> <p> Champs obligatoire. Les deux mot de passe doivent être identiques. De 5 à 25 caractères. <span class="under">Caractères autorisés</span> = « # » (dièse). « * » (étoile). « - » (tiret du 6). « _ » (tiret du 8). Caractères numériques de « 0 » à « 9 ». Caractères alphabétiques de « a » à « z ». Minuscules et majuscules. Accents. « ç » (c cédille). « @ » (arobase). </p> </div> </div> <!--------------------------> <!-- CHECK PASSWORD FIELD --> <!--------------------------> <div> <div> <label for="registration_checkPassword">Confirmation du mot de passe :</label> <input type="password" id="registration_checkPassword" name="registration_checkPassword" title="Merci de bien vouloir confirmer le mot de passe." minlength="5" maxlength="25" pattern="[\#\*\-0-9A-Z\_a-zÀ-ÄÆ-ÏÒ-ÖŒÙ-Üà-äæ-ïò-öœù-ü@]{5,25}" placeholder="Je@n-M@rtin_75" oncopy="return false;" onpaste="return false;"> <p> Champs obligatoire. Les deux mot de passe doivent être identiques. De 5 à 25 caractères. <span class="under">Caractères autorisés</span> = « # » (dièse). « * » (étoile). « - » (tiret du 6). « _ » (tiret du 8). Caractères numériques de « 0 » à « 9 ». Caractères alphabétiques de « a » à « z ». Minuscules et majuscules. Accents. « ç » (c cédille). « @ » (arobase). </p> </div> </div> </fieldset> <fieldset> <legend> Validation de l'inscription </legend> <button type="submit" id="registration_send" name="registration_send" title="Cliquez ici pour valider votre inscription." value="active">Valider</button> </fieldset> </form> </article> </main> <!------------> <!-- Footer --> <!------------> <?php include 'parts/footer.php'; ?> </body> </html>
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
YameFAZE
Messages postés
201
Date d'inscription
mardi 24 avril 2012
Statut
Membre
Dernière intervention
14 mars 2021
24 janv. 2021 à 12:03
24 janv. 2021 à 12:03
EDIT
Lorsque je fais un
Et lorsque je fais un
C'est bizarre...
Est-ce que lorsque je fais mon
Lorsque je fais un
echo '<p>'.utf8_decode($firstChar[$i_firstChar]).'</p>';voici ce que j'obtiens sur le caractère "é" :
Et lorsque je fais un
echo '<p>'.utf8_encode($firstChar[$i_firstChar]).'</p>';voici ce que j'obtiens :
C'est bizarre...
Est-ce que lorsque je fais mon
$firstChar[$i_firstChar] = substr($arrayOFstring[$i_arrayOFstring], 0, 1);, "é" ne serait-il pas convertit en ISO ? Et donc PHP prendrait en compte le premier caractère de son ISO
é?
jordane45
Messages postés
38346
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 décembre 2024
4 717
24 janv. 2021 à 12:19
24 janv. 2021 à 12:19
Ah oui, c'est le substr qui pose problème
Il faut le remplacer par mb_substr
Il faut le remplacer par mb_substr
$string = 'aLEXANDRE-Maurice-théo-édouArd'; $arrayOFstring = explode('-', $string); $farryFirstChar = array(); print_r($arrayOFstring); foreach($arrayOFstring as $mot){ $firstChar= mb_substr ($mot, 0, 1); echo '<br><p>'.$firstChar.'</p>'; $arrayFirstChar[] = $firstChar ; } echo "<br>" . implode('-', $arrayFirstChar);
YameFAZE
Messages postés
201
Date d'inscription
mardi 24 avril 2012
Statut
Membre
Dernière intervention
14 mars 2021
24 janv. 2021 à 17:14
24 janv. 2021 à 17:14
Super merci. Effectivement ça marche.
23 janv. 2021 à 21:08