Apostrophe en passage de param

Le
romer
Hi,

Petit soucis depuis un certain temps qui est résolu maintenant par
hasard sans trop savoir pourquoi.

Je passe dans un <h1></h1> le mot l'encyclopédie avec <a
href="calenddebut.php?page=l'encyclopédie 2007–2008">

Avec ce signe : ' (si vous le voyez), j'obtiens dans la page web
l'encyclopédie.

Avec celui-là : ' l'encyclopédie - ce qui est correct.

Mais d'où vient la différence entre ces deux signes : ' et ' qui sont
apparemment identiques mais en fait différents ?
Comment les appelle-t-on si on veut les distinguer par un nom ? et
pourquoi avoir créé 2 signes aussi proches d'allure mais qui ne donnent
pas les mêmes résultats dans une page web avec passage de paramètre ?

Dans un cas, sur un Mac, je tape directement la touche ' (sous le
chiffre 4) et le résultat est mauvais et dans l'autre je tape un
alt+maj+' et le résultat convient !

Merci

--
A+

Romer
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
CrazyCat
Le #22027771
Bernd wrote:
Je passe dans un <h1></h1> le mot l'encyclopédie avec <a
href="calenddebut.php?page=l'encyclopédie 2007–2008">



Tout d'abord, c'est horrible. Passer des espaces et des caractères
accentués dans une url ne se fait pas, il y a des fonctions urlencode()
très pratique pour rendre les liens valables.

Mais d'où vient la différence entre ces deux signes : ' et ' qui sont
apparemment identiques mais en fait différents ?



L'un est une apostrophe (code ASCII 39) et l'autre appartient à la table
étendue (cp1512 je crois), elle n'est pas interprétée comme une
apostrophe normale.


--
Discussions et débats sur l'actualité: http://www.sujets-d-actu.eu
Réseau IRC Francophone: http://www.crazy-irc.net
romer
Le #22027751
CrazyCat
Tout d'abord, c'est horrible. Passer des espaces et des caractères
accentués dans une url ne se fait pas, il y a des fonctions urlencode()
très pratique pour rendre les liens valables.



Merci de cette info - je vais voir ça de plus près - si ça marche, c'est
évidemment bien plus simple et pratique.
Mais je ne vois pas bien comment supprimer des espaces alors que j'en ai
besoin sur une page Web.
En fait c'est le menu qui passe ces libellés dans la page web - j'ai
trouvé ça au départ plus simple que mettre le libellé dans la page
elle-même directement car si je veux les changer souvent par
copier-coller, je reste dans la page html ou php du menu au lieu d'aller
faire la modif dans les pages concernées . C'est la seule raison
d'ailleurs
--
A+

Romer
ASM
Le #22027741
En réponse à Bernd qui écrivit, en date du : 12/09/07 15:47, le message
suivant :
CrazyCat
Tout d'abord, c'est horrible. Passer des espaces et des caractères
accentués dans une url ne se fait pas, il y a des fonctions urlencode()
très pratique pour rendre les liens valables.



Merci de cette info - je vais voir ça de plus près - si ça marche, c'est
évidemment bien plus simple et pratique.
Mais je ne vois pas bien comment supprimer des espaces alors que j'en ai
besoin sur une page Web.



il faur url encoder voilà

l'espace s'écrit : %20

et : page=l'encyclopédie 2007–2008
s'écrit : page=l'encyclop%EF%BF%BDdie%202007%C3%902008
ou : page=l%27encyclop%uFFFDdie%202007%D02008


<html>
<p id=inf></p>
<p><a href="javascript:var d=document.getElementById('inf');
d.innerHTML=encodeURI('page=l'encyclopédie 2007–2008')">
encodeURI</a>
<a href="javascript:var d=document.getElementById('inf');
d.innerHTML=escape('page=l'encyclopédie 2007–2008')">
escape</a>
</html>
CrazyCat
Le #22027731
Bernd wrote:
Tout d'abord, c'est horrible. Passer des espaces et des caractères
accentués dans une url ne se fait pas, il y a des fonctions urlencode()
très pratique pour rendre les liens valables.



Merci de cette info - je vais voir ça de plus près - si ça marche, c'est
évidemment bien plus simple et pratique.
Mais je ne vois pas bien comment supprimer des espaces alors que j'en ai
besoin sur une page Web.



urlencode() remplace les caractères "particuliers" par leur équivalent
hexa décimal.
les espaces sont donc traduits par %20, l'apostropphe par %27, ...


--
Discussions et débats sur l'actualité: http://www.sujets-d-actu.eu
Réseau IRC Francophone: http://www.crazy-irc.net
romer
Le #22027721
ASM
il faur url encoder voilà



Thanx

Je viens de trouver ce site :
http://meyerweb.com/eric/tools/dencoder/

En effet, il encode et décode ce qu'on veut.

<html>
<p id=inf></p>
<p><a href="javascript:var d=document.getElementById('inf');
d.innerHTML=encodeURI('page=l'encyclopédie 2007–2008')">
encodeURI</a>
<a href="javascript:var d=document.getElementById('inf');
d.innerHTML=escape('page=l'encyclopédie 2007–2008')">
escape</a>
</html>



Je suis pour l'instant allergique à javascript - aucun java sur mes
sites sauf si vraiment je ne peut pas faire autrement.
--
A+

Romer
Andreas Prilop
Le #22027711
On Wed, 12 Sep 2007, Bernd wrote:

User-Agent: MacSOUP/2.8 (Mac OS X version 10.4.9 (PPC))



¹ superscript 1 ¼ fraction 1/4 Ð D stroke ð d stroke
² superscript 2 ½ fraction 1/2 Þ Thorn þ thorn
³ superscript 3 ¾ fraction 3/4 Ý Y acute ý y acute
× multiply sign ¦ broken bar

' et ' qui sont apparemment identiques mais en fait différents ?



¿Qué?

Dans un cas, sur un Mac, je tape directement la touche ' (sous le
chiffre 4) et le résultat est mauvais et dans l'autre je tape un
alt+maj+' et le résultat convient !



' apostrophe ASCII
’ apostrophe typographique

Voir http://www.cl.cam.ac.uk/~mgk25/ucs/apostrophe.html
http://www.cs.tut.fi/~jkorpela/www/windows-chars.html
Andreas Prilop
Le #22027701
On Wed, 12 Sep 2007, ASM wrote:

l'espace s'écrit : %20
et : page=l'encyclopédie 2007–2008
s'écrit : page=l'encyclop%EF%BF%BDdie%202007%C3%902008
ou : page=l%27encyclop%uFFFDdie%202007%D02008



Non, c'est
l%E2%80%99encyclop%C3%A9die%202007%E2%80%932008

http://google.fr/search?q=l%E2%80%99encyclop%C3%A9die%202007%E2%80%932008

( ou
http://google.fr/search?q=l%92encyclop%E9die%202007%962008&ie=windows-1252
dans Windows-1252 )
ASM
Le #22027681
En réponse à Bernd qui écrivit, en date du : 12/09/07 17:18, le message
suivant :
ASM
il faur url encoder voilà



Thanx

Je viens de trouver ce site :
http://meyerweb.com/eric/tools/dencoder/



bof! bof!
ce truc ne fait que escaper via JS : escape()
alors qu'aujourd'hui on en est à enccoder l'url : encodeURI()

Ce qui me scie c'est que l'auteur met ça sous licence !
(du bête JS de nos grands mères !)

revoir l'exemple JavaScript que j'ai donné gratuitement sans licence

<a href="javascript:var d=document.getElementById('inf');
d.innerHTML=escape('page=l'encyclopédie 2007–2008')">
escape</a>



Je suis pour l'instant allergique à javascript - aucun java sur mes



attention Java != JavaScript

sites sauf si vraiment je ne peut pas faire autrement.



C'était juste pour montrer sans s'embêter à regarder via un serveur.

Sinon, le JavaScript j'aime bien car ça reste encore de nos jours +
réactif que le code serveur-side.
Bien entendu il faut que ça fonctionne aussi tout pareil sans le JS.
C'est juste un petit plus apporté au visiteur.

En tous cas merci d'éviter la navigation qui s'appuie à la fois sur le
JS *ET* les cookies, comme je viens d'en faire l'expérience tout
récemment (impossible de boookmarquer).

--
sm
ASM
Le #22027661
En réponse à Andreas Prilop qui écrivit, en date du : 12/09/07 17:29,
le message suivant :
On Wed, 12 Sep 2007, ASM wrote:

l'espace s'écrit : %20
et : page=l'encyclopédie 2007–2008
s'écrit : page=l'encyclop%EF%BF%BDdie%202007%C3%902008
ou : page=l%27encyclop%uFFFDdie%202007%D02008



Non, c'est
l%E2%80%99encyclop%C3%A9die%202007%E2%80%932008



ou :
l%27encyclop%E9die%202007-2008

le — semblant poser problème à l'encodeur

mais google traduit l'encyclopédie 2007–2008
par :
l%27encyclop%C3%A9die+2007%E2%80%932008

on va y arriver, on va y arriver ;-)
romer
Le #22027321
ASM
En réponse à Bernd qui écrivit, en date du : 12/09/07 17:18, le message
suivant :

Sinon, le JavaScript j'aime bien car ça reste encore de nos jours +
réactif que le code serveur-side.



C'est vrai mais si le serveur est réactif, php est fulgurant lui-aussi.

Bien entendu il faut que ça fonctionne aussi tout pareil sans le JS.
C'est juste un petit plus apporté au visiteur.



Si on a un public dont on connait les habitudes OK sinon un certain
nombre de personnes neutralise javascript et alors là, coincé.

--
A+

Romer
Publicité
Poster une réponse
Anonyme