Ошибка: неопределенный индекс? - PullRequest
1 голос
/ 21 октября 2011

Я получаю этот массив из функции (var_dump ()):

...{ [0]=> string(7) "user_id" } [1]=> array(1) { [0]=> string(7) "user_id" } [2]...

Когда я пытаюсь разделить значения с помощью:

$ var2 = $ var ['user_id']

Я получаю сообщение об ошибке "неопределенный индекс 'user_id'", хотя, как вы можете видеть, имя значения - "user_id", и я проверил свою базу данных сто раз, и это имя индекс.

Какие еще возможные источники ошибок существуют?

Я ценю любую помощь! Заранее спасибо!

function get_subscribitions($user)
{

$user = mysql_real_escape_string ($user);

  $sql = "SELECT * 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;

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

Ответы [ 6 ]

1 голос
/ 21 октября 2011

Вы ошибаетесь. Структура массива такая:

array:
    [0] => array:
        [0] => "user_id"
    [1] => array:
        [0] => "user_id"

Вам нужно получить к нему следующий доступ: $var[0][0], и вы получите user_id. Скорее всего, вы сделали что-то не так при настройке массива.

1 голос
/ 21 октября 2011

Ключ массива 0 содержит строку с именем 'user_id', но нет ключа с именем 'user_id', поэтому вы получаете сообщение об ошибке.

Я предлагаю вам взглянуть на то, как вы компилируете эти данные (возможно, результаты запроса?).

1 голос
/ 21 октября 2011

[0] - индекс, а данные - "user_id"

0 голосов
/ 21 октября 2011
Ошибка

, потому что user_id - это не index, а значение, имеющее index 0

0 голосов
/ 21 октября 2011

user_id не является ключом массива (доступ к которому может получить []), это значение.

Но вы можете использовать array_search()

$index = array_search('user_id', $your_array);

var_dump(  $your_array[$index]  );
0 голосов
/ 21 октября 2011

индекс равен [0].Я не думаю, что у вас это правильно структурировано.Индекс - это левая сторона объявления, значение - это право.Вы присвоили все значения «user_id» с инкрементным индексом.

...