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

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

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

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

FuelPHP

FuelPHPは、軽量高速で開発が可能なPHPのWebアプリケーションフレームワークです。

Q&A

解決済

1回答

12550閲覧

(fuelPHP ajax)セレクトボックスの値を取得して結果を返す

dthani

総合スコア131

jQuery

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

FuelPHP

FuelPHPは、軽量高速で開発が可能なPHPのWebアプリケーションフレームワークです。

1グッド

0クリップ

投稿2015/04/13 08:59

編集2015/04/13 09:58

セレクトボックスの値が変わったときに、
DBからデータを取り出して、画面を表示しようと思うのですが、上手く行きません。

http://atmarkplant-dj.blogspot.jp/2012/10/fuel-php-ajax.html

上記URLを参照して書いたのですが、書き方があまりわからず、下記のエラーになります。
どのように書き方が悪いのかご教授下さい。

Failed to load resource: the server responded with a status of 500 (Internal Server Error)

lang

1jQuery 2 3//idはセレクトボックスの値です。 4 5<script type="text/javascript"> 6$(function($) { 7 $('#id').change(function() { 8 // 内容 9 var selectVal = $('#id').val(); 10 11 $.post( 12 "/ajaxgetformat/create.json", 13 selectVal, 14 function(data){ 15 $('#preview').html(data); 16 } 17 ); 18 }); 19}); 20</script> 21 22

lang

1FuelPHP 2<?php 3class Controller_Ajaxgetformat extends \Fuel\Core\Controller_Rest 4{ 5 public function post_create() 6 { 7 $id = $_POST['id']; 8 9 $dummy = Model_Format::dbselect($id); 10 11 //return $dummy[0]["field"]; ←returnではなくecho 12 echo $dummy[0]["field"]; 13 14 } 15 16} 17?>
scor1215👍を押しています

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

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

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

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

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

guest

回答1

0

ベストアンサー

fuelPHPは全く知らないのですが、500ということはインターナルサーバーエラーですね。

$id = $_POST['id'];

をみると、POSTパラメターのidを取得したいようですが、

$.post( "/ajaxgetformat/create.json", selectVal, function(data){ $('#preview').html(data); } );

これ、上からurl、data、成功時コールバックとなっていて、そのdataについて、値をそのまま記述していてパラメター名がわかりません。

ですから$_POST['id']では未定義変数にアクセスしようとしてエラーになっているのではないでしょうか?
(もしそうなら500が返るってのはフレームワークとしてはあんまりな気がしますが…)

$.post( "/ajaxgetformat/create.json", {'id': selectVal}, function(data){ $('#preview').html(data); } );

こうしてみたらどうでしょうか?

投稿2015/04/13 09:17

編集2015/04/13 09:58
退会済みユーザー

退会済みユーザー

総合スコア0

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

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

dthani

2015/04/13 09:59

さらに、phpで値を返すところが、returnから、echoに直したら上手く行きました。 ありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問