|
2 / 2 / 1
Регистрация: 07.12.2013
Сообщений: 34
|
|
Двойная запись данных в БД из формы HTML07.12.2013, 02:04. Показов 3597. Ответов 24
Метки нет (Все метки)
Привет всем спецам!
А кто знает почему при добавлении записи в таблицу БД из формы HTML, записывается две записи. Одна с пустыми данными а вторая с заполненными. И разница внесения этих данных в 2 секунды.
0
|
|
| 07.12.2013, 02:04 | |
|
Ответы с готовыми решениями:
24
Запись данных из формы с HTML страницы в файл Новая запись формы-1 на основании данных формы-2 |
|
|
|
| 07.12.2013, 07:26 | |
|
classic1698, потому, что код, который обрабатывает форму, так написан.
0
|
|
|
2 / 2 / 1
Регистрация: 07.12.2013
Сообщений: 34
|
|||||||
| 07.12.2013, 18:18 [ТС] | |||||||
|
файл insert_data.php
Ну собственно и всё!!!
0
|
|||||||
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
|||
| 07.12.2013, 19:30 | |||
|
1
|
|||
|
2 / 2 / 1
Регистрация: 07.12.2013
Сообщений: 34
|
|||||||
| 07.12.2013, 23:17 [ТС] | |||||||
|
Вот конец кода:
0
|
|||||||
|
|
|
| 08.12.2013, 00:26 | |
|
classic1698, ну это только часть полноценного "web-приложения", т.к. есть еще часть, которая передает данные в этот скрипт. В любом случае, стоит проверять есть ли необходимые данные для записи. Понимаете о чем я? Добавьте условие, проверяющее пустой суперглобальный массив $_POST или нет. И только если он не пуст, то проделываете все эти "махинации", которые Вы тут потрудились разместить.
Добавлено через 4 минуты classic1698, на всякий случай скажу, что можно еще проверить есть ли необходимые элементы в нем ($_POST) путем полного их перечисления либо проверяя какое-то одно (к примеру, $_POST['name'] или $_POST['submit'] (если есть в форме элемент с таким именем)). Обычно присваивают имя для кнопки submit и проверяют его на наличие в $_POST.
1
|
|
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
||
| 08.12.2013, 00:59 | ||
|
1
|
||
|
2 / 2 / 1
Регистрация: 07.12.2013
Сообщений: 34
|
|||||||||||||||||||||||
| 08.12.2013, 18:49 [ТС] | |||||||||||||||||||||||
|
Даже Сноуден бы Вам предоставил любую секретную информацию. Давайте действительно по существу. Форма большая по этому нет смысла выкладывать всю.
Вот как то так. Добавлено через 9 минут
0
|
|||||||||||||||||||||||
|
142 / 142 / 27
Регистрация: 19.12.2011
Сообщений: 250
|
||||||||||||||
| 08.12.2013, 19:53 | ||||||||||||||
1
|
||||||||||||||
|
2 / 2 / 1
Регистрация: 07.12.2013
Сообщений: 34
|
|||||||
| 08.12.2013, 21:30 [ТС] | |||||||
|
Вы именно правы в том, что обновляться страница не должна, а у меня видимо обновлялась. А проверку, т.к. форма большая, лучше сделать следующей:
Но это уже другая работа.
0
|
|||||||
|
2 / 2 / 1
Регистрация: 07.12.2013
Сообщений: 34
|
|
| 10.12.2013, 18:49 [ТС] | |
|
А самое смешное и не понятное в том, что пустые записи в БД, и далее добавляются сами собой. При написании кучи условий на проверку... Причём в таблицу БД специально добавил ip_user и это поле тоже пустое, что говорит о том что никто не пытался отправить форму и не обращался к файлу insert_data.php.
А есть только время когда созданы записи. Так что задачка для меня оказалась сложнее.
0
|
|
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
|
| 10.12.2013, 18:52 | |
|
classic1698, пока вы не захотите показать весь код, а не кусок из начала и конца кода, эту задачу, скорее всего, вам придется решать в одиночку. Впрочем, ваше право.
0
|
|
|
2 / 2 / 1
Регистрация: 07.12.2013
Сообщений: 34
|
||
| 10.12.2013, 19:13 [ТС] | ||
|
0
|
||
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
||||||||||||
| 10.12.2013, 19:29 | ||||||||||||
|
classic1698, какая вообще разница, новичок вы или нет? Еще раз сцитирую вам фразу
У меня есть код, в котором не выводится текст из БД. Вот его начало
0
|
||||||||||||
|
2 / 2 / 1
Регистрация: 07.12.2013
Сообщений: 34
|
||||||||||||||||||
| 10.12.2013, 21:29 [ТС] | ||||||||||||||||||
|
А ни чего, что было выложено ранее:
$name = $_POST['name']; и "'.mysql_real_escape_string($name).' ". пробовал даже менять отправку через:
по этому сделал следующим образом т. к. у меня всего 3 обязательных поля:
И вот был Ваш ответ, по которому и были сделаны изменения, и это не работает. По моему это Вы не хотите понять, и пытаетесь не слушать, что я Вам говорю:
0
|
||||||||||||||||||
|
142 / 142 / 27
Регистрация: 19.12.2011
Сообщений: 250
|
||||||
| 10.12.2013, 21:50 | ||||||
|
classic1698, что произойдет, если к файлу insert_data.php обратится напрямую, минуя форму оформления заказа?
Во время выполнения других файлов проекта используется в них?
В любом случае, мистического появления записей в БД, без совершения пользователем/кроном каких-либо действий не может быть.
0
|
||||||
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
||||||||||||||||||
| 10.12.2013, 22:08 | ||||||||||||||||||
|
Не по теме: Приношу извинения, ошибся, думал, есть код еще. Но язвить не стоило все равно, изначально этого не было, было дано только два куска кода, которые мало чего говорят о происходящем в коде Если "конструктивно", то данный код должен был помочь. Можете попробовать прописать "жесткую" проверку:
Вообще, всю работу скрипта можно автоматизировать, если несколько переделать имена инпутов в форме на массивы. Помимо прочего, это избавит и от проблем пустых значений.
0
|
||||||||||||||||||
|
2 / 2 / 1
Регистрация: 07.12.2013
Сообщений: 34
|
||
| 10.12.2013, 22:11 [ТС] | ||
|
Буду для начала поиском искать все записи include('insert_data.php');.
0
|
||
|
142 / 142 / 27
Регистрация: 19.12.2011
Сообщений: 250
|
||
| 10.12.2013, 22:40 | ||
|
Например, пользователь заходит в каталог catalogue.php, в котором инклюдится basket.php, а собственно уже в basket.php происходит инклюд insert_data.php Путей, по которым интерпретатор дойдет до этого файла великое множество, определенное рамками вашего проекта. И даже если и происходит косвенное выполнение кода из insert_data.php, то нужно в первую очередь обезопаситься в этом файле от получения пустых данных.
0
|
||
|
2 / 2 / 1
Регистрация: 07.12.2013
Сообщений: 34
|
|||||||
| 10.12.2013, 23:12 [ТС] | |||||||
Необходимо ввести: Тема обращения: Пожалуйста вернитесь назад и внесите изменения Если попробовать обратиться на прямую к файлу assay_data.php, то получаем: Необходимо ввести: Контактное лицо: (ФИО) Необходимо ввести: Почтовый ящик: (E-mail) Необходимо ввести: Номер телефона: Необходимо ввести: Тема обращения: Пожалуйста вернитесь назад и внесите изменения Проверил поиском больше ни где обращение к файлу insert_data.php нет только в файле assay_data.php. Думал что может при прохождении всех условий происходит автоматическое обновление в браузере. Пробовал добавить в файл insert_data.php, <meta http-equiv='Cash-Content' content='public'>, ну на всякий так сказать случай , не помогло...
0
|
|||||||
| 10.12.2013, 23:12 | |
|
Помогаю со студенческими работами здесь
20
Двойная запись в бд Запись данных в HTML Двойная запись в ячейку DBGrid Извлечение данных из HTML - формы вывод данных из html-формы Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net
REST сервисы временно не работают, только через Web.
Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
|
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
|
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
|
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма).
На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
|
|
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ *
Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи
и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
|
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым.
Но восстановить их можно так.
Для этого понадобится консольная утилита. . .
|
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
|
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11
— это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
|