• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:変数 php)

スーパーグローバル変数を文字列扱いにするには?

このQ&Aのポイント
  • 変数phpでスーパーグローバル変数を文字列扱いにする方法を教えてください。
  • htmlspecialchars()関数を使用する際に、スーパーグローバル変数が文字列扱いにならないという問題があります。どうすれば解決できるでしょうか?
  • また、SQL文中でスーパーグローバル変数を使用する際に問題が発生しました。正常に動作させる方法を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • t_ohta
  • ベストアンサー率38% (5241/13712)
回答No.2

PHPは通常暗黙の型変換をしてくれ、$_POSTでも型変換します。 可能性があるとしたら、$_POST['title'] の中身が配列やオブジェクト型の場合ですね。 var_dump()で$_POST['title']がどういう型で定義されているか確認しましょう。

dhtfyjh
質問者

お礼

ありがとうございます。

dhtfyjh
質問者

補足

https://okwave.jp/qa/q9880611.html#answers こちらのページのようにjsでフォームを作り 送信すると、  Warning: htmlspecialchars() expects parameter 1 to be string, array given in /hoge.php on line 26 と出ます。 array(1) { [0]=> string(5) "t7i6i" } array(1) { [0]=> string(11) "y9ぅおぉ" } array(5) { ["name"]=> array(1) { [0]=> string(0) "" } ["type"]=> array(1) { [0]=> string(0) "" } ["tmp_name"]=> array(1) { [0]=> string(0) "" } ["error"]=> array(1) { [0]=> int(4) } ["size"]=> array(1) { [0]=> int(0) } } こちらがvar_dump($_POST['title'],$_POST['desc'],$_FILES['file']) の結果です。 ちなみに、 フォームを増やした1つ目の$_POST['title']のように指定して受け取る場合はどのようにすればよいのでしょうか?

その他の回答 (1)

  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.1

$_POST['title'] がNULLなんじゃないでしょうか。

関連するQ&A