ベストアンサー $_POSTのデータ 2006/10/24 07:02 $_POSTでわたってきたデータで"が\"となっているのですが、これはどういう働きなのでしょうか? 通常の"にする方法はありますか? みんなの回答 (2) 専門家の回答 質問者が選んだベストアンサー ベストアンサー inu2 ベストアンサー率33% (1229/3720) 2006/10/24 21:10 回答No.2 " や ' はPHPではちょっと特殊な意味があります 例えば、_POST["name"]の中身が 名"前 だったとします そのまま echo $_POST["name"]; としたらどうなるでしょう PHPが理解する内容としては echo "名"前"; となります これではエラーが出て当然ですよね ですから、 ” を文字列として扱うために前に¥をつけて echo "名\"前"; とし、 名と前の間にある " を「文字列の一部として扱いなさい」と解釈させるわけです "や'を文字として扱いたいときには \を前につけるという約束事があります \ そのものも文字として扱いたいときには \\ とします _POSTや_GET等で送られてくるデータすべてに対して特殊な文字が含まれている場合に自動的に\をつけるようにしているのが php.iniの中の magic_quotes_gpc = On となっている部分です 自動で付けたくない場合は magic_quotes_gpc = Offにしてください この場合、なんらかの方法で 特殊文字をエスケープ(¥をつける)しないと、セキュリティ的に大変危険になる可能性がありますので十分に注意してください PHPの標準関数の中に同じように特殊な文字に対して¥をつける addslashes() という関数がありますが、2バイト文字(ここでは日本語)に対して深刻がバグがあるので使わない様にしてください ちなみに¥を取り外すのは stripslashes() です http://jp.php.net/stripslashes 広告を見て全文表示する ログインすると、全ての回答が全文表示されます。 通報する ありがとう 0 その他の回答 (1) Yeti21 ベストアンサー率47% (396/830) 2006/10/24 11:25 回答No.1 一部の特殊記号は、リテラルとしての識別のためにバックスラッシュでエスケープされます。 下記の設定(php.ini)でエスケープされなくなると思いますが、文字列を扱うときには注意が 必要になります。 文中ではダブルコーテーション(")は使用しないようにするのが無難です。 他にも思わぬ問題が出る可能性が有りますので注意して下さい。 magic_quotes_gpc FALSE 参考URL: http://www.php.net/manual/ja/ref.info.php#ini.magic-quotes-gpc 広告を見て全文表示する ログインすると、全ての回答が全文表示されます。 通報する ありがとう 0 カテゴリ [技術者向] コンピュータープログラミング・開発PHP 関連するQ&A postで引き渡したしたデータは、いつまで保持しているのですか? たとえば検索サイト等で、<select>タグとかで選択した都道府県データをpostで次のページにデータを引き渡したとします。次に別のページに遷移したとき、そのpostで引き渡したデータ、つまり、都道府県のデータはまだ持っているのでしょうか?また、もし持っていないなら、持たせる方法はあるでしょうか? SSIでPOSTデータを受け取りたい ○○.shtml中で <!--#exec cmd="××.cgi" --> としてcgiを実行しています(Perl) 表示は問題なくされています。 ここでフォームボタンを作りPOSTで同一の○○.shtmlファイルにデータを送りその中の××.cgiでデータを受信しその結果を表示させたいのですが、どうすればいいのでしょうか。 <form action="○○.shtml" method="POST"> ~中略~ <input type=submit value="送信"></form> こんな感じですと当然ながら○○.shtmlそのものはデータを処理しませんので、表示できません。 cgiに直接POSTでデータを送れば当然ながら○○.shtmlは関係ない世界になってしまいます。 試しに○○.shtmlへPOST送信をしてみても Method Not Allowed The requested method POST is not allowed for the URL /××/△△/○○.shtml. と表示されます。 どなたかご存じの方解決方法を教えてください。 よろしくお願いします。 POSTにしてもurlにデーターが HTMLのformでmethod="GET" PHPへデータ受け渡しOKですが、 method="POST"にするとNGです。 POSTにしてもデータがURLに載っている状態なので 送信側formでPOSTになっていないとおもうのですが なぜでしょうか?? ネットワークエンジニアとは?技術職の未来を考える OKWAVE コラム PHP5でPOSTデータを扱うとき POSTデータの扱いで悩んでいます。例えば、 if ($_POST["name"] == "yamada") { ... } とか何でもいいんですけど、$_POSTのキー名を指定する時、$_POSTのデータはクライアントから送信されてくるので、フォームをちゃんと作ってても、必ずしも期待したキー名が飛んでくるとは限らないじゃないですか? で、もし$_POST["name"]が存在しないと当然期待通りの処理ができないわけですが、皆さんどう実装されてますか? 例外使うんでしょうか? ウイニングポスト7のデータが消えた・・・ ご存知の方、教えてください(泣) ウイニングポスト7のデータが消えてしまいました。 ログインしても、全く一からのスタートになっている状態です。 考えられることは、ウイニングポストのファイルが入っていた フォルダの場所を変えたことです。 (マイドキュメントの整理をしていた際、本ソフトのファイルが 入っている「Koei」フォルダを移動させました) まず、復活できるのでしょうか? また、もし復活可能でしたら、方法をお教えください。 よろしくお願いいたします。 POSTデータが送信されなくなりました。 ある時から急にApache2+PHP4の環境下でPOSTデータが送信(又は受信)が出来なくなりました。 現象としましては、フォームで送信されたPOSTデータが送信(又は受信)出来ず、$_POSTの中を開いてみても何も無い空の状態で、念のため$_GETを開いて見ても空の状態でした。 この現象が出ている状態で、GETでデータを送信したところ、これは送受信共に可能でした。 Apacheを再起動すると現象は無くなるのですが、1日程すると再発します。 早いときでは半日程で…。 再起動してから再発するまでの期間は定まっていないみたいなので、定期的に再起動させるという方法がとれそうになく、 またその現象が出る原因が私には全くわからず… この現象はどういった時に何が原因で発生し、また解消方法を知っている方がいましたら教えて頂けないでしょうか。 Apache等のバージョンは Apache/2.0.59 (Win32) mod_ssl/2.0.59 OpenSSL/0.9.8d PHP/4.4.6 です。 SSL通信でやっていますので、一応そちらの方も記載しておきます jqueryでphpにpostするときのデータ量 jqueryでphpファイルにpostするときのデータ量に制限があるのでしょうか? $.post('data.php', { data: data } と、dataに配列情報として送信しようとしたのですが、 大体13レコードくらいまでしか送れていないようです。 この制限を解除する方法はあるのでしょうか? よろしくお願いします。 POSTデータの改ざんを防ぎたい POSTデータの改ざんを防ぎたいです。 送信サーバから受信サーバへPOSTでデータを送信します。 受信サーバでは送信元IPアドレスが送信サーバであることを確認するアクセス制限をかけます。 POSTデータを改ざんすることはツールなどでできると思いますが、 その場合はプロキシを使うため送信元IPアドレスが送信サーバのものではなくなり、 アクセス制限で防ぐことができます。 結果として受信サーバでは送信サーバからPOSTされる改ざんされていないデータを 受け取れるとして問題ないでしょうか? ふと不安になり質問しました。 セキュリティとして甘いなどあればご指定頂けると幸いです。 どうぞよろしくお願いします。 POSTでデータを送信する方法。 他のサーバーのCGIに対してPOSTでデータを送信する方法を探しています。 Perlバージョンは5.8 使用可能モジュールはPerl5.8 標準モジュール もしくはPurePerlモジュール この環境でPOSTを扱う方法をご存知でしたら、教えていただきたく思います。 POSTデータの2次元配列 2次元配列のPOSTデータはありえますか? GET,POSTのPOSTです。 formで送信したPOSTデータの削除について いつもお世話になっております。 PHPでカートを作っております。カートに入れるボタンを押した際に、どのボタンを押したかを識別する為に、POSTで識別データを送信しております。 このPOSTデータが含まれている場合にカートに入れる動作が実行される様に設定しておりますが、POSTで送信すると、ブラウザの更新ボタンを押すたびにカートに同じ商品が追加されていってしまいます。 ですので、カートに入れる動作が終了した時点で、このPOSTのデータを無効にしたいのですが、PHPのunset関数を実行しても、ブラウザの更新を押した時点で、再度POSTを送信してしまうので、やはり重複登録されてしまいます。 このPOSTのデータを無効にする方法があれば、是非お教え頂けると助かります。 ブラウザからPOSTで受け取れるデータについて ブラウザからPOSTで受け取れるデータについて 理解不足で調べてみたのですが、よくわからないので教えてください。 <input name="NAMAE" type="text"... で入力したデータがsubmit後、POSTで受け取れるのはわかったのですが 何も入力しないでsubmitした場合、 NAMAE="" のように取得できると思っていたのですが NAMAEという環境変数名(?)そのものが標準入力で取得できないのでしょうか? よろしくお願いします。 AIは使う人の年齢や市場にも影響する?人工知能の可能性 OKWAVE コラム ポスト 年賀状をポストに入れたいのですが 普通は通常のものと 年賀状専用のものとに分かれていると思うのですが、 栃木塩原のポストは投稿口が どこも一つしかありません。 これはそのまま入れてもいいのでしょうか…? 通常ハガキとして誤って配達されませんかね POSTされたデータをそのまま変数名にするような・・・ お世話になります。 タイトルのとおりなのですが、POSTされたデータをそのまま変数名にするような便利な方法はないでしょうか。 $name=htmlspecialchars($_POST["name"], ENT_QUOTES, $code); $email=htmlspecialchars($_POST["email"], ENT_QUOTES, $code); ・ ・ ・ をたくさんあるので簡単にできないかなーと思ったんですが、何か良い方法がありましたら教えてください。 よろしくお願いいたします。 ウイニングポスト7 2010のデータ連動について ウイニングポスト7 2010のPS3版にウイニングポスト7のPC版のデータを連動できるのでしょうか 公式サイトに以下のような記載があります。 http://www.gamecity.ne.jp/keiba/wp7_2010/ 『Winning Post 7』、『Winning Post World』シリーズとのデータ連動に対応。 ストーリーモードでは、ゲーム中のキャラクターやイベントが追加された状態でプレイすることが可能です。 また『Winning Post 7 2010』PS3版とPSP版の両方を揃えることで有利な状況からゲームを開始することができます。 私の家にウイニングポスト7 2010のPS3版とウイニングポスト7のPC版があるのですが、 ウイニングポスト7 2010のPS3版にウイニングポスト7のPC版のデータを連動できるのでしょうか? 改行データPOSTできない mysql+php+htmlで作ってるんですが、POST後のページで改行が反映されません。 -------------------------------- 111.php -------------------------------- - 省略 - <body> <form action="222.php" method="post"> <input type="hidden" name="data2" value=<?php echo "$data1";?>> <input type="submit" value="編集"> </body> - 省略 - -------------------------------- 222.php -------------------------------- --省略-- <?php $data2 = $_POST['data2']; ?> <form> <textarea cols="80" rows="20" name="test"><? echo "$data2"; ?></textarea> </form> --省略-- -------------------------------- これだと222.phpで1行だけしか表示されません。変数に入れれないのでしょうか? お手数ですが、ご教示お願いします。 ちなみに111.phpの方も textarea にすると正常に値が渡せます。 でも表示したくないのでイヤです。 (急いで入力したので、タイプミス&コピペミスっぽいのは無視してくださいm(_ _)m) POSTで渡されるデータの数がわからない場合 POSTでデータが送られてくるのですが、いくつ送られるか、何という変数名で送られてくるかわかりません。 getの場合は&で切って?と=を見ながら配列に突っ込めばいいと思うのですが、POSTの場合はどのようにすればよいでしょうか。 よろしくお願いいたします。 $_POST['hoge']のデータをフラッシュするには <form method="post" action=""> <input type="text" name="hoge1" value="$_POST['hoge1']"> <input type="text" name="hoge2" value="$_POST['hoge2']"> <input type="submit" value="送信"> </form> データ送信してもフォーム内にデータが残るようにしたのですが、HTMLをこのままにして、PHPの方で$_POST['hoge']の中身を消去したいのですが、どのようにすればいいでしょうか? 記入漏れの時にはそのデータが残り、すべてを記入してデータ送信後は再び何も書かれていない状態にしたいのです。できれば、Javascriptを使わないでやりたいと考えています。よろしくお願い致します。 ポストペットのデータについて ポストペットV3を使い始めました。 お試し版を削除してからにしたのですが、 インストールしてもペットを選ぶことができず そのままの状態です。 新しくペットを選び直すにはどのように したらよいでしょうか。 もう一つ。 データのバックアップをとったのですが、 そのデータをリストアするには どのようにしたらよいのでしょうか。 以上2点、おわかりになるかた お願い致します。 ポストペット→ALMAIL メールデータ変換 ポストペットで受信済みの.ppmファイルから、メールのデータを抽出してALMAILの.ALMファイルに変換したいのですが、その方法を御存知の方がいらっしゃいましたら教えてください。 また、ポストペットの”おともだち帳”にあるアドレスデータをALMAILのアドレス帳に移す方法があれば、こちらも教えてください。 注目のQ&A 「You」や「I」が入った曲といえば? Part2 結婚について考えていない大学生の彼氏について 関東の方に聞きたいです 大阪万博について 駅の清涼飲料水自販機 不倫の慰謝料の請求について 新型コロナウイルスがもたらした功績について教えて 旧姓を使う理由。 回復メディアの保存方法 好きな人を諦める方法 小諸市(長野県)在住でスキーやスノボをする方の用具 カテゴリ [技術者向] コンピューター プログラミング・開発 Microsoft ASPC・C++・C#CGIJavaJavaScriptPerlPHPVisual BasicHTMLXMLCSSFlashAJAXRubySwiftPythonパフォーマンス・チューニングオープンソース開発SEOスマートフォンアプリ開発その他(プログラミング・開発) カテゴリ一覧を見る OKWAVE コラム 突然のトラブル?プリンター・メール・LINE編 携帯料金を賢く見直す!格安SIMと端末選びのポイントは? 友達って必要?友情って何だろう 大震災時の現実とは?私たちができる備え 「結婚相談所は恥ずかしい」は時代遅れ!負け組の誤解と出会いの掴み方 あなたにピッタリな商品が見つかる! OKWAVE セレクト コスメ化粧品 化粧水・クレンジングなど 健康食品・サプリ コンブチャなど バス用品 入浴剤・アミノ酸シャンプーなど スマホアプリ マッチングアプリなど ヘアケア 白髪染めヘアカラーなど インターネット回線 プロバイダ、光回線など