2017-05-30 12 views
0

JavaScript変数をPHP変数として使用したいと思います。私はphp変数をエコーし​​てから印刷します。未定義のインデックス::ここにdocument.write(I)javascript変数をPHP変数に保持する方法

は私のコード

javascriptの

var i=0; 
function inc() 
{ 
    i+=1; 
} 
<?php $foo="<script>document.write(i)</script>"; ?> 
が、私はそのエラー お知らせを表示するデータベースからデータをフェッチするために使用していたときに

php

未定義のインデックス:

echo $foo 

コードについて

コード作業が

$i=$foo; 
$query="select * from TABLE where id = $i"; 
$result=mysqli_query($conn,$query); 
while($row=mysqli_fetch_row($result)) 
    { 
     echo $row[0]; 
    } 

のために動作しない、それはこのエラーお知らせを表示するdocument.write(I)

+0

JavaScriptコード(ブラウザ内)の前にサーバー側でPHPコードが実行されています.GET変数やPOST変数などを使用できるPHPに変数を渡したい場合は – smarber

+0

を参照してください。https:///stackoverflow.com/questions/21721461/use-javascript-variable-in-php-code – mi6crazyheart

+0

[PHPコードでjavascript変数を使用する]の可能な複製(https://stackoverflow.com/questions/21721461/use-javascript-variable) -in-php-code) –

答えて

0

PHPですページを生成するために実行されるサーバーサイドコード。 Javascriptは、ページが訪問者のブラウザに送信された後に実行されるクライアントサイドのコードです。 Javascriptは、サーバー側のコードに影響を与えることはできません。これは、Javascriptが実行されるまでにサーバーコードが実行されているためです。次回のフォームの読み込み時にユーザーの選択にPHPコードの動作を変更させたい場合は、フォームの送信時に変数$ _POSTを渡します。

PHPとJavascriptコードが同じ値を使用するようにするには、PHPコードでページの<head>セクションにJavascript変数の初期化を書き込ませてから、Javascriptを実行する必要があります。

-2
<script> 
var i=0; 
function inc() 
{ 
    i+=1; 
    return i; 
} 

</script> 
<?php 
$foo = '<script type="text/javascript">document.write(inc());</script>'; //Script function call which return the var i value to php variable 

echo $foo; 
?> 
+1

これは期待どおりに動作しません。 '$ foo'はリテラル文字列' ' ''は、Javascriptが実行された結果ではありません。 – FKEinternet

+3

このコードは質問に答えるかもしれませんが、どのようにして問題が解決されたのか、なぜそれが解決されるのかについての追加の文脈を提供することで、回答の長期的価値が向上します。 – Badacadabra

関連する問題