将参数传递给sqli并将结果绑定到json数组

时间:2017-11-10 06:29:06

标签: php json

我正在尝试将参数从$ .ajax帖子传递到php页面,然后传递给数据库并将结果传递给json。

搜索帖子后..我准备好了陈述

$src1= $_POST['source1'];  .. getting variable in src1

$stmt = $mysqli->prepare("SELECT * FROM tbl_beacons WHERE imei = ?");
$stmt->bind_param( "s", $src1); 

$stmt->execute();
$stmt->bind_result($col1);

    $emparray = array();
    while($row =mysqli_fetch_assoc($stmt))
    {
        $emparray[] = $row;
    }
    echo json_encode($emparray);


$conn->close();

我没有得到结果。我想我无法正确地将变量绑定到语句。

我也试过准备另一个

<?php 


include("connect.php");

if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
} 

$src1='270113184309336860';
$rows = array();
 $emparray = array();
if ($stmt = $mysqli->prepare("SELECT * FROM tbl_beacons WHERE imei = ?")) {

     $stmt -> bind_param("s", $src1);
     $stmt -> execute();
     $rows = fetch($stmt);
}

    while($row =mysqli_fetch_assoc($rows))
    {
        $emparray[] = $row;
    }
    echo json_encode($emparray);


$conn->close();

请建议我遗失的地方?

3 个答案:

答案 0 :(得分:0)

更新

while($row =mysqli_fetch_assoc($stmt))

while($row = $stmt->fetch())

答案 1 :(得分:0)

更新

$emparray[] = $row;

$emparray[] = $col1;

答案 2 :(得分:0)

您可能希望使用填充json_encode数组 键值对;其中密钥对应于数据 您在代码中使用的结构和值 对应于数据库中的名称。请注意这些 两个名字不一定相同。

echo json_encode(array(
    's' => $row->s,
    'im' => $row->imei,
    'name' => $row->NAME));