ホームページ  >  記事  >  バックエンド開発  >  jsでphpコードを書く

jsでphpコードを書く

WBOY
WBOYオリジナル
2016-06-23 13:22:561315ブラウズ

common.jsfunction goUrl(lang){...//   $_SESSION['language']=lang   这句代码在js里要怎么写?...}


ディスカッションへの返信 (解決策)

js と php の間のやり取りは、ajax を使用するのが最適です

通常、js は php に埋め込まれます、ここでjsはphpを書き込みますサーバーがそれをサポートしている必要があります。

function goUrl(lang){
...
6269149647aa3f2a2297b59e02bc2b8c
...
}

js は通常、次のように PHP に関連付ける必要があります。 AJAX リクエストを使用する場合、JS のロード時にセッション値を取得したい場合は、js コード ブロック a3a75570816a3ef04bb00f3b882171f3 を記述します。ページ セッションを設定するとき、これは js とは何の関係もありません。 024bb109b25450039e11f82a9f3d8d9d

main.inc.php<?php...$language = 'tc';if (isset($_G['lang']) && in_array($_G['lang'], array('tc', 'sc'))) {    $language = $_G['lang'];    $_SESSION['language'] = $language;} else if (isset($_SESSION['language']) && !empty($_SESSION['language'])) {    $language = $_SESSION['language'];} else {    $_SESSION['language'] = $language;}...?>index.php<?phprequire_once dirname(__FILE__) . '/includes/main.inc.php';    $tpl->display('index.html');?>index.html[code=php]<html>    <head>        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />        <script type="text/javascript" src="js/common.js"></script>    </head>    <title></title>    <body>        <li>            <a class="lang_tc" onclick="goUrl('tc')" href="javascript:;">繁</a>        </li>        <li>            <a class="lang_sc" onclick="goUrl('sc')" href="javascript:;">简</a>        </li>        <li>            <a href="a.php">New</a>        </li>        繁,繁,繁,繁,繁    </body></html>common.jsfunction goUrl(lang){    var url = document.location.href;    var query = window.location.search.substring(1);    var urls = url.replace(window.location.hash, '').split("?");    var vars = query.split("&");    var query = "";    for (var i=0;i<vars.length;i++) {        var pair = vars[i].split("=");        if (pair[0] != "lang" && pair[0] != "") {            query = query + pair[0] + "=" + pair[1] + "&";        }    }    query = query + "lang=" + lang;    location.href = urls[0]+"?"+query+window.location.hash;}

言語を切り替えるには、index.html (goUrl() の呼び出し中に $_SESSION[' language'] を変更します
js を使用するには php コードを追加します。以下のようなエラーが再度発生する場合は、解決策を見つけてください。
function goUrl(lang){
...
7adc66a7d40e03914e155d6ee783643f
.. .
}

1. セッション変数はサーバーに保存され、クライアントはそれをアクティブに変更できません
2. location.href = urls[0]+"?"+query+window があります。 location.hash; in goUrl(); したがって、urls[0]が指すプログラムファイルにセッション変数を設定する必要があります
1. セッション変数はサーバーに保存され、クライアントによってアクティブに変更することはできません

2. goUrl() = urls[0]+"?"+query+window.location.hash; に location.href があるため、urls[0] が指すプログラム ファイルにセッション変数を設定する必要があります。


ジャンプ後、index.php - >index.html goUrl()実行時に元のリンクに追加しますか? lang=XX で言語を変更します

function goUrl(lang){
var url = document.location.href;
var query = window.location.search.substring(1);
var urls = url.replace(window. location .hash, '').split("?");
var vars = query.split("&");
for (var i=0;i var ペア = vars[i].split("=");
if (pair[0] != "lang" && ペア[0] != "") {
クエリ = クエリ + ペア[0] + "="+ペア [1]+"&"
}}}
クエリ = クエリ +"lang ="+lang;
localf = urls [0]+"?"+クエリ + window.location.hash ;
上記を置き換えるために goUrl.php を作成したいのですが、この js の関数を php で実装するにはどうすればよいですか?
言語を変更した後、ページを更新する必要があります。元の記述方法を変更する必要はありません。
goUrl.php は、index.php のようにページのコンテンツを出力する必要があります。面倒だと思いませんか?
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。