С наступающим Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
Shellin
0 / 0 / 0
Регистрация: 23.05.2011
Сообщений: 2
1

Не могу найти ошибку в коде

08.05.2012, 16:14. Просмотров 926. Ответов 29
Метки нет (Все метки)

Выдает следующие ошибки:
Notice: Undefined index: fromAjax in C:\Program Files\EasyPHP-5.3.9\www\\class_lessons.php on line 8

Notice: Undefined index: action in C:\Program Files\EasyPHP-5.3.9\www\\class_lessons.php on line 10

Вот код, может кто подскажет в чём проблема, заранее спасибо.

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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
<?php
define('TEACHER_ZONE', true);
include_once ('../init.php');
include_once ('../include/classes.php');
include_once ('../include/lessons.php');
 
$subject_id = intval($_REQUEST['subject_id']) or die('No subject_id parameter');
$fromAjax = intval($_REQUEST['fromAjax']);
 
$action = $_REQUEST['action'];
$queryResult = '';
if ($action == 'close') {
    $grades = $_POST['grades'];
    update_lesson_grades($grades,true);
    $queryResult = "Уроки сохранены и закрыты.";
} elseif ($action == 'update') {
    $grades = $_POST['grades'];
    update_lesson_grades($grades,false);
    $queryResult = "Уроки обновлены.";;
} elseif ($action == 'addlesson') {
    $lesson_date = implode('-', array_reverse(explode('.', $_REQUEST['lesson_date'])));
    $topic = addslashes($_REQUEST['topic']);
    $lesson_type_id = intval($_REQUEST['lesson_type_id']);
    $res = add_lesson($lesson_date, $subject_id, $topic, $lesson_type_id);
    if ($res) {
        $queryResult = "Новый урок успешно добавлен.";
    } else {
        $queryResult = "Ошибка при добавлении урока.";
    }
} elseif ($action == 'changeDates') {
    $_SESSION['date_from'] = $_REQUEST['lesson_date_from'];
    $_SESSION['date_to'] = $_REQUEST['lesson_date_to'];
}
 
if ( !isset($_SESSION['date_from']) or $_SESSION['date_from'] == '') {
    $_SESSION['date_from'] = date("d.m.Y", strtotime('-10 days',time()));
}
if ( !isset($_SESSION['date_to']) or $_SESSION['date_to'] == '') {
    $_SESSION['date_to'] = date("d.m.Y");
}
 
$date_from = implode('-', array_reverse(explode('.', $_SESSION['date_from'])));
$date_to = implode('-', array_reverse(explode('.', $_SESSION['date_to'])));
$template_name = 'class_lessons.html';
$renderArray = array('date_from'=>$_SESSION['date_from'], 'date_to'=> $_SESSION['date_to'], 'ui_theme'=>$config['ui']['theme']);
$renderArray['subject_id']=$subject_id;
$renderArray['queryResult']=$queryResult;
 
if ($fromAjax) {
    $template_name = 'class_lessons_ajax.html';
    $subject = get_lesson_subject($subject_id);
    $lessons = get_lessons($subject_id, $date_from, $date_to);
    $lessons_count = count($lessons);
    $students_list = get_student_classes_list($subject['class_id'],0);
    $active_leson = false;
    foreach ($students_list as $key => $student) {
        $students_list[$key]['grades'] = get_student_lesson_grades($student['student_id'], $subject_id, $date_from, $date_to); 
    }
    
    $renderArray['lessons']=$lessons;
    $renderArray['lessons_count']=$lessons_count;
    $renderArray['students_list']=$students_list;
} else {
    $renderArray['lesson_types'] = get_lesson_types();
}
 
$template = $twig->loadTemplate('teachers/'.$template_name);
echo $template->render($renderArray);
?>
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.05.2012, 16:14
Ответы с готовыми решениями:

Не могу найти ошибку в коде поиска
Здравствуйте. Не могу найти ошибку в поиске (search.php) - данные поменяю на...

Не могу найти ошибку в коде уже третий день
Вот код для поиска по сайту: &lt;?php include_once (&quot;../db/db.php&quot;); ?&gt; ...

Не могу найти ошибку в коде при выводе фото на экран?
$dh = opendir('/home/cms.ru/www/img/'); while ($file = readdir($dh)) : echo...

Не могу исправить 1 ошибку в коде
Друзья, помогите пожалуйста исправить ошибку в коде! нужно обработать форму...

Ткните меня носом в ошибку! Не могу разобраться в коде! Не выводит данные на сайт!
добрый вечер! Имеется код для вывода контактов на сайт. Вот почти весь код...

29
crautcher
2021 / 1993 / 463
Регистрация: 27.05.2011
Сообщений: 6,837
08.05.2012, 16:18 2
вам же ясным английским языком написанно что таких индексов в массиве нет
PHP
1
2
3
$fromAjax = intval($_REQUEST['fromAjax']);
 
$action = $_REQUEST['action'];
0
LOMANI
1 / 1 / 4
Регистрация: 20.10.2016
Сообщений: 106
25.10.2016, 09:27 3
crautcher, красавчик, четко объяснил!

Вопрос в другом, что делать та с этим???

Добавлено через 33 минуты
я сделал так:
PHP
1
2
3
$fromAjax = @intval($_REQUEST['fromAjax']);
 
$action = @$_REQUEST['action'];
Но что это означает я хз =)) ошибка пропала =)
0
crautcher
2021 / 1993 / 463
Регистрация: 27.05.2011
Сообщений: 6,837
25.10.2016, 11:55 4
Цитата Сообщение от LOMANI Посмотреть сообщение
ошибка пропала =)
Не пропала, а вы ее не показали на экране. Ошибка осталась

Цитата Сообщение от LOMANI Посмотреть сообщение
Вопрос в другом, что делать та с этим???
Не использовать ничего несуществуущего
0
LOMANI
1 / 1 / 4
Регистрация: 20.10.2016
Сообщений: 106
25.10.2016, 15:09 5
Цитата Сообщение от crautcher Посмотреть сообщение
Не использовать ничего несуществуущего
ну если удалить эти строчки возникают другие ошибки
0
crautcher
2021 / 1993 / 463
Регистрация: 27.05.2011
Сообщений: 6,837
25.10.2016, 15:49 6
Цитата Сообщение от LOMANI Посмотреть сообщение
ну если удалить эти строчки возникают другие ошибки
Все верно, вы и ниже используете переменные. Зачем стирать? Переписать, чтобы использовались только существующие.
0
LOMANI
1 / 1 / 4
Регистрация: 20.10.2016
Сообщений: 106
25.10.2016, 18:02 7
crautcher, я все еще не могу догнать, так что ль?
PHP
1
2
3
4
5
6
if (empty($fromAjax)) { 
$fromAjax= intval($_REQUEST['fromAjax']);
 }
if (empty($action)) { 
$action= $_REQUEST['action'];
 }
0
crautcher
2021 / 1993 / 463
Регистрация: 27.05.2011
Сообщений: 6,837
25.10.2016, 18:05 8
LOMANI, в чем смысл делать так? В каких случаях у тебя будет $fromAjax эмпти, а в каких нет? Такое чувство, что ты вообще не понимаешь, что пишешь.
0
LOMANI
1 / 1 / 4
Регистрация: 20.10.2016
Сообщений: 106
25.10.2016, 18:41 9
Цитата Сообщение от crautcher Посмотреть сообщение
Такое чувство, что ты вообще не понимаешь, что пишешь
наверно ты прав =\\\

PHP
1
2
3
4
5
6
if (empty($fromAjax= intval($_REQUEST['fromAjax']))) { 
return $fromAjax= intval($_REQUEST['fromAjax']);
 }
if (isset($action= $_REQUEST['action'])) { 
return $action= $_REQUEST['action'];
 }
Добавлено через 28 секунд
PHP
1
2
3
if (isset($fromAjax= intval($_REQUEST['fromAjax']))) { 
return $fromAjax= intval($_REQUEST['fromAjax']);
 }
Добавлено через 15 минут
или так?
PHP
1
2
3
4
if (isset(intval($_REQUEST['fromAjax']))) { 
 $fromAjax= intval($_REQUEST['fromAjax']);
 } else {
}
0
Tverdislav
0 / 0 / 1
Регистрация: 25.10.2016
Сообщений: 81
25.10.2016, 19:53 10
у вас же 7 строка нормально без ошибок проходит потому что вы добавили проверку
PHP
1
or die('No subject_id parameter')
добавьте эту строчку в 8 и 10 строки, только измените название индекса и будет вам счастье.
0
LOMANI
1 / 1 / 4
Регистрация: 20.10.2016
Сообщений: 106
25.10.2016, 19:56 11
Tverdislav, т.е. так?
PHP
1
2
3
$fromAjax = intval($_REQUEST['fromAjax']) or die('No fromAjax parameter');
 
$action = $_REQUEST['action'] or die('No action parameter');
0
Tverdislav
0 / 0 / 1
Регистрация: 25.10.2016
Сообщений: 81
25.10.2016, 20:11 12
Да попробывал?

Добавлено через 3 минуты
И желательно всегда когда вводишь новые переменные делать их проверки на существование, что бы не возникало таких проблем.
0
LOMANI
1 / 1 / 4
Регистрация: 20.10.2016
Сообщений: 106
25.10.2016, 21:42 13
Цитата Сообщение от Tverdislav Посмотреть сообщение
Да попробывал?
утром по мск отпишусь
Цитата Сообщение от Tverdislav Посмотреть сообщение
И желательно всегда когда вводишь новые переменные делать их проверки на существование, что бы не возникало таких проблем.
понятное дело, я не прогер и скрипт не мой, а вот нужда в скрипте очень сильная
0
LOMANI
1 / 1 / 4
Регистрация: 20.10.2016
Сообщений: 106
26.10.2016, 07:10 14
Tverdislav, короче не работает
было:
Не могу найти ошибку в коде


стало:
Не могу найти ошибку в коде


ну и тоже самое с $action
0
Tverdislav
0 / 0 / 1
Регистрация: 25.10.2016
Сообщений: 81
26.10.2016, 07:35 15
Сегодня на трезвую голову посмотрел ваш код возможно для 10 строки предыдущее предложение может не сработать, если оно не поможет попробуйте это
PHP
1
2
if (isset($_REQUEST['action'])) $action = $_REQUEST['action']; 
else return null;
0
LOMANI
1 / 1 / 4
Регистрация: 20.10.2016
Сообщений: 106
26.10.2016, 07:40 16
да, 2я картинка, только эта надпись и все, чистый лист, если ничего не меня, а оставить как в первом посте, то все работает, но есть ошибка - это первая картинка.

ну и если вернуть все, как было в первом посте и проделать тож самое с action, то результат такой же как и с fromAjax
0
Tverdislav
0 / 0 / 1
Регистрация: 25.10.2016
Сообщений: 81
26.10.2016, 07:41 17
Кстати для начала я бы посоветовал вам посмотреть что передается в $_REQUEST
PHP
1
 print_r($_REQUEST);
Можете мне тоже показать что он возвращает?
0
LOMANI
1 / 1 / 4
Регистрация: 20.10.2016
Сообщений: 106
26.10.2016, 07:44 18
Цитата Сообщение от Tverdislav Посмотреть сообщение
if (isset($_REQUEST['action'])) $action = $_REQUEST['action'];
else return null;
страничка полностью чистая, только ошибка с formAjax

Цитата Сообщение от Tverdislav Посмотреть сообщение
print_r($_REQUEST);
вставил после action, получил:
Array ( [subject_id] => 8 )
Array ( [action] => changeDates [fromAjax] => 1 [subject_id] => 8 [lesson_date_from] => 16.10.2016 [lesson_date_to] => 26.10.2016 )
0
Tverdislav
0 / 0 / 1
Регистрация: 25.10.2016
Сообщений: 81
26.10.2016, 08:12 19
Вы можете скинуть ссылку на почту для скачивания этих трех файлов к которым он обращается и файл для визуализации если он отдельно? Кстати вы работаете через базу данных?

Добавлено через 41 секунду
Просто у меня показывает что код нормальный ошибок нет.
0
LOMANI
1 / 1 / 4
Регистрация: 20.10.2016
Сообщений: 106
26.10.2016, 08:13 20
Цитата Сообщение от Tverdislav Посмотреть сообщение
вы работаете через базу данных?
да

з.ы. какая почта?
0
26.10.2016, 08:13
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.10.2016, 08:13

найти ошибку в коде
&lt;html&gt; &lt;head&gt; &lt;title&gt;Поиск по учителям&lt;/title&gt; &lt;/head&gt; &lt;body&gt; &lt;h1&gt;Поиск...

найти ошибку в php коде
&lt;?php $fexists='freebanner/count.txt'; if(file_exists($fexists)){ $linecount...

Необходимо найти ошибку в коде
Помогите найти ошибку. Письмо не приходит на почту &lt;? if($_SERVER ==...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru