获取单个数据返回错误


Fetching single data returns error

我试图在服务器数据库中提取几个单独的数据,但这会引发一些错误。传入的数据是正确的。搜索功能就是没有完成。

这是代码:

<?php
if($_SERVER['REQUEST_METHOD']=='POST'){
define('HOST','xxxxxxxxxxx');
define('USER','xxxxxxxxxxxx');
define('PASS','xxxxxxxxx');
define('DB','xxxxxxxxxx');
 $con = mysqli_connect(HOST,USER,PASS,DB);
 $post_id = $_POST['id'];
 $buyer_mobile = $_POST['mobile'];
 $buyer_name = $_POST['name'];
$sql = "select mobile from flatowner where id='$post_id'";
$res = mysqli_query($con,$sql);
$owner_mobile = $row['mobile'];

$sql = "select name from user where mobile='$owner_mobile'";
$r = mysqli_query($con,$sql);
$owner_name = $row['name'];
$sql = "INSERT INTO flat_booking         (post_id,owner_mobile,owner_name,buyer_mobile,buyer_name) VALUES         ('$post_id','$owner_mobile','$owner_name','$buyer_mobile','$buyer_name')";
if(mysqli_query($con,$sql)){
 echo "Success";
 }
 else{
 echo "error";
 }
mysqli_close($con);
}else{
echo 'error1';
}    

我在这里做错了什么?也许这个:

$owner_mobile=$row['mobile'];

提前感谢!

create table flatower and add mobile column    
$post_id = 1;
    $sql = "select mobile from flatowner where id='$post_id'";
    $res = mysql_query($con,$sql);
    $row = mysql_fetch_array($res);
    $owner_mobile = $row[0]['mobile'];

您的问题是这一行:

$owner_mobile = $row['mobile'];

您尚未创建$row变量。为此,你需要做一些事情,比如:

先这样做:

<?php
$row = array();
while ($result = mysqli_fetch_assoc($res))
{
    $row[] = $result;
}
?>

这允许你这样做:

<?php
foreach ($row as $r)
{
    var_dump($r); print "<br />"; // One row from the DB per var dump
}
?>