重複の可能性:
javascript で php を使用できますか?
変数「i」(javascript)の値を変数$x(PHP)に代入したいです。以下のコードは機能しません
<script type="text/javascript">
$(function () {
for (var i = 0; i <= 10; i += 1)
d1.push([i, <?php $x=" ?>i<?php "; echo test($x); ?>]);
.
.
.
重複の可能性:
javascript で php を使用できますか?
変数「i」(javascript)の値を変数$x(PHP)に代入したいです。以下のコードは機能しません
<script type="text/javascript">
$(function () {
for (var i = 0; i <= 10; i += 1)
d1.push([i, <?php $x=" ?>i<?php "; echo test($x); ?>]);
.
.
.
しかし、PHP はサーバーサイドであるため、JavaScript がそこにあることに気付く前に解析されます... ループの前に、PHP 変数をある種の JS データ構造に保存する必要があります
PHP コードを使用して JavaScript を生成し、それをユーザーに提供できます。逆に (JavaScript を使用して PHP コードを作成したり、そこに値を挿入したりする) 直接行うことはできません。
ここでの 1 つの例外は、AJAX 要求を使用して、サーバー上で別の PHP スクリプトを実行できることです。そのリクエスト内に、JavaScript によって生成されたいくつかの値を含めて、それらを PHP スクリプトに渡すことができます。
一般に、PHP はサーバー側の言語ですが、JavaScript はクライアント側にあります。サーバー側でクライアントのコードを生成できますが、その逆はできません。
もちろん、うまくいきません。コードが行っていることは、PHP 変数$x
に のリテラル文字列値を代入することです" ?>i<?php "
。文字列リテラルの途中で PHP モードから抜け出すことはできません。
Web アプリケーションのクライアント/サーバー モデルがどのように機能するかについて、特定の基本事項を誤解しているようです。JavaScript はクライアント (ブラウザー) で実行され、PHP はサーバーで実行されます。クライアントは PHP コードを見ることはなく、サーバーは JavaScript コードを実行することもありません。組み合わせることはできません (とにかく AJAX を使用しないと)。
変数の内容を (フォームを介して) サーバーに $_POST することができます。それ以外の場合は、AJAX を使用して変数をサーバーに送信する必要があります。
いずれにせよ、クライアントから取得してサーバー側に送信する必要があります。