0

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'];、JSONでエンコードされた$ messageを使用すると、未定義で表示されます。

では、どのようにしてmysqlクエリから単一のレコードを選択し、残りのすべてのコードも機能させることができますか?

4

1 に答える 1

0

変数$messageをとして宣言してから、条件の値をarray宣言します。次のようにしてみてください:assignif

$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);
    }
于 2012-07-03T07:26:15.537 に答える