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

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

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

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

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

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

Ajax

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

Q&A

2回答

6073閲覧

ajaxを使ってpostでデータを取得したい

honoka11191

総合スコア50

PHP

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

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

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

Ajax

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

0グッド

0クリップ

投稿2014/08/21 13:48

こんにちは
現在webにリストを作っているのですがわからないことがあるので質問させていただきます

わからないことはajaxを使ってpostでデータを取得したいということです

![イメージ説明]WIDTH:600
現在web上ではこんなかんじにリストができています
この団員の値を1なら501統合 2なら502統合 3ならその他と変換するようにしたいです

![イメージ説明]WIDTH:127
こちらはMySQLのテーブルの値です

どのようにすれば出来るでしょうか?

http://raining.bear-life.com/jquery/ajax%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%A6post%E9%80%81%E4%BF%A1%E3%81%A7%E3%83%87%E3%83%BC%E3%82%BF%E5%8F%96%E5%BE%97

こちらのサイトを参考してやってみたのですが上手く行きません
どうかお力をお貸しください

htmlコードです

<script type="text/javascript" src="jquery-1.7.2.min.js"></script> <script type="text/javascript"> $(function(){ $.ajax({ async: true, type: 'POST', url: 'table.php', data: {'id': 0}, success: function(result) { try { var json = JSON.parse(result); $.each(json, function (idx, val) { console.log(val); var Array=['id','name','ail','caeate','did','udate'],i; var $tr = $("<tr />"); for(i=0;i<Array.length;++i){ $('<th />').text(val[Array[i]]).appendTo($tr); } $("#table1").append($tr); }); } catch (err) { alert('エラーが発生しました'); return false; } }, error: function(msg) { alert('エラーが発生しました'); return false; } }); }); </script> </head> <body> <table id="table1"> <thead> <tr> <th>ID</th> <th>名</th> <th>アドレス</th> <th>団員</th> <th>新者</th> <th>日時</th> </tr> </thead> <tbody> </tbody> </table> </body> </html>

こちらはphpです

<?php $mysql_host = 'localhost'; $mysql_user = 'root'; $mysql_pw = ''; $mysql_use_db = 'table'; $id = $_POST['id']; $link = mysqli_connect($mysql_host, $mysql_user, $mysql_pw, $mysql_use_db);; if (mysqli_connect_error()) { die('mysql接続失敗: ' . mysqli_connect_error()); } $link->query("SET NAMES 'utf8'"); $query = "SELECT * FROM table ORDER BY id ASC "; $result = $link->query($query); $ary = array(); while($row = mysqli_fetch_array($result, MYSQL_ASSOC)) { $ary[] = $row; } mysqli_close($link); header('Content-Type: application/json; charset=utf-8'); echo json_encode($ary); class Caeate { public static $caeate = array( 1 => '501統合', 2 => '502統合', 3 => 'その他' ); } ?>

※Console画像です

![イメージ説明]WIDTH:600
内容です
POST https://localhost:26143/skypectoc/v1/pnr/parse net::ERR_FAILED jquery-2.1.0.min.js:28
l.cors.a.crossDomain.send jquery-2.1.0.min.js:28
o.extend.ajax jquery-2.1.0.min.js:28
PNR.findNumbers pnr.js:43
(anonymous function) contentscript.js:340
parseContent contentscript.js:316
processSettingsResponse contentscript.js:549
(anonymous function) browserSpecificScript.js:77
messageListener extensions::messaging:340
EventImpl.dispatchToListener extensions::event_bindings:397
publicClass.(anonymous function) extensions::utils:89
EventImpl.dispatch_ extensions::event_bindings:379
EventImpl.dispatch extensions::event_bindings:403
publicClass.(anonymous function) extensions::utils:89
dispatchOnMessage extensions::messaging:304
$.ajax.success userlist.html:34
o jquery-1.7.2.min.js:2
p.fireWith jquery-1.7.2.min.js:2
w jquery-1.7.2.min.js:4
d jquery-1.7.2.min.js:4

どうかお力をお貸しください

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

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

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

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

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

guest

回答2

0

参考にされたページにならうなら、
$id = $_POST['id'];

header('Content-Type: application/json; charset=utf-8');
が足りないようです。

あと、どんなエラーが出てダメなのかが分かると答えやすいと思います。

投稿2014/08/21 14:16

argius

総合スコア9388

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

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

honoka11191

2014/08/21 14:45

入れてみたのですが出来てませんでした Consoleにエラーはなくアラートでエラーが発生しましたがでました
argius

2014/08/21 14:52

追加するのは、元の参考にされたページに書かれている順番と合わせないとダメですよ。 `$id = $_POST['id'];`の行は`mysql_connect`の前に、 `header(...)`の行は`echo json_encode`の行の前に 追加してください。
argius

2014/08/21 15:00

それと、「エラーが発生しました」を出すときに、 errとかmsgの内容も出せるようにしておくと、 どんなエラーが出ているかが分かりやすくなりますよ。
honoka11191

2014/08/21 16:03

ご指摘ありがとうございます phpのコードに順番通りに入れてみましたが再びアラートのエラーが出ました errとかmsgの内容も出すにはどうすればいいでしょうか?
argius

2014/08/21 21:33

エラーメッセージの内容を見るには ブラウザーの開発ツールを使えると楽だと思いますが、 とりあえずalertを使うなら、 msgのほうは alert('エラーが発生しました: msg=' + msg); errのほうは alert('エラーが発生しました: err=' + err.description); のようにすれば良いかと思います。 console.logの使い方が分かるのでしたら、そちらに出しても良いです。
honoka11191

2014/08/21 23:57

F12のことでしたかすみません使ってました そこのConoleの部分にもエラーは出てませんでした
honoka11191

2014/08/22 01:31

Consoleの画像も追記しましたですが このエラーはいつも出ているものです 出ていてもリストは表示されています
argius

2014/08/22 03:03

コンソールの内容は、catchのところで出ているエラーのものですか? Google Chromeをお使いでしたら、 デバッグ機能で確認することができます。(下記URL参照) http://www.buildinsider.net/web/chromedevtools/01#page-5 どの処理でどんなエラーが出ているかが突き止められると良いんですが。
argius

2014/08/22 03:30

もうひとつ、 table.phpをajaxを介さずに直接実行すれば、 直接結果のJSONかPHPのエラーを確認できるかもしれません。
honoka11191

2014/08/22 04:06

Consoleの内容はjsのところです これはスカイプを導入したら出るようになったんですが作業に影響が出なかったので放置してました アラートのエラーはcatchの部分です
argius

2014/08/22 04:34

Catchのエラーの詳細は分かりませんか? それと、table.phpを直接実行してみていただけますか?
honoka11191

2014/08/22 04:45

普段ならConsoleのでエラー内容が表示されるんですがされてません 例えばToken;エラーとかです phpを実行したところ配列でデータベースからとってくることはできてますがcreateの値は数字のままで文字に変更はできていません
guest

0

コメント欄の続きになってしまいますが、再度、解答欄に投稿させていただきます。

手元でできる限り再現させてみた結論ですが。

resultが既にJSONパース済みなので、
var json = JSON.parse(result);
は不要で、
eachのところはjsonの代わりにresultを指定してみてください。
$.each(result, function (idx, val) {

これでもうまくいかないようでしたら、
catchのところに
console.log("catch"); console.log(err);
を追加して、詳細のエラー情報を取得してみてください。

投稿2014/08/22 09:37

argius

総合スコア9388

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問