[Résolu] Accent dans les url (xn--ostopathe-d4a.tel)

Langage de programmation (PHP, ASP, Javascript, Ajax...) et bases de données (MySQL, MsSQL, PostgreSQL, Oracle...)

[Résolu] Accent dans les url (xn--ostopathe-d4a.tel)

Messagede osteopathe-annuaire » Mer 1 Sep 2010 07:29

Bonjour à tous,

Je lance un annuaire pour ostéopathe http://osteopathe-annuaire.fr

En plus de cela je propose de créer des mini sites en .tel aux ostéopathes qui n'ont pas de site à référencer.
l'url est de type: nom-prenoms.ostéopathe.tel

Le problème est que lorsque je veux inscrire dans l'annuaire l'url avec l'accent Arfooo refuse... l'url est non valide.

J'aimerai modifier le code pour la rendre valide mais là je bute vraiment...

Je cherche une ligne de code du genre:

$domain = '([a-z0-9]([-a-z0-9]*[a-z0-9]+)?)'; // caractères autorisés (nom de domaine)

Mais je trouve pas...
Alors je suis obligé d'inscrire l'url en format international: http://nom-prenoms.xn--ostopathe-d4a.tel

Mais c'est pas vraiment classe...

Merci pour votre aide!
Dernière édition par osteopathe-annuaire le Sam 4 Sep 2010 09:52, édité 1 fois.
osteopathe-annuaire
 
Messages: 14
Inscription: Mer 1 Sep 2010 07:17


Re: Accent dans les url (xn--ostopathe-d4a.tel)

Messagede Seebz » Ven 3 Sep 2010 18:30

A tout hasard, essaye ça :

Code: Tout sélectionner
$domain = '([\p{L}0-9]([-\p{L}0-9]*[\p{L}0-9]+)?)'; // caractères autorisés (nom de domaine)


Complément : http://fr.php.net/manual/fr/regexp.refe ... nicode.php
Seebz
 
Messages: 7
Inscription: Ven 3 Sep 2010 17:57

Re: Accent dans les url (xn--ostopathe-d4a.tel)

Messagede osteopathe-annuaire » Sam 4 Sep 2010 07:46

Merci pour la réponse,

La variable $domain n'existe pas en fait. On trouve $url mais je n'arrive pas à modifier les caractères interdits.
Mais déjà est ce bien celle la? et dans quel fichier?? puisque le fichier pour ajouter un site est généré il me semble par le script.

Bref je patooooge...
osteopathe-annuaire
 
Messages: 14
Inscription: Mer 1 Sep 2010 07:17

Re: Accent dans les url (xn--ostopathe-d4a.tel)

Messagede Seebz » Sam 4 Sep 2010 09:17

Autant pour moi, je pensais que le code que tu avais fournis provenait d'un fichier du script.

Après une recherche, il semblerait que ça se passe dans la méthode "validate()" de la classe "SiteValidatorModel".
Essaye de remplacer :
Code: Tout sélectionner
            if (!preg_match('#^' . Config::get("supportedUrlSchemes") . '://[a-z0-9-]+(.[a-z0-9-]+)*(:[0-9]+)?(/.*)?$#i', $url)) {
                return 'Url is invalid';
            }

Par :
Code: Tout sélectionner
            if (!preg_match('#^' . Config::get("supportedUrlSchemes") . '://[\p{L}0-9-]+(.[\p{L}0-9-]+)*(:[0-9]+)?(/.*)?$#', $url)) {
                return 'Url is invalid';
            }


Ca n'est pas encore très correct car ca autorise des caractères accentués dans le tld mais ca devrait te permettre d'enregistrer tes sites ;)
Note qu'il est possible que la récupération des metas et/ou flux rss risque de ne pas fonctionner pour ce genre de domaine.
Seebz
 
Messages: 7
Inscription: Ven 3 Sep 2010 17:57

Re: Accent dans les url (xn--ostopathe-d4a.tel)

Messagede osteopathe-annuaire » Sam 4 Sep 2010 09:50

Merci !!!


Cela marche parfaitement!

Je reporte les éventuels bugs si j'en trouve!

A charge de revanche
osteopathe-annuaire
 
Messages: 14
Inscription: Mer 1 Sep 2010 07:17


Retourner vers Programmation

 


  • Articles en relation
    Réponses
    Vus
    Dernier message

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités

 
Copyright © arfooo.com  2007 - 2011  -  Tous droits réservés  -  Partenaires de confiance
Sites du groupe: petites annonces gratuites   voyance en direct - tirage tarot   Consultant en référencement
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group | phpBB SEO Traduction par: phpBB-fr.com
cron