2015-01-10 3 views
-1

So- .. Я искал, как исправить эту функцию; но я не могу понять. Может кто-нибудь дать руку? Я получаю сообщение об ошибке в этой строке (я включу функцию php). PHP функция:Неопределенное смещение: 2 (функция php)

while($sql_row = mysqli_fetch_row($result)) 

Фактическая неисправна линия:

<tr> 

    <td><a <?php echo 'href="character_staff.php?action=manage&name=' . $sql_row[0] . '"'; ?>><?php echo $sql_row[0]; ?></a></td> 

    <td><a <?php echo 'href="character_staff.php?action=manage&name=' . $sql_row[0] . '"'; ?>><?php echo $sql_row[2]; ?></a></td> 

</tr> 

Я не могу показаться, чтобы выяснить, как это исправить. Он должен изменить URL в ссылку, которая содержит текст (IE: character_staff.php действие = управление & имя = учётная_запись)

+0

Каковы столбцы, возвращаемые вашим SQL-запросом? –

+0

ID, имя - где ID - это идентификатор, указанный при регистрации (AI), а Name - это фактическое имя, которое должно соответствовать. – Sam

ответ

0

Проблема здесь:

<?php echo $sql_row[2]; ?> 

Ваш код пытается вторить третий элемент массива $ sql_row, но массив не содержит трех элементов. Есть два способа исправить проблему: измените код на ссылку только на те элементы, которые существуют в массиве, или измените массив, чтобы содержать больше элементов.

Примечание: в случае, если вам интересно, почему $sql_row[2] ищет третий элемент, это связано с тем, что массивы нуль-индексируются.

$sql_row[0] 

возвращает первый элемент.

$sql_row[1] 

возвращает второй элемент и так далее.

+0

У этого есть исправление. Я не помнил об этом, поэтому почему он всегда пытался получить его позже. Благодарю. – Sam

Смежные вопросы