2011-08-08 44 views
1

同じリンクをクリックすると、フランス語のウェブサイトの言語を英語と英語にフランス語に切り替えることができます。しかし問題は、良い結果を得る前にリンクを2回押す必要があることです。多言語切り替えの問題

<li> 
    <?php if(isset($_GET['lang'])and $_GET['lang']=='en'){ 
     echo '<a href="index.php?lang=fr">Francais</a>';} 
    else echo '<a href="index.php?lang=en">English</a>'; ?> 
</li> 

我々はフランセにクリックするか、英語をクリックすると、英語に切り替える場合、これはフランス語に切り替え言語用です:私は、ファイルをheader.phpのためにこれを追加しました。そして、それは動作します。問題は、言語を変更するためにリンクを2回クリックしなければならないことです。それは正常ではありません。どうすれば修正できますか?

Xiboにサインインしたときの最初のURLはhttp://myIP_adress/Xibo/です(これはメインメニューインターフェイスの上部に英語アイコンがあり、ログアウトアイコンの横に表示されます)。テキストは英語です。

私は英語のアイコンを押すと、私はこのURLを取得:(まだ英語フランセのアイコンとテキストを英語に今すぐアイコンスイッチ)http://myIP_adress/Xibo/index.php?lang=en

私はフランス語でテキストにフランセのアイコンを押すと、私はこのURLを取得:http://myIP_adress/Xibo/index.php?lang=fr&lang=en(まだ英語でまだフランセアイコンとテキストを取得)

私は再びフランセのアイコンを押すと、私はこのURL http://myIP_adress/Xibo/index.php?lang=fr&lang=frを取得する(現在の英語のアイコンとテキストへフランセのアイコンスイッチがフランス語である、だから私は期待通りに対応それ)。ここから、私は英語のアイコンを2回押して、期待される応答を得なければなりません(Francaisのアイコンと英語のテキスト)。

+0

これはちょっと変です。あなたはJavaScriptを使用していますか? – Shoe

+0

私はPHPを使用しています... –

+1

あなたのURLに 'index.php?lang = fr&lang = en'がある場合は、それを引き起こしている他のものがなければなりません。 – scube

答えて

0

相対パスではなく絶対パスを使用します。今すぐあなたのパスは、ブラウザがベースURLとみなすものに追加されます。

$path = '/Xibo/index.php'; 
echo '<a href="'.$path.'?lang=fr">Francais</a>';} 
+0

この$パスを使って何かを変えないで...私はそれを試しましたが、まだ同じ問題があります。 –

+0

このXiboアプリケーションに何らかの問題があるようです。純粋なPHPの下では、これは間違いなく機能するはずです。タグにXiboを追加すると、そこにリストされます。そのタグが存在していても –

関連する問題