• 締切済み

これに間違いはありますか?

<? 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 となっています。 ご教授お願いいたします。

みんなの回答

回答No.4

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

回答No.3

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

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.2

まず重要なのは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という名前を つけているとかそういうボーンヘッドじゃないすか?

回答No.1

$col[0]に " の文字が含まれているために nameが有効になっていないのでは? ソースを表示して思った通りのhtmlになっているか 確認してみて下さい。

maxpower-zero
質問者

補足

htmlで表示しても、元ソースと同じように表示されました。 $col[0]に『"』は含まれていませんでした。 nameが有効になっていないとはどういう事でしょうか? 有効にする手段を教えて頂けますか?

関連するQ&A