Liens javascript="#" . confondu avec un repertoi

WRInaute discret
hello

j'utilise depuis peu le rewriting. et pour compliquer je me lancer dans les repertoire virtuel.

Mon probleme est un liens pop-up simple :

<a href="#" onClick="JJ_openBrWindow('mon-vrai-rep/index.php')">

La page s'ouvre correctement, mais la page "parent" cherche le repertoire /#/ ...==>erreur 404 !!!
Je voudrai quelle reste sans bouger !!!


pire encore : les liens vers les ancres type :
http://www.monsite.com/#Alimentation
il cherche le repertoire /#Alimentation

mon htaccess :
RewriteRule ^(.*)/$ index.php?newlang=$1 [QSA,L]
#c'est pour les langues !!

le probleme viens de la base :
echo "<base href=\"http://www.monsite.com/\">\n";



Comment faites vous ?

James
 
WRInaute passionné
Pour ta première question, tu a oublié de mettre le return false à la fin de la procédure onclick.

Ex:
Code:
<a href="#" onClick="JJ_openBrWindow('mon-vrai-rep/index.php');return false">
 
WRInaute discret
Sur mon site j'utilise deux fenetre pop-up pour avoir une description et j'ai fais les liens comme ça :

Code:
<a href="#ancre1" onclick="toto=window.open('toto.php','toto','location=no,toolbar=no,status=no,directories=no,scrollbars=no,width=420,height=180')">description</a>

Et quand je clique le popup s'affiche sans que la page précédente ne bouge..

ce sont les deux liens description vers le milieu de la page !
 
WRInaute discret
reponse...

en fait, je n'ai pas trouve de solution mais une astuce infaiible :

echo "<a href=\"".$_SERVER['REQUEST_URI']."#\" onClick=\"JJ_openBrWindow('". $rowx['lien'] ."/index.php');return false\">";

cela remet l'adresse de la page dans le liens.

le probleme trouve etait :
si le script est :
<a href=\"#supermachin\"> supermachins</a>
alors le navigateur affihce : http://www.monsite.com/#Alimentation
==> et la ca plante car il cherche le repertoire...

je pense que cela viens de ma base :
echo "<base href=\"http://www.monsite.com/\">\n";
le dernier / est il bon et utilise ???


;return false marche tres bien !! merci
mais ca fait quoi ?
 
WRInaute passionné
j'ai, je crois, le même probleme.
Quand j'essaie de rewriter une page avec une apostrophe il précede l'apostrophe d'un slash


exemple :
Code:
RewriteRule
^(.*)\.php$ index.php?page=$1  [QSA,L]

aujourd'hui.php devient index.php?page=aujourd/'hui
 

➡️ Offre MyRankingMetrics ⬅️

pré-audit SEO gratuit avec RM Tech (+ avis d'expert)
coaching offert aux clients (avec Olivier Duffez ou Fabien Faceries)

Voir les détails ici

coaching SEO
Discussions similaires
Haut