- ベストアンサー
シングルコーテーションのデータ受渡し方法
現在PHPとMySQLで初めてシステムの作成をしていて、データの受渡し方に悩んでいます。 FormでPOSTのデータの「'」の受渡しで、現在はPHP内で $body .= "<FORM NAME='objform' ACTION='form_check.php' METHOD='POST'> <INPUT TYPE='hidden' NAME='name' VALUE='$name'></FORM>" のようにすると、$nameに途中に「'」が入ってしまった場合、途中で切れた文字が受け渡されてしまいます。 そこで、 print <<< EOF <FORM NAME="objform" ACTION="form_check.php" METHOD="POST"> <INPUT TYPE="hidden" NAME="bunrui" VALUE="$bunrui"> </FORM> EOF; のようにして、受渡しは出来たのですが、Javascriptの併用で、 <input type="button" value="編集" onclick="EditExec('$name', '$namae_cd');"> のように、引数を複数渡す時に「'」を使うとjavascriptが動かなくなってしまいました。 皆さんはデータ受渡しの時はどのように行っているのでしょうか? もし良い解決策がありましたらご教授下さい。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
$body = "<FORM NAME=?"objform'?" ACTION=?"form_check.php'?" METHOD=?"POST?"> <INPUT TYPE=?"hidden?" NAME=?"name?" VALUE=?"".$name."?"></FORM>"; ?を、円マークに直して下さい。
その他の回答 (1)
- moon_night
- ベストアンサー率32% (598/1831)
htmlspecialchars($name);
お礼
回答ありがとうございます。 勉強不足で、htmlspecialcharsという関数を始めて知りました。 これを勉強して、併用してみたいと思います。
お礼
回答ありがとうございます。 この方法で、元のやり方で作成出来ました。こういう発想が出てこなくて、経験不足と勉強不足を痛感します。 この方法でjavascriptに2つの引数を渡したところでエラーが出てきてしまっていますが、値は渡せてるみたいなのでもう少し頑張ってみたいと思います。