При передаче данных вылезают нотисы

Aidar

Guest
При передаче данных вылезают нотисы

В файле index.php есть конструкция switch:

PHP:
switch( ( isset( $_GET['action'] ) ) ? $_GET['action'] : 'show' ) {
  case 'add': {
    //Код
  }
  case 'edit': {
    //Код
  }
  default: {
    $result = "select '*' from 'students' where 'Id'='0'";
    $sql = mysql_query($result);
    include_once(SHELL_PATH.'show.php');
Здесь я получаю данные из таблицы students (подключение к базе выполнено) и передаю их форме show.php.

Код show.php

PHP:
while( $users = mysql_fetch_array( $sql ) ) {
?>
<tr>
<td><? echo $users[Id]; ?></td>
<td><? echo $users[Surname]; ?></td>
</tr>
<?
}
?>
Здесь я создаю массив и вывожу полученные данные пользователю. Все нормально работает, все данные отображаются, но только вылезают нотисы:

Notice: Use of undefined constant Id - assumed 'Id' in z:\home\work\www\shell\show.php on line 19

Так вот вопрос: как от них избавится?
Отключение нотисов через php.ini или error_reporting не предлагать.
 

Pegas

Новичок
пробани так
while( $users = mysql_fetch_array( $sql, MYSQL_ASSOC ) ) {
?>
<tr>
<td><? echo $users["Id"]; ?></td>
<td><? echo $users["Surname"]; ?></td></tr>
<?
}
?>
 

Кром

Новичок
Pegas надо не "пробануть", а исключительно только так и писать. С кавычками или апострофами.
 

Pegas

Новичок
в данном коде не принципиально использование того или этого. суть решения вопроса в кавычках или апострофах:
$users["Id"];
$users["Surname"];
или
$users['Id'];
$users['Surname'];

все. тему мона закрывать.
 

Nimous

Guest
М... А MySQL чувствительна к регистру в именах полей?..
 

mani13

Новичок
м... а как это относится к вопросу?
MySQL - нет, почему надо писать $users['Id'] попробуй догадаться сам, например, использую var_dump
 
Сверху