0

昨日、データベースからデータを取得してJava配列に保存することができました。ただし、それはロード中だったので、クリックするとコードが機能しなくなりました。だから私はajaxについて読んで、この機能を持っています:

  var infArray = new Array();
  var country;
    $('#australia').click(function() {
        //console.log("you clicked"+txt);
        country = 'Australia';
        $.ajax({
            type: 'POST',
            url: 'php/Maps.php',
            data: {country: country},
            success: function(data){
            alert("success"+data); // this will hold your $result value
            infArray = JSON.parse(data)
            console.log( 'Return:' + data );
            }           
        });
    });

私の理解では、これにより関数を含むphpファイルが開き、$_POSTを使用して変数「country」を使用できるようになります。

したがって、私のphpファイルは次のようになります。

<?php
require '../classes/Mysql.php';

function get_Stockist(){ // if su = 0 then stockist if = 1 then member
    $mysql = new Mysql();
    $result = $mysql->getInfo($_POST['country']);
    echo json_encode($result);
}

繰り返しますが、私の目には、 $result はメソッドの結果に設定されています : で Mysql.php :

function getinfo($country){

    $rows = array();
    $query = "SELECT Name,add1 FROM stockistsWorld WHERE Country = '". mysql_escape_string($country) ."' LIMIT 5";
    //$query = "SELECT Name,add1 FROM stockistsUK LIMIT 10";
    $result = mysqli_query($this->conn, $query);
    /* numeric array */

    while($row = mysqli_fetch_array($result, MYSQLI_NUM)){

         $rows[] = $row;

        }
    return $rows;
}

ただし、私のhtmlの結果はnullです

4

1 に答える 1