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

Срабатывает редирект непонятно из-за чего

13.05.2016, 17:17. Показов 1889. Ответов 21
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
HTML5
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
<html>
<head>
<title>Добавление студента</title>
</head>
 
<body>
<form action="home/u731985850/public_html/formavhoda/forma1.php" method="post" name="config">
<fieldset>
<label for="imya">Имя:</label><br/>
<input type="text" name="imya" size="30"><br/>
<label for="fam">Фамилия:</label><br/>
<input type="text" name="fam" size="30"><br/>
<label for="otch">Отчество:</label><br/>
<input type="text" name="otch" size="30"><br/>
<label for="about">Характеристика:</label><br/>
<p><textarea rows="5" cols="45" name="about"></textarea></p>
<label for="about">Остальная информация:</label><br/>
<p><textarea rows="5" cols="45" name="ost_inf"></textarea></p>
<br/>
<input id="go" type="submit" value="Добавить студента"><br/>
</fieldset>
</form>
<form method="post">
<table>
<tr><td>Imya:</td><td><input type="text" name="Imya"></td></tr>
<tr><td>Familiya:</td><td><input type="text" name="Familiya"></td></tr>
<tr><td>Otchestvo:</td><td><input type="text" name="Otchestvo"></td></tr>
<tr><td valign="top">Harakteristika studenta:</td><td><textarea cols="45" rows="5" name="Harakteristika"></textarea></td></tr>
<tr><td valign="top">Ostal'naya informatsiya:</td><td><textarea cols="45" rows="5" name="Ostalnaya_informaciya"></textarea></td></tr>
<tr><td>&nbsp;</td><td><input type="submit" name="go"></td></tr>
</table>
</form>
</body>
</html>
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
    $db_host = 'mysql.prdi.ru';
    $db_name = 'u731985850_rad';
    $db_password = '123456';
    $db_username = 'u731985850_rad';
    $db_table_to_show = 'users';
    $connect_to_db = mysql_connect($db_host, $db_username, $db_password)
    or die("Could not connect: " . mysql_error());
 if(!$connect) {
  exit("Невозможно установить соединение с MySQL-сервером");
 }
 if(!mysql_select_db($msbd, $connect)) {
  exit("Ошибка выбора базы данных");
 }
?>
PHP
1
2
3
4
5
6
7
8
9
10
<?php
$imya = $_REQUEST['imya'];
$fam = $_REQUEST['fam'];
$otch = $_REQUEST['otch'];
$about = $_REQUEST['about'];
$ost_inf = $_REQUEST['ost_inf'];
$insert_sql = "INSERT INTO users (imya, fam, otch, about, ost_inf)" . 
"VALUES('{$imya}', '{$fam}', '{$otch}';, '{$about}';, '{$ost_inf}');"; 
mysql_query($insert_sql); 
?>
Вроде бы все должно работать, но непонятно из-за чего кидает на http://www.hostinger.ru/oshibka_404
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
13.05.2016, 17:17
Ответы с готовыми решениями:

Непонятно как срабатывает условие
Добрый день, ребят, объясните пожалуйста такой нюанс. Есть к примеру запрос: DELETE FROM Table1 WHERE Table1.ID in (SELECT Table2.ID...

Непонятно, почему не срабатывает компаратор в схеме защиты
Привет. Делаю схему, которая будет отключать плюс питания при превышении тока. Просимулировал в LTSpice, уже вытравил плату и запаял, но...

Непонятно почему каждый раз срабатывает исключение
Почему-то кажддый раз срабатывает исключение invalid_argument, даже когда ввожу числа, удовлетворяющие условию #include...

21
Эксперт PHP
3899 / 3237 / 1353
Регистрация: 01.08.2012
Сообщений: 10,909
13.05.2016, 17:21
Цитата Сообщение от Lnqwex Посмотреть сообщение
HTML5
1
<form action="home/u731985850/public_html/formavhoda/forma1.php" method="post" name="config">
Попробуйте action="/formavhoda/forma1.php".

Добавлено через 1 минуту
Либо, если вы хотите, чтобы форму этот же скрипт обработал, можно убрать атрибут action.
1
0 / 0 / 1
Регистрация: 28.12.2015
Сообщений: 154
Записей в блоге: 1
14.05.2016, 20:06  [ТС]
Цитата Сообщение от Jodah Посмотреть сообщение
Попробуйте action="/formavhoda/forma1.php".
Добавлено через 1 минуту
Либо, если вы хотите, чтобы форму этот же скрипт обработал, можно убрать атрибут action.
Убрал экшен, теперь кидает на
PHP
1
2
3
4
5
6
7
8
9
10
11
<?php
require 'config.php';
$imya = $_REQUEST['imya'];
$fam = $_REQUEST['fam'];
$otch = $_REQUEST['otch'];
$about = $_REQUEST['about'];
$ost_inf = $_REQUEST['ost_inf'];
$insert_sql = "INSERT INTO users (imya, fam, otch, about, ost_inf)" . 
"VALUES('{$imya}', '{$fam}', '{$otch}';, '{$about}';, '{$ost_inf}');"; 
mysql_query($insert_sql); 
?>
а изменение пути не помогает..
в таблицу тоже ничего не добавляется.

Добавлено через 25 минут
Цитата Сообщение от Lnqwex Посмотреть сообщение
Убрал экшен, теперь кидает на
Точнее, ничего не происходит, кнопка не срабатывает и ничего никуда не отправляет
0
 Аватар для Пифагор
2172 / 1655 / 840
Регистрация: 10.01.2015
Сообщений: 5,207
14.05.2016, 20:48
А где относительно формы находится файл-обработчик?

Добавлено через 2 минуты
в общем, положите файл-обработчик в ту же директорию, где лежит форма и пропишите action="forma1.php"
0
0 / 0 / 1
Регистрация: 28.12.2015
Сообщений: 154
Записей в блоге: 1
15.05.2016, 01:29  [ТС]
Цитата Сообщение от Пифагор Посмотреть сообщение
А где относительно формы находится файл-обработчик?
Добавлено через 2 минуты
в общем, положите файл-обработчик в ту же директорию, где лежит форма и пропишите action="forma1.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
29
30
31
32
33
<?php
    $db_host = 'mysql.hostinger.ru';
    $db_name = 'u819874549_rad';
    $db_password = '123456';
    $db_username = 'u819874549_rad';
    $db_table_to_show = 'users';
    $connect_to_db = mysql_connect($db_host, $db_username, $db_password)
    or die("Could not connect: " . mysql_error());
    mysql_select_db($db_name, $connect_to_db)
    or die("Could not select DB: " . mysql_error());
if(isset($_POST['go'])){
$imya=$_POST['imya'];
$fam=$_POST['fam'];
$otch=$_POST['otch'];
$about=$_POST['about'];
$ost_inf=$_POST['ost_inf'];
$query = mysql_query("INSERT INTO users VALUES('','$imya','$fam','$otch','$about','$ost_inf')")or die(mysql_error());
}
?>
<form method="post" action="inf_form.php">
<label for="imya">Имя:</label><br/>
<input type="text" name="imya" size="30"><br/>
<label for="fam">Фамилия:</label><br/>
<input type="text" name="fam" size="30"><br/>
<label for="otch">Отчество:</label><br/>
<input type="text" name="otch" size="30"><br/>
<label for="about">Характеристика:</label><br/>
<p><textarea rows="5" cols="45" name="about"></textarea></p>
<label for="about">Информация</label><br/>
<p><textarea rows="5" cols="45" name="ost_inf"></textarea></p>
<br/>
<input type="submit" name="go"/><br>
</form>
Добавлено через 3 минуты
Вот, если нужны, ссылки на заполнение форм и просмотр этой БД.. они пустые создаются почему-то
Заполнение формы
Просмотр таблицы, которая должна заполняться

Добавлено через 46 секунд
а таблице данные - varchar по 20/50 символов

Добавлено через 1 минуту
Цитата Сообщение от Пифагор Посмотреть сообщение
где относительно формы находится файл-обработчик?
Находится все в 1 документе.
PHP
1
<form method="post" action="inf_form.php">
ссылается сам на себя, после нажатия на сабмит.
0
 Аватар для Пифагор
2172 / 1655 / 840
Регистрация: 10.01.2015
Сообщений: 5,207
15.05.2016, 02:36
Лучший ответ Сообщение было отмечено Lnqwex как решение

Решение

строка 17
PHP
1
$query = mysql_query("INSERT INTO users (укажите столбцы соответственно передаваемым значениям) VALUES('','$imya','$fam','$otch','$about','$ost_inf')")or die(mysql_error());
Добавлено через 2 минуты
Цитата Сообщение от Lnqwex Посмотреть сообщение
Находится все в 1 документе.
Тогда action не надо вообще указывать.
Достаточно
HTML5
1
<form method="post">
1
0 / 0 / 1
Регистрация: 28.12.2015
Сообщений: 154
Записей в блоге: 1
15.05.2016, 02:52  [ТС]
Цитата Сообщение от Пифагор Посмотреть сообщение
строка 17
Что в ней не так, столбцы правильно указаны же? Никак не пойму(

Добавлено через 1 минуту
Перечислил все просто, через запятую, при попытке отправить - Column count doesn't match value count at row 1
0
 Аватар для Пифагор
2172 / 1655 / 840
Регистрация: 10.01.2015
Сообщений: 5,207
15.05.2016, 02:55
Лучший ответ Сообщение было отмечено Lnqwex как решение

Решение

Столбцы ВООБЩЕ не указаны. Я же указал в комментарии, что надо сделать.
Почитайте синтаксис оператора INSERT.

Добавлено через 57 секунд
Пример:
SQL
1
INSERT INTO Customers (city, cname,cnum) VALUES (‘London’,’Hoffman’,2001);
Добавлено через 49 секунд
А у Вас
SQL
1
INSERT INTO users VALUES('','$imya','$fam','$otch','$about','$ost_inf')
Разницу видите??
1
0 / 0 / 1
Регистрация: 28.12.2015
Сообщений: 154
Записей в блоге: 1
15.05.2016, 03:07  [ТС]
Цитата Сообщение от Пифагор Посмотреть сообщение
Разницу видите??
срабатывает через раз теперь..

Добавлено через 6 минут
а нет, все работает, просто уже 5 часов ночи. Спасибо огромнейшее!

Добавлено через 2 минуты
а нет, все-таки иногда создает просто пустую строчку(
0
 Аватар для Пифагор
2172 / 1655 / 840
Регистрация: 10.01.2015
Сообщений: 5,207
15.05.2016, 03:19
Ну, запрос тут точно ни при чем при условии, что он написан корректно.
0
0 / 0 / 1
Регистрация: 28.12.2015
Сообщений: 154
Записей в блоге: 1
15.05.2016, 03:23  [ТС]
Цитата Сообщение от Пифагор Посмотреть сообщение
Ну, запрос тут точно ни при чем при условии, что он написан корректно.
В хроме почему-то добавляет когда-как, а в яндекс браузере всегда, 10/10 попыток удачные.
0
 Аватар для Пифагор
2172 / 1655 / 840
Регистрация: 10.01.2015
Сообщений: 5,207
15.05.2016, 03:27
Ну, это совпадение. уверяю Вас)) Из-за браузера такого быть не может в принципе.
Скорее всего, у хостера ерунда твориться в серверами.
0
Эксперт PHP
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
15.05.2016, 03:28
Lnqwex, я надеюсь в первом сообщении это не реальные данные для пользователя бд. Если реальные, то поздравляю, только что ты сам выложил конфиденциальные данные в открытый доступ. Меняй пароль и надейся что никто не успел тебе ничего испортить
0
0 / 0 / 1
Регистрация: 28.12.2015
Сообщений: 154
Записей в блоге: 1
15.05.2016, 12:19  [ТС]
Цитата Сообщение от Пифагор Посмотреть сообщение
Ну, это совпадение. уверяю Вас)) Из-за браузера такого быть не может в принципе.
Скорее всего, у хостера ерунда твориться в серверами.
попробовал около 30 раз с яндекс браузера, ни разу не было ошибки... с оперы и хрома ~ 1/5 только записывается.. совсем ничего не понимаю. Можете сами проверить, ссылки на формы есть выше.

Добавлено через 8 часов 36 минут
Нет, все-таки через некоторые браузеры попросту не добавляет.. работает стабильно на яндекс-браузере и дефолтном андроидовском

Добавлено через 13 минут
Теперь код выглядит так.
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
<?php
    $db_host = 'mysql.hostinger.ru';
    $db_name = 'u819874549_rad';
    $db_password = '300697';
    $db_username = 'u819874549_rad';
    $db_table_to_show = 'users';
    $connect_to_db = mysql_connect($db_host, $db_username, $db_password)
    or die("Could not connect: " . mysql_error());
    mysql_select_db($db_name, $connect_to_db)
    or die("Could not select DB: " . mysql_error());
if(isset($_POST['go'])){
$imya=$_POST['imya'];
$fam=$_POST['fam'];
$otch=$_POST['otch'];
$about=$_POST['about'];
$ost_inf=$_POST['ost_inf'];
$query = mysql_query("INSERT INTO users (imya, fam, otch, about, ost_inf) VALUES('$imya','$fam','$otch','$about','$ost_inf')")or die(mysql_error());
}
?>
<form method="post">
<label for="imya">Имя:</label><br/>
<input type="text" name="imya" size="30"><br/>
<label for="fam">Фамилия:</label><br/>
<input type="text" name="fam" size="30"><br/>
<label for="otch">Отчество:</label><br/>
<input type="text" name="otch" size="30"><br/>
<label for="about">Характеристика:</label><br/>
<p><textarea rows="5" cols="45" name="about"></textarea></p>
<label for="about">Информация</label><br/>
<p><textarea rows="5" cols="45" name="ost_inf"></textarea></p>
<br/>
<input type="submit" name="go"/><br>
</form>
0
 Аватар для Пифагор
2172 / 1655 / 840
Регистрация: 10.01.2015
Сообщений: 5,207
15.05.2016, 12:25
Данные подключение, похоже, опять действительные...
Цитата Сообщение от Lnqwex Посмотреть сообщение
Нет, все-таки через некоторые браузеры попросту не добавляет.
Не несите ересь. Такого не может быть.
Данные в БД добавляет скрипт, а не браузер. И скрипту все равно, какой браузер, если нет соответствующего условия в скрипте.
0
Эксперт PHP
3899 / 3237 / 1353
Регистрация: 01.08.2012
Сообщений: 10,909
15.05.2016, 12:28
Лучший ответ Сообщение было отмечено Lnqwex как решение

Решение

Цитата Сообщение от Lnqwex Посмотреть сообщение
а нет, все-таки иногда создает просто пустую строчку(
Может потому что вы пустую форму случайно передали? У вас же нет валидации.
1
0 / 0 / 1
Регистрация: 28.12.2015
Сообщений: 154
Записей в блоге: 1
15.05.2016, 13:43  [ТС]
Цитата Сообщение от Jewbacabra Посмотреть сообщение
Lnqwex, я надеюсь в первом сообщении это не реальные данные для пользователя бд. Если реальные, то поздравляю, только что ты сам выложил конфиденциальные данные в открытый доступ. Меняй пароль и надейся что никто не успел тебе ничего испортить
Нет там никаких реальных данных... только вчера, вот, начал делать курсовую.. данные сам придумаю. Портить по-моему, там нечего, уже итак.. да и бекап есть на всякий.

Добавлено через 30 минут
Цитата Сообщение от Jodah Посмотреть сообщение
Может потому что вы пустую форму случайно передали? У вас же нет валидации.
В ближайшее свободное время попробую сделать валидацию.. но я заполняю форму, она все равно пустая приходит иногда.

Добавлено через 44 минуты
Сделал валидацию при помощи required, все теперь работает. Спасибо за помощь!
0
Эксперт PHP
3899 / 3237 / 1353
Регистрация: 01.08.2012
Сообщений: 10,909
15.05.2016, 14:04
Цитата Сообщение от Lnqwex Посмотреть сообщение
Сделал валидацию при помощи required
wat? Валидация - проверка введённых пользователем данных. Нечто вроде:
PHP
1
2
if(mb_strlen($_POST['name']) < 3)
    die('Название должно быть не менее 3 символов.');
И так для каждого поля. Чтобы нельзя было пустоту добавлять в БД.
1
0 / 0 / 1
Регистрация: 28.12.2015
Сообщений: 154
Записей в блоге: 1
15.05.2016, 14:16  [ТС]
Цитата Сообщение от Jodah Посмотреть сообщение
wat? Валидация - проверка введённых пользователем данных. Нечто вроде:
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<form method="post">
<label for="imya">Имя:</label><br/>
<input type="text" name="imya" required size="30"><br/>
<label for="fam">Фамилия:</label><br/>
<input type="text" name="fam" required size="30"><br/>
<label for="otch">Отчество:</label><br/>
<input type="text" name="otch" required size="30"><br/>
<label for="about">Характеристика:</label><br/>
<p><textarea rows="5" cols="45" name="about" required></textarea></p>
<label for="about">Информация</label><br/>
<p><textarea rows="5" cols="45" name="ost_inf"></textarea></p>
<br/>
<input type="submit" name="go"/><br>
</form>
С 5 версии html'а добавили такую штуку, попробовал ее, получилось.(проверяет поле, пустое ли оно..)
0
Эксперт PHP
3899 / 3237 / 1353
Регистрация: 01.08.2012
Сообщений: 10,909
15.05.2016, 14:37
Lnqwex, а, тьфу, подумал про require, который аналог include.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
15.05.2016, 14:37
Помогаю со студенческими работами здесь

typedef непонятно чего
Есть вот такой код typedef private void (T::*TimedFunction)(void); По сути это должна быть ссылка на функцию класса Т с возвращаемым...

Непонятно, из-за чего происходит ошибка
Вот мой bat файл. На 54 строчке выдает &quot;непредвиденное появление: :.&quot; Почему? Что я написал не так? @echo off del /Q %0.log ...

Непонятно для чего php
Уважаемые! объясните для чего нужен php ? :scratch: непонятно для каких структур и для чего ?

Непонятно с чего, не могу установить Windows XP
Приветствую. Вообщем нужна помощь. Опишу ситуацию. Сестра звонит, говорит, ПК не включается приедь посмотри. Прихожу, запускаю...

Синий Экран Смерти непонятно из-за чего!
Привет всем, кто шарит, кто понимает, кто думает и кто думает, что он шарит, понимает и думает) В общем тема такая! Начали появляться...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
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