|
0 / 0 / 0
Регистрация: 24.07.2021
Сообщений: 25
|
|||||||||||
Запись данных в БД по кнопке11.01.2023, 00:39. Показов 583. Ответов 10
Добрый день. Прошу помощи. выполняю задание, которое состоит из субзаданий: 1.сделать форму регистрации; 2.вывести данные формы на отдельную страницу; 3.записать данные формы в бд.
Я скрипты разнесла по отдельным страницам: подключение к бд, обработка данных формы, запись в бд. Запнулась именно на третьем субзадании, а именно в том, что если у меня скрипты на отдельных страницах размещены, то упорно не хочет записывать данные в бд, то есть они записываются, но только автоинкрементальный идентификатор: Когда же делаю в одном файле php, то все работает. Я так понимаю что дело в идентификаторе сессии и что надо как-то связать файлы сайта по сессии, но честно говоря пока не могу разобраться как. Может найдется здесь кто-то лояльный и подскажет способ несложный. Буду очень благодарна. Ниже приведены куски скриптов двух файлов php. 1 скрипт php - тут скрипт по выводу данных формы и кнопка по нажатию которой, должен запускаться второй скрипт
Повторюсь, когда все в одном файле запускаю то работает. Но хочется именно по кнопке чтобы скрипт запускался и все таки скрипты хранились в разных файлах. Помогите пожалуйста.
0
|
|||||||||||
| 11.01.2023, 00:39 | |
|
Ответы с готовыми решениями:
10
Запис данных в бд с rss лент Кнопка, которая записывает в таблицу значение AJAX или простая кнопка записи в базу +1 |
|
1306 / 998 / 232
Регистрация: 01.10.2018
Сообщений: 3,874
|
||
| 11.01.2023, 10:04 | ||
|
Если записи добавляются, значит запросы выполняются.
Проверьте вывод записей (просмотрите таблицу в другом клиенте, например phpMyAdmin). Добавьте подготовленные выражения. Проверьте соответствие имен полей формы именам используемых параметров (по правилам такую проверку нужно выполнять непосредственно в коде, но вы для начала хотя бы просто проверьте). Я бы еще заменил $_REQUEST на $_POST. Добавлено через 4 минуты
0
|
||
|
0 / 0 / 0
Регистрация: 24.07.2021
Сообщений: 25
|
|
| 11.01.2023, 10:15 [ТС] | |
|
проверяла, более того, как я уже писала ранее, если код в одном php файле, то все работает. Тут что-то связано с идентификатором сессии..не могу "дотумкать" как это работает.
0
|
|
|
1306 / 998 / 232
Регистрация: 01.10.2018
Сообщений: 3,874
|
|
| 11.01.2023, 10:23 | |
Сообщение было отмечено LubavaYak как решение
Решение
Посмотрел на первый скрипт...
![]() Нужно сразу вносить данные в базу данных (или в сессию, или в локальное хранилище), а по кнопке "подтверждения" "запирать" (выставлять флаг активности) запись или, если используется временная таблица, переносить запись в основную таблицу и "запирать" или удалять запись во временной. Добавлено через 3 минуты В общем вы не передаете данные для сохранения из формы первого скрипта. Такую простую форму можно использовать, когда на сервере уже есть данные.
1
|
|
|
Невнимательный
|
|||||||
| 11.01.2023, 10:25 | |||||||
|
В одном файле сделать три страницы попроще. Типа такого
1
|
|||||||
|
0 / 0 / 0
Регистрация: 24.07.2021
Сообщений: 25
|
|
| 11.01.2023, 10:28 [ТС] | |
|
Спасибо большое.
если есть возможность, подскажите как заносить данные в сессию...второй день мучаюсь, не могу разобраться
0
|
|
|
Невнимательный
|
||
| 11.01.2023, 10:44 | ||
|
В реальных случаях посложнее наверно...
до всего такого ещё точка входа проверка авторизации , всякого другого прорверка допуска к запрашивемым действиям ... ещё темы, скины, локализации, ... )) Добавлено через 12 минут )) могу что-то корявое некидать только ближе к вечеру ... но если пытаться делать самостоятельно , читая доки , то это даже как-то более целесообразно обучению )
0
|
||
|
1306 / 998 / 232
Регистрация: 01.10.2018
Сообщений: 3,874
|
|
| 11.01.2023, 10:56 | |
|
LubavaYak, т.к. вы не выполняете переанаправление после POST (что неправильно, но сейчас это так), то, если не будете это исправлять, можно передавать данные повторно в скрытых полях формы подтверждения (только не забудьте значения полей в HTML закодировать)
0
|
|
|
0 / 0 / 0
Регистрация: 24.07.2021
Сообщений: 25
|
|
| 11.01.2023, 17:44 [ТС] | |
|
Я попробовала передавать данные в сессию...и только обрадовалась но столкнулась с новой проблемой, в общем у меня в сессии застревает одни и те же значения. session_destroy() - не помогает.
1 scr: <?php session_start(); print("<b>Здравствуйте, Ваши регистрационные данные следующие:</b><br>"); $a=$_REQUEST['fio']; $b=$_REQUEST['BirthDate']; $c=$_REQUEST['phone']; $d=$_REQUEST['email']; $e=$_REQUEST['doclad']; $f=$_REQUEST['theme']; $g=$_REQUEST['conference']; print("ФИО: $a<br>"); print("Дата рождения: $b<br>"); print("Номер телефона: $c<br>"); print("Электронная почта: $d<br>"); print("Имеется ли доклад?: $e<br>"); print("Тема доклада: $f<br>"); print("Секция конференции: $g<br>"); if (isset($_POST['submit'])) { $_SESSION['fio'] = $_REQUEST['fio']; $_SESSION['BirthDate'] = $b; $_SESSION['phone'] = $c; $_SESSION['email'] = $d; $_SESSION['doclad'] = $e; $_SESSION['theme'] = $f; $_SESSION['conference'] = $g; var_dump($_SESSION); } ?> 2 scr: <?php session_start(); //подключаем сессию, чтобы переменные из одного файла передались в другой,иначе не получится if(isset($_POST['submit'])){ require_once('connection_db.php'); $a=$_SESSION['fio']; $b=$_SESSION['BirthDate']; $c=$_SESSION['phone']; $d=$_SESSION['email']; $e=$_SESSION['doclad']; $f=$_SESSION['theme']; $g=$_SESSION['conference']; echo $f; $sql="INSERT INTO $usertable (fio,BirthDate,phone,email,doclad,theme, conference) VALUES ('$a','$b','$c','$d','$e','$f','$g')"; $result = mysqli_query($conn, $sql);
0
|
|
|
Невнимательный
|
|||||||
| 11.01.2023, 20:32 | |||||||
|
... просто обнуляюдтся переменные или массив $_SESSION. С перегенерацией SID там целая история... Прикинул как-бы я в учебных целях в один файл всё это сложил )) только в массив там в сессии для значений
![]() Как-то не сходится... если любой оставляет запись , то он должен выбирать из списка ... и конференция должно быть идентификатором созданных создателями. И проверки на двойное добавление пользователя т.фона/имэйла, ... или постфактум если не добавилось из-за дублей unique... и т.п. много чего решить надо
1
|
|||||||
|
0 / 0 / 0
Регистрация: 24.07.2021
Сообщений: 25
|
|
| 11.01.2023, 23:15 [ТС] | |
|
Спасибо за уделенное время. Откровенно говоря, в предыдущем коде я накосячила...не очень поняла в чем, но с переменными поигралась и вышло, кондово очень конечно. но для сдачи к/р надеюсь, что сойдет.
0
|
|
| 11.01.2023, 23:15 | |
|
Помогаю со студенческими работами здесь
11
Переменная как кнопка, записывает значение в базу на каждый товар кнопка обратного звонка где в input type=hidden все данные о товаре Кнопка для передачи данных в БД Проверка данных на существование в SQL и кнопка для из изменения если те отсуствуют Вывод данных/кнопка Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Рецензия / Мнение/ Перевод
https:/ / **********/ gallery/ thinkpad-x220-tablet-porn-gzoEAjs
. . .
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|