0

MySQL データベースから値を取得し、それを PHP 変数に入れたいと考えています。

私はこれを試しました:

$data = mysql_query("SELECT userid FROM ao_user " . 
  "WHERE username = '{$this->_username}' " . 
  "AND password = '{$this->_password}' AND display = '{$this->_display}'");

コードは無効なユーザー名/パスワードを示しています。

ユーザーのログインコードは次のとおりです。

<?php
  $username = "Nynex71";
  mysql_connect("localhost", "root", "test") or die(mysql_error());
  mysql_select_db("test") or die(mysql_error());
  $result = mysql_query("SELECT display FROM ao_user " . 
    "WHERE username = '{$username}'") or die(msyql_error());
  $row = mysql_fetch_assoc($result);
  echo $row['display'];
?>

public function getDisplay()
  {
    mysql_connect("localhost", "root", "test") or die(mysql_error());
    mysql_select_db("test") or die(mysql_error());

    $result = mysql_query("SELECT display FROM ao_user " . 
      "WHERE username = '{$this->_username}'");
    $row = mysql_fetch_assoc($result);
    $this->_display = $row['display'];
    $_SESSION['display'] = $this->_display;
  }

プログラムは PHP 変数に単語を入れません。私は何を間違っていますか、どうすればこれを行いますか?

4

1 に答える 1

3

mysql_query選択した値ではなく、結果ハンドルを返します。最初に行をフェッチしてから、その行から値を取得する必要があります。

$result = mysql_query("SELECT ...") or die(msyql_error());
$row = mysql_fetch_assoc($result);
echo $row['userid'];
于 2012-07-09T21:36:19.160 に答える