-1

PHPで、次の行を入れると

echo "<script type='text/javascript'>[javascript code here]</script>";

PHPファイルのどこに置いても、JavaScriptコードが常に実行されると仮定できますか? PHP 構文が有効で、行が実行されると仮定します (いくつかの条件によって禁止されていません)。

編集: javascript コードを含む php ファイルがありますalert('ok');が、メッセージボックスは表示されません。コードが実際に実行され、ページが変更されたときにブラウザーがメッセージボックスを閉じたかどうか疑問に思っていました。

4

4 に答える 4

3

いいえ。

  • HTML を出力しない PHP ファイル (PDF ドキュメントや zip ファイルなど) に入れることもできます。
  • あなたはそれを呼び出しの上に置きheader()、ヘッダーを壊すかもしれません
  • if条件付きでのみ含まれるように、ステートメント本体の中に入れることができます
  • 要素内に配置する可能性がある<style>ため、無効な CSS として扱われます。

PHP はただものを出力するだけです。要素を出力したい場合は、それを出力する<script>場所と、それを出力することが意味のある場所に配置する必要があります。

于 2013-06-13T12:43:05.200 に答える
0

はい、htmlコードとしてブラウザに返され、ブラウザはそれがどこから来たのか気にしないため、実行されます。また、XSS 攻撃で悪用されることもよくあります。

結論として、正しい JS であり、html 構造の適切な場所に出力されるまで、常に実行されます。

于 2013-06-13T12:41:31.753 に答える
0

ここで 2 組の靴をいじっています。JavaScript コードは、サーバー側 (PHP が実行される場所) のどこでも実行されません。PHP プロセッサーが完了し、出力 (JavaScript の行を含む) がクライアントに送信されると、JavaScript が実行されます。クライアントのブラウザがどれだけ厳密かによって、エレメントは HTML ページのまたはエレメントの<script>内部にある必要があります<head><body>

于 2013-06-13T12:42:51.580 に答える
0

挿入された場所が有効な場合、コードは実行されます。そこに単に JavaScript コードを記述した場合と同じように動作します。

たとえば、次のコードは機能しないと確信しています。

<ta<?php echo "<script type='text/javascript'>[javascript code here]</script>"; ?>ble>
于 2013-06-13T12:42:24.407 に答える