1

我有一个<input>框,要求用户输入他们的ID号码。输入后,我想ID通过 JSON 打印来自 mysql 的关联名称。

我的问题是,我如何ID在 javascript/jquery 中传递值

$('input#name-submit').on('click', function () { //get the ID input
    var id = $('input#name').val(); // store it in this string

     $.getJSON("fetch.php", {id: id}, function(data) { //pass the ID in fetch.php
        $.each(data.member, function(key, value) { 
            $("#print").text(data.emp[key]["name"]);

        });
    });

我的 fetch.php (不是实际的,但这是我认为的方式)

if (isset['id'] == true {
    require 'db.php';

$query = "select * from `members` where `member_no` = '[id]'";
$result = $db->($query);

$myArray = array();
while ($row = mysqli_fetch_array($result)) 
       array_push($myArray, array('name' => $row [1]);

echo json_encode(array("result" => $myArray));
}

我正在寻找的缺失部分是

  • 如何id通过 javascript 将值传递给我的 fetch.php 并查询该 ID 的关联名称
  • 我的正确逻辑语法fetch.php将查询显示为 JSON 格式,获取结果并将其显示在$("#print")div 上。
4

1 回答 1

2

代替

if (isset['id'] == true {

if (isset($_GET['id'])) {
     -----^^^^^^^^^^^^---

或者

if (isset($_REQUEST['id'])) {
     -----^^^^^^^^^^^^^^^---

您正在使用if (isset['id'] == true {which is wrong if 条件来检查isset您是否需要使用superglobalie$_GET,$_POST,$_REQUEST

对于您正在使用的 MySQL 查询,['id']它的行为与普通字符串相同,而您必须如上所述使用 supergloabal。

$query = "select * from `members` where `member_no` = '".$_REQUEST['id']."'";

或者

$query = "select * from `members` where `member_no` = '".$_GET['id']."'";
于 2013-09-27T07:44:38.947 回答