Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/88: Рейтинг темы: голосов - 88, средняя оценка - 4.63
 Аватар для sasha300
6 / 3 / 0
Регистрация: 12.07.2014
Сообщений: 183

как избавиться от ошибки: Notice: Undefined index: id in ./headers.inc.php on line 4

22.03.2015, 22:40. Показов 18233. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
На 4 строке:
PHP
1
$id = strtolower(strip_tags(trim($_GET['id'])));
если пытаюсь объявить переменную $id:
PHP
1
2
$id='';
$id = strtolower(strip_tags(trim($_GET['id'])));
То все-равно вылазит ошибка со смещением на строку ниже:
Notice: Undefined index: id in /var/www/inc/headers.inc.php on line 5
Подкажите, пожалуйста, как избавиться от этой ошибки(без & и без error_reporting(0))?
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
22.03.2015, 22:40
Ответы с готовыми решениями:

Notice: Undefined index: files in newnews.php on line 61
<?php $modul_name='Написать/редактировать новость'; require_once "../function.php"; if (!user()) { header("Location: /");...

Выдает ошибку Notice: Undefined index: Hall_Theatre_idTheatre in C:\xampp\htdocs\CourseWork\FindSeance.php on line 7
прошу помощи. Создаю выпадающее меню с помощью MySQL, PHP и JavaScript. Пользователь должен выбрать город, театр, дату и время показа...

Ошибка: Notice: Undefined index: page in W:\domains\domain-include.su\application\models\Dashboard.php on line 54
public function tariffsList($route) { $max = 10; $params = ?: 1) - 1) * $max), 'uid' => $_SESSION, ]; return...

6
Эксперт PHP
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
22.03.2015, 22:51
PHP
1
2
3
if (isset($_GET['id'])) {
// do smth.
}
чтобы из массива что-то достать, сперва нужно туда что-нибудь поместить
1
 Аватар для sasha300
6 / 3 / 0
Регистрация: 12.07.2014
Сообщений: 183
22.03.2015, 23:14  [ТС]
Поползли ошибки:

Notice: Undefined variable: id in /var/www/inc/headers.inc.php on line 8

Notice: Undefined variable: id in /var/www/inc/headers.inc.php on line 12

Notice: Undefined variable: id in /var/www/inc/headers.inc.php on line 16

Notice: Undefined variable: id in /var/www/inc/headers.inc.php on line 20

Notice: Undefined variable: id in /var/www/inc/headers.inc.php on line 24
После того, как сделал так:
PHP
1
2
if (isset($_GET['id'])){
$id = strtolower(strip_tags(trim($_GET['id'])));}
В общем привожу полный код:
headers.inc.php:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?
$title = 'Супер-мега сайт';
$header = "Добро пожаловать на наш сайт!";
if (isset($_GET['id'])){
$id = strtolower(strip_tags(trim($_GET['id'])));}
// Инициализация заголовков страницы
switch($id){
    case 'contact': 
        $title = 'Контакты';
        $header = 'Обратная связь';
        break;
    case 'about': 
        $title = 'О нас';
        $header = 'О нашем сайте';
        break;
    case 'info': 
        $title = 'Информация';
        $header = 'Информация';
        break;
    case 'log': 
        $title = 'Журнал посещений';
        $header = 'Журнал посещений';
        break;
    case 'gbook': 
        $title = 'Гостевая книга';
        $header = 'Наша гостевая книга';
        break;      
}
0
368 / 406 / 165
Регистрация: 29.05.2014
Сообщений: 1,494
23.03.2015, 00:15
У тебя в $_GET['id'] случайно не массив лежит?
Первым делом распечатай гет.
1
 Аватар для sasha300
6 / 3 / 0
Регистрация: 12.07.2014
Сообщений: 183
23.03.2015, 00:40  [ТС]
Цитата Сообщение от BarbosLV Посмотреть сообщение
У тебя в $_GET['id'] случайно не массив лежит?
Конечно массив! Не зря id в квадратных скобках.

Цитата Сообщение от BarbosLV Посмотреть сообщение
Первым делом распечатай гет.
В плане вывести его?
Т.е. так?
PHP
1
print_r ($_GET['id']);
Если строка прописана, то появляется ещё ошибка:
Notice: Undefined index: id in /var/www/inc/headers.inc.php on line 4

Notice: Undefined index: id in /var/www/inc/headers.inc.php on line 5
0
368 / 406 / 165
Регистрация: 29.05.2014
Сообщений: 1,494
23.03.2015, 01:30
Цитата Сообщение от sasha300 Посмотреть сообщение
Не зря id в квадратных скобках.
Это ни о чём не говорит. Там может быть строка а может и массив.
Но в данном случае это не важно. Вот эта надпись
Notice: Undefined index: id in /var/www/inc/headers.inc.php on line 4
говорит что в массиве $_GET нет ключа id

Добавлено через 2 минуты
а распечатать гет это
PHP
1
print_r ($_GET);
а лучше
PHP
1
2
3
echo '<pre>';
print_r ($_GET);
echo '</pre>';
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
$title = 'Супер-мега сайт';
$header = "Добро пожаловать на наш сайт!";
if (isset($_GET['id']))
  {
    $id = strtolower(strip_tags(trim($_GET['id'])));
  }
else $id = 'contact';
switch($id){
    case 'contact': 
        $title = 'Контакты';
        $header = 'Обратная связь';
        break;
    case 'about': 
        $title = 'О нас';
        $header = 'О нашем сайте';
        break;
    case 'info': 
        $title = 'Информация';
        $header = 'Информация';
        break;
    case 'log': 
        $title = 'Журнал посещений';
        $header = 'Журнал посещений';
        break;
    case 'gbook': 
        $title = 'Гостевая книга';
        $header = 'Наша гостевая книга';
        break;      
 
   default:
   $id = 'contact'; 
}
1
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
23.03.2015, 07:22
Лучший ответ Сообщение было отмечено sasha300 как решение

Решение

Цитата Сообщение от BarbosLV Посмотреть сообщение
а лучше
А ещё лучше подключить xdebug и и
Цитата Сообщение от sasha300 Посмотреть сообщение
Если строка прописана, то появляется ещё ошибка:
спользовать var_dump(). Он сам в удобном виде предоставляет распечатку.
Вы в GET не передаёте параметр "id". Поэтому оповещение получаете.
И зачем Вы тут кучу лишних функций понаписали? Тут же с помощью switch проверка идёт. Так что об инъекциях можно не беспокоиться. Вот если бы Вы подставляли параметр в подключение файла - тогда да. И то не такими функциями надо было бы проверять.
По делу:
Первым делом проверьте, если ли параметр ID в GET (т.е. просто посмотрите на адресную строку браузера).
Затем измените это:
PHP
1
2
if (isset($_GET['id'])){
$id = strtolower(strip_tags(trim($_GET['id'])));}
На это:
PHP
1
$id = isset($_GET['id']) ? strtolower($_GET['id']) : 'about';
Страница "О нас" в таком случае будет показываться по умолчанию. Если нужно - измените потом.
Если и опять не сработает, то читайте: http://phpfaq.ru/debug.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
23.03.2015, 07:22
Помогаю со студенческими работами здесь

Notice: Undefined index: buttonstyle in C:\wamp\www\steamauth\steamauth.php on line 19
Помогите пожалуйста решить данную ошибку Notice: Undefined index: buttonstyle in C:\wamp\www\steamauth\steamauth.php on line 19 если...

Notice: Undefined index: rating in Z:\home\ss1s.com\www\catalog\model\catalog\product.php on line 22
Здравствуйте,помогите исправить ошибку Notice: Undefined index: rating in Z:\home\ss1s.com\www\catalog\model\catalog\product.php on line 22...

Notice: Undefined index: mail in \var\www\object\ on line 38
Не могу понять, почему не выводится mail с БД. Есть метод, с помощью этого метода я подключаюсь к БД, и делаю SQL запрос. public...

PHP Notice: Undefined index
у меня вот такая ощибка: PHP Notice: Undefined index: guid in /var/www/logotiper1/data/www/rhsrv.com/qwerty/connect_api.php on line 8...

Php Notice: Undefined index
Здравствуйте. У проблема со скриптом... выдает Notice: Undefined index: {USER} in...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru