Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.94/72: Рейтинг темы: голосов - 72, средняя оценка - 4.94
1 / 1 / 4
Регистрация: 29.07.2010
Сообщений: 211

Ошибки Undefined index

22.11.2010, 09:46. Показов 15049. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
на эту строку показывает ошибку Undefined index: name
PHP
1
$name = stripslashes($_POST['name']);
сама переменная берется из формы, и указывается позже:
PHP
1
<input id="name" name="name" type="text" class="validate['required','length[3,-1]','nodigit']" size="20" />
И такие же ошибки на остальные переменные. Нужно изменить настройку в php.ini чтобы не показывались такие ошибки?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
22.11.2010, 09:46
Ответы с готовыми решениями:

Ошибки Call to undefined function и Undefined index: disabled
помогите разобратьcz, уже много что перепробовал ни могу исправить Call to undefined function App\Http\Controllers\array_prepend()...

как избавиться от ошибки: Notice: Undefined index: id in ./headers.inc.php on line 4
На 4 строке: $id = strtolower(strip_tags(trim($_GET))); если пытаюсь объявить переменную $id: $id=''; $id =...

Как исправит Notice: Undefined index: sessy in и undefined variable
Доброго времени суток! Возможно это мелочь и с высоты опытного программиста это легкая задача, но мне пока не удаётся её решить. Кто знает...

13
Почетный модератор
 Аватар для Humanoid
11557 / 4352 / 452
Регистрация: 12.06.2008
Сообщений: 12,454
22.11.2010, 09:50
У формы какой метод указан? Если никакой не указан, то оно пытается GET'ом отправлять. Должно быть что-то вроде
HTML5
1
<form method="post"....
И вообще, лучше вначале проверять, существует ли эта переменная через
PHP
1
if (!isset($_POST['name'])) die('Не передано имя');
0
22.11.2010, 09:52

Не по теме:

Humanoid, опередил :)

0
1 / 1 / 4
Регистрация: 29.07.2010
Сообщений: 211
22.11.2010, 09:53  [ТС]
<form name="form" method="post" id="third" action="<?php echo $self;?>" class="niceform">
это форма отправки письма. на локалхосте таких ошибок нет. а на хостингепоказывает. сама форма работает. Письма отправляются. но вот ошибки эти показывает
0
Комбинатор
 Аватар для DenQ
980 / 252 / 13
Регистрация: 10.03.2010
Сообщений: 3,556
22.11.2010, 09:58
Проверьте на хостинге, что содержит $self;
И советую написать вручную, потому как на хостинге, скорее всего абсолютный путь, да еще и неверный...
0
1 / 1 / 4
Регистрация: 29.07.2010
Сообщений: 211
22.11.2010, 10:07  [ТС]
PHP
1
$self = $_SERVER['PHP_SELF'];
попробовал так: <form name="form" method="post" id="third" action="index.php" class="niceform">
ошибки не исчезли(
0
Почетный модератор
 Аватар для Humanoid
11557 / 4352 / 452
Регистрация: 12.06.2008
Сообщений: 12,454
22.11.2010, 10:11
Попробуй вывести отладочную информацию в начале файла:
PHP
1
2
3
4
echo "REQUEST_METHOD={$_SERVER['REQUEST_METHOD ']}\r\n";
print_r($_POST);
print_r($_GET);
exit;
И посмотри, приходят ли данные вообще... правильный ли метод POST и т.п.
0
1 / 1 / 4
Регистрация: 29.07.2010
Сообщений: 211
22.11.2010, 10:16  [ТС]
вставил в самом начале страницы, вот что показывает
PHP
1
2
Undefined index: REQUEST_METHOD in index.php on line 20
REQUEST_METHOD= Array ( ) Array ( )
0
Комбинатор
 Аватар для DenQ
980 / 252 / 13
Регистрация: 10.03.2010
Сообщений: 3,556
22.11.2010, 10:32
sergm87, вы указываете неверный путь. В action`е должен содержаться путь, к файлу который будет обрабатывать данные из формочки. И если пути нету то данные отправятся в текущий файл...
Проверяйте все.

Добавлено через 1 минуту
И вообще что мешает показать файл отправки, и файл приема, нам и здесь(листинг[и]). И теги, прошу Вас, не забывайте о них.
0
1 / 1 / 4
Регистрация: 29.07.2010
Сообщений: 211
22.11.2010, 10:34  [ТС]
данные отправляются в тот же файл:
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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
$to = 'sergm.87@gmail.com';
 
 
//User info (DO NOT EDIT!)
$name = stripslashes($_POST['name']); //sender's name
$email = stripslashes($_POST['email']); //sender's email
$website = stripslashes($_POST['website']); //sender's website
 
//The subject
$subject  = "[SOCHI-RELAX] "; //The default subject. Will appear by default in all messages. Change this if you want.
$subject .= stripslashes($_POST['subject']); // the subject
 
 
//The message you will receive in your mailbox
//Each parts are commented to help you understand what it does exaclty.
//YOU DON'T NEED TO EDIT IT BELOW BUT IF YOU DO, DO IT WITH CAUTION!
$msg  = "From : $name \r\n";  //add sender's name to the message
$msg .= "e-Mail : $email \r\n";  //add sender's email to the message
$msg .= "Website : $website \r\n"; //add sender's website to the message
$msg .= "Subject : $subject \r\n\n"; //add subject to the message (optional! It will be displayed in the header anyway)
$msg .= "---Message--- \r\n".stripslashes($_POST['message'])."\r\n\n";  //the message itself
 
//Extras: User info (Optional!)
//Delete this part if you don't need it
//Display user information such as Ip address and browsers information...
$msg .= "---User information--- \r\n"; //Title
$msg .= "User IP : ".$_SERVER["REMOTE_ADDR"]."\r\n"; //Sender's IP
$msg .= "Browser info : ".$_SERVER["HTTP_USER_AGENT"]."\r\n"; //User agent
$msg .= "User come from : ".$_SERVER["HTTP_REFERER"]; //Referrer
// END Extras
 
?>
 
<head>
<title>:::LightForm::: Ajax Contact form</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1250" />
<meta name="description" content="Ajax Contact form using CheckForm2 and NiceForms." />
<meta name="keywords" content="php, contact form, Ajax, mootools, checkform2, niceforms, Moo Floor, class, javascript, spamcheck, badboy.ro" />
<meta name="author" content="Jeremie Tisseau" />
 
<link rel="stylesheet" href="css/main.css" type="text/css" media="screen" />
 
<script type="text/javascript" src="js/mootools.js"></script>
 
<!-- Formcheck2 / Moo.Floor.ch -->
<!-- http://moo.floor.ch/?p=18 -->
<script type="text/javascript" src="js/formcheck.js"></script>
<script type="text/javascript">
    window.addEvent('domready', function(){check = new FormCheck('third', {
        display : {
            fadeDuration : 500,
            errorsLocation : 1,
            indicateErrors : 1,
            showErrors : 1
        }
    })});
</script>
 
<!-- NiceForms / BadBoy.ro -->
<!-- http://www.badboy.ro/articles/2005-07-23/niceforms_preview/ -->
<script type="text/javascript" src="js/niceforms.js"></script>
 
</style>
 
</head>
<body>
<!-- The contact form starts here-->
<?php
   if ($_SERVER['REQUEST_METHOD'] != 'POST'){
      $self = $_SERVER['PHP_SELF'];
?>
 
    <!-- Start HTML form -->
    <form name="form" method="post" id="third" action="index.php"  class="niceform">
        <h1>Напишите нам</h1>
    <!-- Name -->
        <label for="name"><strong><span class="blue">*</span> Имя : </strong></label>
            <input id="name" name="name" type="text" class="validate['required','length[3,-1]','nodigit']" size="20" />
 
        <!-- Email -->
        <label for="email"><strong><span class="blue">*</span> Email : </strong></label>
            <input id="email" name="email" type="text" class="validate['required','length[5,-1]','email']" size="20" />
 
        <!-- Website -->
        <label for="site">Сайт : </label>
            <input id="website" name="website" type="text" class="validate['url']" size="20" />
 
        <!-- Subject -->
        <label for="subject"><strong><span class="blue">*</span> Тема : </strong></label>
            <input id="subject" name="subject" type="text" class="validate['required']" size="20" />
 
        <!-- Message -->
        <label for="msg"><strong><span class="blue">*</span> Текст письма: </strong></label><br />
            <textarea id="message" name="message" type="text" class="validate['required']" rows="10" cols="30"></textarea>
 
        <!-- Spam Check -->
        <label for="spamcheck"><span class="blue">*</span> <acronym  title="[ Spam prevention ]"><strong>Проверка</acronym> : <span class="blue">2 + 3 = ???</span></strong></label>
            <input id="spamcheck" name="spamcheck" type="text" size="5" class="validate['required','number','spamcheck']" />
 
        <br /><br />
        <input type="submit" class="buttonSubmit" value="Отправить" />
 
        <!-- Niceforms: mouse over effect -->
        <!-- Do not remove the line below -->
        <div id="stylesheetTest"></div>
 
    </form>
 
     <!-- Download -->
    <!-- You can delete this! -->
<!-- / Download -->
 
<!-- Footer -->
<!-- If you would like to support us, keep the footer intact. Many thanks! -->
<!-- / footer -->
 
<?php
    } else {
        error_reporting(0);
 
        if  (mail($to, $subject, $msg, "From: $email\r\nReply-To: $email\r\nReturn-Path: $email\r\n"))
 
        //Message sent!
        //It the message that will be displayed when the user click the sumbit button
        //You can modify the text if you want
        echo nl2br("
        <div class=\"MsgSent\">
            <h1>Congratulations!!</h1>
            <p>Thank you <b><?=$name;?></b>, your message is sent!<br /> I will get back to you as soon as possible.</p>
        </div>
       ");
 
        else
 
        // Display error message if the message failed to send
        echo "
        <div class=\"MsgError\">
            <h1>Error!!</h1>
            <p>Sorry <b><?=$name;?></b>, your message failed to send. Try later!</p>
        </div>";
    }
?>
0
Комбинатор
 Аватар для DenQ
980 / 252 / 13
Регистрация: 10.03.2010
Сообщений: 3,556
22.11.2010, 11:03
Ну во первых уберите все лишнее, хотя бы на время. Во вторых, если данные из формы отправляются в текущий же файл, то action можно вообще и не указывать.
А в начале файла
PHP
1
2
3
4
5
<?php
if(isset($_POST['name'])){
 echo $_POST['name'], '<br>';
}
?>
Как-то так.

Добавлено через 19 минут
У меня все работает, разве что письма не отправляются, и то по понятным причинам
0
1 / 1 / 4
Регистрация: 29.07.2010
Сообщений: 211
22.11.2010, 11:30  [ТС]
не отправляется наверное потому что не хватает остальных файлов. Вообще использовал скрипт LightForm - Ajax Contact Form. На локалхосте таких ошибок нет. На хостинге показывает ошибки, при этом почта отправляется
0
Комбинатор
 Аватар для DenQ
980 / 252 / 13
Регистрация: 10.03.2010
Сообщений: 3,556
22.11.2010, 13:30
sergm87, так это уже другой вопрос. То ли данные не приходят в файл, то ли письма не отправляются...
Данные в файл приходят, я проверил, чуть подправил - все работает... Считаю что вам с этим вопросом тут помогли.
0
 Аватар для cat_in_web
18 / 18 / 0
Регистрация: 19.11.2010
Сообщений: 106
23.11.2010, 06:19
На сколько я вижу, у Вас вот этот код

PHP
1
2
3
$name = stripslashes($_POST['name']); //sender's name
$email = stripslashes($_POST['email']); //sender's email
$website = stripslashes($_POST['website']); //sender's website
выполняется вне зависимости от того, был отправлен запрос методом POST на эту страницу или нет. Т.е. при загрузки файла php всегда будет выполнять эти действия и ,следовательно, при первой загрузки страницы, когда форма еще не заполнялась и значения из нее еще не отправлялись, будут выходить эти ошибки.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
23.11.2010, 06:19
Помогаю со студенческими работами здесь

Ошибка Notice: Undefined index: user in C:\Server\data\htdocs\index.ph p on line 40
Помогите решить

Undefined index
Прочитал, что чтобы избавиться от этого, нужно использовать isset(). Так что получается на каждой из строк, где выдаёт Undefined index ...

Undefined index
У меня есть страница с панелью регистрации(php). Но сегодня вылезли 3 ошибки в строках. Кто поможет их исправить ? Самое интересное то...

Undefined index
Здравствуйте и у меня созрел вопрос В Index.php выдаёт вот такую ошибку Notice: Undefined index: data in on line 3 Notice:...

Undefined index
Почему ругается на проверку? первые две строчки &lt;?php $promo = $_POST; if(!empty($promo)) { $db = mysql_connect...


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

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru