PHP→JavaScriptへ変数を代入するには?



一応、PHP形式のファイルで、中に、JavaScriptなど、ごちゃごちゃのプログラムになっている場合、どうやって変数を代入したらよいでしょうか?

回答の条件
  • 1人5回まで
  • 登録:2007/01/18 16:06:32
  • 終了:2007/01/25 16:10:09

回答(3件)

id:SALINGER No.1

SALINGER回答回数3454ベストアンサー獲得回数9692007/01/18 16:20:58

ポイント27pt

基本JavaScriptはクライアントでPHPはサーバで動作するので、ごちゃごちゃになっているということはPHPでJavaScriptをはいているということかな。

echo "var str= '" . $str . "'";

とか普通にできますよ。

注)""の中に$strを入れないのは私の主義です。

id:wakannaidesu

>PHPでJavaScriptをはいているということかな。

そういうことです。


以下のようにすると、なぜか、idの箇所でエラーが発生しています…なぜでしょうか?単純にここにPOSTするファイルのフォーム内がおかしいのかと思いましたが、普通に「id」となっていたので、問題ないはずなのですが…

ちなみにpasswordはきちんと受け取れているようです。

<script type="text/javascript"></p> <p>id=<?=$_POST['id'];?>;</p> <p>alert(id);</p> <p>password=<?=$_POST['password'];?>;</p> <p>alert(password);</p> <p></script>

2007/01/18 17:12:47
id:shivashanti No.2

shivashanti回答回数22ベストアンサー獲得回数12007/01/18 17:07:12

ポイント27pt

 具体的にソースコードの断片を出したほうが良いかと。

 普通はSALINGERさんの示した方法でOKですが、いくらでもトリッキーなことはできますので。

id:falcosapiens No.3

falcosapiens回答回数126ベストアンサー獲得回数132007/01/18 19:39:21

ポイント26pt

echoに配列を入れるとエラーになります。

$_POST['id']

が原因ですね。

また,値を全くチェックしないままJavaScriptで出力していることになりますから,セキュリティ的にも大問題です。

$id=$_POST['id'];

した上でctype_alnumを通すなどしてから,$idを出力させるべきでしょう。

http://www.php.net/manual/ja/function.echo.php

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません