Balise href côté client avec www.

AlBud Messages postés 49 Date d'inscription mardi 18 juin 2002 Statut Membre Dernière intervention 19 décembre 2006 - 2 août 2006 à 23:20
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 - 4 août 2006 à 10:23
Salut à tous,

je ne suis pas habitué au forum et je ne sais pas si ma question est au bon endroit mais là je suis dans l'impasse totale.

Voila sur un site en php avec du javascipt j'ai créé une petite fenêtre pop-up qui me permet de selectionner un fichier sur le serveur seulement le lien du fichier (en php) et d'après le serveur apache et c'est un lien relatif donc du style : ./../user/bobo/fichier.rar

ma fenêtre popup affecte automatiquement ce lien à une balise http://www.monsite/bobo/fichier.rar j'ai donc créer un input text invisible et je lui ai affecter links[0].href

et là big big problème car si je passe ma souris au dessus du lien <a href j'ai bien une adresse http://...  mais quand je réaffecte à l'input la balise href contient toujours mon lien relatif donc du style  ./../user/bobo/fichier.rar

ma question est où est le problème sinon peut on avoir un lien http à partir d'un lien relatif d'un serveur. Je ne comprend pas trop comment ce dernier a réussi tout de même à me retranscrire le lien relatif en lien http (car quand la souris survole le lien et que je clique cela download bien le fichier mais j'ai besoin de récupérer cette adresse et non celle du serveur)

merci à tous

11 réponses

cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
3 août 2006 à 07:19
bonjour,




pas sûr d'avoir tout bien compris, mais :

si sur un site on met un lien relatif,
   c'est par rapport à ce site, à la page
   où l'on est actuellement.
quand on le télécharge, là on est chez le client,
   il faut bien transformer ce lien relatif en
   lien absolu http://..., et ça le navigateur
   le fait automatiquement ( ouf ! car ce ne serait
   pas toujours simple pour nous à faire ! )
donc... quelle importance de "traiter" l'un ou
   l'autre ? c'est le même finalement.

cordialement   Bul   
Site
0
AlBud Messages postés 49 Date d'inscription mardi 18 juin 2002 Statut Membre Dernière intervention 19 décembre 2006
3 août 2006 à 09:48
merci de ta réponse, je comprend que finalement c'est la même chose mais je vais t'expliquer un peu mon interface. J'ai fait une interface php qui permet de remplir des fiches et l'utilisateur peut choisir des fichiers et images déjà sur le serveur. Quand il fait son choix ma pop-up me retourne l'adresse relatif mais effectivement une fois affecter à une balise image, le src contient bien une adresse côté client http://www.... et je peux ainsi enregistrer mon code, par contre ca ne marche pas avec les balises de lien www.monsite/fic/fichier1.rar et c'est ce lien que je veux avoir et non l'autre

ce qui est bizarre c'est que je veux recupérer l'adresse web que l'on voit lorsque l'on passe la souris sur la balise lien mais que finalement je n'arrive qu'à  récupérer mon adresse relative. 
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
3 août 2006 à 11:57
>>car ca peux donner des idées au personne mal intentionné 
meuh non...
absolues ou relatives c'est la même chose.
les problèmes de sécurités ne se situent pas
   à ce niveau, mais au niveau du code php.
>>et c'est assez moche...
bof... met toutes les références en absolu alors,
mais c'est "moins souple"
cordialement   Bul   
Site
0
AlBud Messages postés 49 Date d'inscription mardi 18 juin 2002 Statut Membre Dernière intervention 19 décembre 2006
3 août 2006 à 15:40
Bon il y a peut etre pas de solution, ma question était juste de savoir si à partir d'un chemin relatif sur serveur on pouvait avoir l'adresse web de ce chemin


Merci d'avoir pris le temps de me répondre, au plaisir
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
AlBud Messages postés 49 Date d'inscription mardi 18 juin 2002 Statut Membre Dernière intervention 19 décembre 2006
3 août 2006 à 15:43
pour les curieux voici mon code

strValue = '/~php/jscripts/../../../../fichiers/docs/doc.rar';
 alert("strValue="+strValue);
 document.links[0].href = strValue ;
 alert('Link_0='+document.links[0].href);

Et pourtant quand on passe le pointeur de la souris au dessus du www.monsite.fr/fichiers/docs/docs.rar que je n'arrive pas à récuperer, dommage
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
3 août 2006 à 18:17
strValue = '/~php/jscripts/../../../../fichiers/docs/doc.rar';
t'es sûr de ça ?
car /~php : c'est donc sous la racine ( commence par / )
puis /jscript et on remonterait (/..) 4 fois ??
cordialement   Bul   
Site
0
AlBud Messages postés 49 Date d'inscription mardi 18 juin 2002 Statut Membre Dernière intervention 19 décembre 2006
3 août 2006 à 18:36
Re,
désolé j'ai tronqué l'adresse mais en gros le chemin relatif c'est à partir de là où se situe mon browser.php donc ca va de



'/~php/jscripts/site/jeu' puis ca remonte 4 fois à la racine et ca repart dans /fichiers
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
4 août 2006 à 08:46
ça ne répondra pas à ton souci initial
( et là je ne vois que le "http://..." partout
   peut-être me trompe-je ? )
mais pourquoi donc descendre pour remonter ?
va y directement, non ?
ou en relatif, mais sans passer par la racine.
cordialement   Bul   
Site
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
4 août 2006 à 09:29
au lieu de :
'/~php/jscripts/site/jeu/../../../../fichiers/docs/doc.rar'
mettre :
   '/~php/fichiers/docs/doc.rar'
ou '../../../../fichiers/docs/doc.rar'
ou 'http://wwwmonsite.fr/fichiers/docs/doc.rar'
cordialement   Bul   
Site
0
AlBud Messages postés 49 Date d'inscription mardi 18 juin 2002 Statut Membre Dernière intervention 19 décembre 2006
4 août 2006 à 09:46
oui donc c'est quand même bizarre qu'il arrive à retrouvez son chemin en mettant comme chemin relatif '/fichiers/docs/doc.rar' , le lien est bon car quand je clique sur il me demande bien de télécharger le fichier sur 'http://wwwmonsite.fr/fichiers/docs/doc.rar'
cela m'oblige donc à modifier par fonction (en ne retournant par exemple que ce qui est après /../), sachant que les fichiers peuvent se trouver dans différents répertoires donc il faudra que je fasse attention.

au fait la bonne syntaxe à partir du root serait '/fichiers/docs/doc.rar' ou '/~fichiers/docs/doc.rar' car le ~ c'est bien le root ???


Pour info mon browser me retourne l'adresse à partir de l'emplacement de mon fichier browser.php donc avec $_SERVER['PHP_SELF'], ce qui est dommage est qu'il n'existe pas de fonction retournant le chemin à partir d'un fichier (qui n'est pas le .php) sur le serveur ou alors je ne l'ai pas trouvé.

merci de ton aide, ca me convient parfaitement comme cela
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
4 août 2006 à 10:23
si on met "/..." ce n'est plus un chemin relatif,
on redémarre de la racine.
d'ailleurs en local, FireFox n'aimerait pas,
( faudrait lui mettre file://... )
sur un site je ne sais pas, je n'utilise pas FF.
et ~ : non, c'est pas le "root"
/ ,
http://www
. , c'est la racine ( root ? si tu veux )
/~toto recherche, sous la racine, le répertoire ~toto
cordialement   Bul   
Site
0
Rejoignez-nous