2

私はこの問題に夢中になっていて、何が悪いのかわかりません。私がやろうとしているのは、データベースから現在のメニューの画像とサムネイルの URL を取得する単純な AJAX 呼び出しです。次のようなオブジェクト リテラル内に関数があります。

infoBlink: function() {
        $.ajax({
            url: 'ajax.php',
            type: 'post',
            dataType: 'json',
            data: {
                'menu_id' : $(".activeMenu").attr('id')
            },
            error: function(xhr, error){
                console.log(xhr); 
                console.log(error);
            },
            sucess: function(data){
                console.log("success");
                console.log(data);
            },
        });
        console.log("menu_id: " + $(".activeMenu").attr('id'));
    },

次のコードで php ファイルを参照します。

require_once('fns/classes/graphics.php');

if(isset($_POST['menu_id']) && !empty($_POST['menu_id'])) {
        $menu_id = $_POST['menu_id'];
        $gfx = new Graphics();
        $result = $gfx->getForId($menu_id);
        echo json_encode($result);
    }

次に、別のファイルにある Graphics クラスの関数を使用します。

public function getForId($menu_id)
{
    $query = $this->db->prepare("select * from graphics where menu_id=? ");
    $query->bindParam(1, $menu_id);
    if ($query->execute()) {
        return $query->fetchAll(PDO::FETCH_OBJ);
    }
}

さて、問題は、ajax.php を単独でテストしたところ、データベースから必要なすべてのデータが完全に返されることです。次に例を示します。

[{"id":"4","menu_id":"2","name":"logo_v2_vert.jpg","url":"images\/logo_v2_vert.jpg","thumbnail_url":"images\/thumbnails\/logo_v2.jpg"}]

、しかし、AJAXを使用してもまったく何も起こりません。エラーも成功のコールバックも実行されず、何も実行されません。どんな助けでも大歓迎です。

4

1 に答える 1