人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

成功報酬 230ポイント

Ajax と PHP

<form action="mail.php" method="post">
<input type="hidden" name="from" value="index.php">
<input type="text" name="name">
<input type="text" name="email">
<text area name="messeage"></textare>
<input type="submit" value="Send">
</form>
<div id="message"></div>

というフォームがあります。これをPrototypeを使用し、sendが押されると各情報が mail.php にPOSTで送られます。受信が完了するとmail.phpは ご意見ありがとうございました。 という値をリターンし、<div id="message"></div> 内にメッセージを表示させるようにするにはどうすればいいのでしょうか?

PHP側ではなくAjax側をお願いします。成功した場合には少ないですが230ポイントをお支払いします。

注意:通常、AjaxでPOST形式でデータを送信する際 & を含むとそれ以後の文字が送信されなくなります。それを回避したものをお願いいたします。

●質問者: esecua
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:Ajax PHP Prototype うご データ
○ 状態 :終了
└ 回答数 : 4/4件

▽最新の回答へ

1 ● llusall
●27ポイント

エンコードが必要かと思います。

以下、参考になりますでしょうか?


JavaScript++かも日記

【Ajax】自家製エンコード関数

JSON/PHPでGET,POST(by my encode)

◎質問者からの返答

なるほど。この関数は知りませんでした。参考になります。12ポイント?


2 ● jippu
●27ポイント

prototype.jsでしたら、Ajax.Requestというのがこれにピッタリかもしれません。

参考

簡単ですが作ってみました

http://jippu.net/ajax/question/1176079627.html

これでいかがでしょう?

余談ですが、textarea周りに記述ミスとかがありましたよ。(大丈夫だとは思いますが)

◎質問者からの返答

ありがとうございます。

ん?ちょっと試してみたのですが、Firefoxでは動きませんね。最低でもIE6,7 Firefox、Safarなどの主要ブラウザで動けるタイプがいいです。

25ポイント?


3 ● jippu
●26ポイント

2の回答者です。Firefoxでも動くように修正しましたよ。

(できればこれくらいはご自身でやって頂きたかった)

◎質問者からの返答

ありがとうございます。一度検討してみます。

>できればこれくらいはご自身でやって頂きたかった

すいません。なるべく自力でやりたいのですが、JSは始めたばかりなもので。。。

ただ、&を含んでしまうと送信されないみたいです。

25ポイント?


4 ● jippu
●10ポイント

>ただ、&を含んでしまうと送信されないみたいです。

これはパラメータをencodeURIComponent()してあげて下さい。&もエンコードされるはずです。

PHP側ではたぶん特に何もしなくても&になるのではないでしょうか。

サンプルのPHP側で受け取ったパラメータも表示するようにしています。試してみてください。

http://jippu.net/ajax/question/1176079627.html

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ