Запрос не возвращает правильные результаты в функции - PullRequest
0 голосов
/ 22 октября 2011

Следующая функция настроена на:

  1. Соберите user_id из моей базы данных, как вы можете видеть ниже WHERE subscriber = '$user'.И затем:
  2. возвращает возможные множественные значения, которые user_id.

Однако, когда я попытался использовать эту функцию, она собрала только массив с ключом 0 и значением user_id.По понятным причинам я хочу, чтобы массив содержал числовое значение, которое находится в столбце user_id в моей базе данных с ключом user_id.

function get_subscribitions($user)
{
    $user = mysql_real_escape_string ($user);

    $sql = "SELECT 'user_id' FROM `subscribe` WHERE subscriber = '$user'";

    $result = mysql_query($sql);

    $rows = array();

    while ($row = mysql_fetch_assoc($result)) {
        $rows[] = $row;
    }

    mysql_free_result($result);

    return $rows;
}

Может кто-нибудь, пожалуйста, точно указать, где я делаю ошибкуприводит к этим связанным проблемам?

Любая помощь приветствуется, спасибо заранее!

Ответы [ 2 ]

3 голосов
/ 22 октября 2011

Это должно быть:

 function get_subscribitions($user)
{

$user = mysql_real_escape_string ($user);

  $sql = "SELECT user_id FROM `subscribe` WHERE subscriber = '$user'";

 $result = mysql_query($sql);

  $rows = array();

  while ($row = mysql_fetch_assoc($result)) {
      $rows[] = $row['user_id'];
  }

  mysql_free_result($result);

  return $rows;
}

В запросе были лишние кавычки, и вы неправильно читали массив $ row

3 голосов
/ 22 октября 2011

Попробуйте вместо

$sql = "SELECT user_id FROM `subscribe` WHERE subscriber = '$user'";

Обратите внимание на одиночные кавычки, отсутствующие примерно в user_id

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...