電子書籍の厳選無料作品が豊富!

<?

print "<P><CENTER>";

print "<img src=$picaddr onClick=\"obj=document.f1;obj.pic_id.value=this.name;obj.submit();\" name=$col[0]>";

print "<form name=\"f1\" action=\"./hoge.php\" method=\"post\"><input type=\"hidden\" name=\"pic_id\" value=\"\"></form>";

print "</CENTER></P>";

?>

IE6.0で実行
画像をクリックすると、pic_idという名称でcol[0]の値をhoge.phpに渡すというスクリプトですが

phpで実行すると正常に動作しません。

エラー内容は

ライン:12
文字:17
エラー:'obj.pic_id'はNULLまたはオブジェクトではありません。
コード:0

となっています。

ご教授お願いいたします。

A 回答 (4件)

$col[0]に " の文字が含まれているために


nameが有効になっていないのでは?

ソースを表示して思った通りのhtmlになっているか
確認してみて下さい。

この回答への補足

htmlで表示しても、元ソースと同じように表示されました。

$col[0]に『"』は含まれていませんでした。

nameが有効になっていないとはどういう事でしょうか?
有効にする手段を教えて頂けますか?

補足日時:2006/01/28 17:11
    • good
    • 0

No.1の者ですが、htmlソースを貼り付けてもらえませんか?

    • good
    • 0

javascriptの記述がかなりおかしいですね…

    • good
    • 0

まず重要なのはPHPのエラーなのかJavascriptの


エラーなのかです。
PHPのエラーでないなら、PHPのソースを提示せず
HTML化したあとのソースで質問すべきです。

エラーがでているときはまずpostをgetに変えて
hiddenをtextに変えてデバッグすることを
オススメします。

<img src="" onClick="obj=document.f1;obj.pic_id.value=this.name;obj.submit();" name="test">
<form name="f1" action="hoge.htm" method="get">
<input type="text" name="pic_id" value="">
</form>

で、勝手な良そうですが、別のタグにf1という名前を
つけているとかそういうボーンヘッドじゃないすか?
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!