繁体   English   中英

从mysql查询中选择单行并将其保存到变量

[英]Select single row from mysql query and save it to variable

如何从mysql查询中选择一行并将其保存到变量。 这是我当前正在使用的完整代码:

    <?php
    header('Content-Type: text/html; charset=utf-8');
    include 'config.php';

    // Connect to server and select databse.
    mysql_connect("$dbhost", "$dbuser", "$dbpass")or die("cannot connect");
    mysql_select_db("$dbname")or die("cannot select DB");


    $IND=$_POST['id'];


    $IND = stripslashes($IND);
    $IND = mysql_real_escape_string($IND);

    $sql = "select * from table where IND='$IND'";
    $result=mysql_query($sql);

       $row = mysql_fetch_array($result);
      $number = $row['number'];


    // Mysql_num_row is counting table row
    $count=mysql_num_rows($result);

    if ($count == 1) {
       $message = mysql_fetch_assoc($result);
        $message['status'] = 'ok';
        $message = array($message);


    } else {
         $message = mysql_fetch_assoc($result);
        $message['status'] = 'error';
        $message = array($message);
    }


    header('Content-Type: application/json');
        print '{"key":'. json_encode($message) .'}';
?>

但是当我使用$row = mysql_fetch_array($result); $number = $row['number']; $row = mysql_fetch_array($result); $number = $row['number']; JSON编码的$ message显示为未定义。

那么,如何从mysql查询中选择一条记录,并使其余所有代码也能正常工作?

将变量$message声明为array ,然后在if条件中assign值。 尝试如下:

$message=array();
$count=mysql_num_rows($result);

    if ($count == 1) {
       $message = mysql_fetch_assoc($result);
        $message['status'] = 'ok';
        $message = array($message);


    } else {
         $message = mysql_fetch_assoc($result);
        $message['status'] = 'error';
        $message = array($message);
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM