質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Ajax

Ajaxとは、Webブラウザ内で搭載されているJavaScriptのHTTP通信機能を使って非同期通信を利用し、インターフェイスの構築などを行う技術の総称です。XMLドキュメントを指定したURLから読み込み、画面描画やユーザの操作などと並行してサーバと非同期に通信するWebアプリケーションを実現することができます。

Q&A

解決済

2回答

8259閲覧

AjaxでデータをPHPに飛ばしたが、[object][Object]と表示される 

退会済みユーザー

退会済みユーザー

総合スコア0

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Ajax

Ajaxとは、Webブラウザ内で搭載されているJavaScriptのHTTP通信機能を使って非同期通信を利用し、インターフェイスの構築などを行う技術の総称です。XMLドキュメントを指定したURLから読み込み、画面描画やユーザの操作などと並行してサーバと非同期に通信するWebアプリケーションを実現することができます。

0グッド

2クリップ

投稿2015/02/15 11:49

Ajaxで、データをPHPに飛ばしてechoすると、alertでそのデータが表示されるようにしたい(下記の例では、「100」)のですが、
[object][Object]
と表示されます。
おそらくかなり基礎的なミスがあるのだと思うのですが、なかなか解決できないので、質問させていただきます。

lang

1function ajax_func(){ 2 function getXMLHttpRequestObject(){ 3 var ajax = null; 4 if (window.XMLHttpRequest){ 5 ajax = new XMLHttpRequest(); 6 } else if (window.ActiveXObject){ 7 ajax = new ActiveXObject('MSXML2.XMLHTTP.3.0'); 8 } 9 return ajax; 10 } 11 12 var senddata ={ 13 "aaa" : 100 14 }; 15 $.ajax({ 16 type: "POST", 17 url: "http://....php", 18 data: senddata, 19 success: function(msg){ 20 alert(data) ; 21 }, 22 error: function(XMLHttpRequest, textStatus, errorThrown){ 23 alert(errorThrown); 24 } 25 }) 26 return false; 27}

lang

1echo $_POST['aaa']

どこに誤りがあるでしょうか。
お分かりの方、お手数をお掛けしますが、ご教示頂ければ幸いです。
よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

コールバックのスコープでdataは参照できるのかな?

とりあえず

success: function(msg){
alert(data) ;
},

success: function(msg){
alert(msg) ;
},

かと。

投稿2015/02/15 12:13

nyago_d

総合スコア178

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2015/02/15 12:31

ありがとうございました。 success: function(senddata){ alert(senddata) ; } としたら、できました。 var senddata としたので、ここにいれる変数は統一しなければならないのですね。 そこを理解しないまま、様々なサイトを参考に記述していたので、誤っていました。
nyago_d

2015/02/16 14:41

解決できたようで幸いです。 ですが、コメントを拝見する限りちょっと勘違いをなさっているようなので補足します。 まず、ajax関数の各パラメタの意味ですが、 「dataというデータをもとにtypeという形式でデータを送り、urlの相手に処理を依頼する。処理がうまくいった時にはsuccessを、うまくいかなかったときにはerrorを呼んでもらう。」みたいなイメージです。 ここで、渡すデータと、成功時の関数の引数は全く別のオブジェクトです。 つまり、渡した箱に値を入れて返してくれるわけではないです。 ですので、コールバック関数の引数名は基本的には何でも構わないですが、 他で利用している名前を使うのはおすすめできません。
退会済みユーザー

退会済みユーザー

2015/02/17 02:33

補足頂き、ありがとうございました。 ajax関数のパラメーターの意味がよく分かりました。
guest

0

alert() は文字列や数字以外のデータを渡すと [ogject] のように表示されてしまいます。

web ブラウザの 開発用ツールで、
alert(data) 文の部分で ブレークさせて、data の内容を確認する
事はできますか?
chrome や firefox での
data の内容がわかれば、alert() に渡す文字列を作ることができるとおもいます。

参考:

投稿2015/02/15 12:10

katoy

総合スコア22324

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2015/02/15 12:32

ご回答いただき、ありがとうございました。 開発用ツールのリンク先が大変分かりやすそうなので、これで勉強します。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問