|
269 / 261 / 35
Регистрация: 21.02.2012
Сообщений: 1,078
|
||||||
Пустые строки в базе при вставке данных15.10.2012, 11:12. Показов 7655. Ответов 21
Метки нет (Все метки)
Всем привет! Уже не раз читаю споры по поводу уроков Попова. ну и фиг с ним. Решил забить на него и попытался сам написать регистрацию. Написал простенькую для того, чтобы себя проверить. Вроде все работает, но в базе выводятся пустые строки. Не могу найти инфу в инете почему так. Заранее спасибо!
0
|
||||||
| 15.10.2012, 11:12 | |
|
Ответы с готовыми решениями:
21
При удалении и вставке данных уникальный id смещается Пустые строки в таблице данных |
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
|
| 15.10.2012, 11:40 | |
|
Поиск ошибок в программе и отладка запросов к БД
Добавлено через 27 секунд Не по теме: если честно, ненамного лучше код чем у попова получается..
0
|
|
|
269 / 261 / 35
Регистрация: 21.02.2012
Сообщений: 1,078
|
|||||||
| 15.10.2012, 11:54 [ТС] | |||||||
Я вот допустим перерыл кучу сайтов, но так и не понял, почему в моем примере при попытке передать данные в базу возвращается 0: ИМХО
0
|
|||||||
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
||||||||||||||||||||||||
| 15.10.2012, 12:02 | ||||||||||||||||||||||||
|
я вам дал ссылку на определенную часть темы. Про отладку запросов - все равно тоже самое будут говорить, ничего нового не скажут.. Конкретнее - вот это
Кликните здесь для просмотра всего текста
Отладка
1. Нужно проверить все переменные, пустые они или нет (и вообще, инициализированы ли они) - функция
2. Если вам лень это делать (как часто мне бывает) - можно перед запросом непосредственно к БД вывести сам этот запрос на экран, и посмотреть что у нас уходит в базу, какой запрос.
3. Если все нормально, и все переменные хорошо видно - можно зайти в PHPMyAdmin и вручную (на вкладке Выполнить SQL-запрос) попробовать выполнить этот запрос с подставленными нужными значениями. 4. Если запрос успешно выполняется - то либо дописать к запросу перед точкой с запятой как я уже писал
В вашем коде вот эти все проверки К тому же, данные не экранируются, не очищаются и т.п. Добавлено через 3 минуты
0
|
||||||||||||||||||||||||
|
269 / 261 / 35
Регистрация: 21.02.2012
Сообщений: 1,078
|
||
| 15.10.2012, 12:04 [ТС] | ||
|
0
|
||
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
||||||
| 15.10.2012, 12:06 | ||||||
|
есть еще такая запись раз уж вам так нужно по другому делать
но при отстуствии этого индекса при включенных нотайсах вы получите ошибку
0
|
||||||
|
603 / 578 / 103
Регистрация: 16.07.2012
Сообщений: 1,762
|
||||||
| 15.10.2012, 12:07 | ||||||
|
у вас заносятся пустые поля потому что вы не зависимо от того есть переменная или нет все равно делаете запрос в базу.
А вы сделайте проверку перед тем как делать запрос все ли переменные существуют и если все есть то тогда выполняйте запрос
0
|
||||||
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
|
| 15.10.2012, 12:13 | |
|
maximus2011, alpex, ок. я ввожу пробелы в полях везде и что получается? что я спокойно зарегился..
Добавлено через 17 секунд переменные существуют, не пустые - все четко
0
|
|
|
603 / 578 / 103
Регистрация: 16.07.2012
Сообщений: 1,762
|
||||||
| 15.10.2012, 12:24 | ||||||
|
получатся пробелы в бд но не пустые поля, но вы же выше написали что нужно еще проверять на пустоту и экранировать данные перед записью в бд, но просто если поэкранировать их например вот так
т.е перед запросом в базу все равно нужно проверять наличие переменных
0
|
||||||
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
||
| 15.10.2012, 12:36 | ||
|
alpex, пробел - это символ, и empty() пропустит как не пустое значение. Следовательно, переменная будет существовать, но пустая (т.к. очистится при присвоении от пробелов).
isset() проверяет наличие переменной, если быть точнее - то на NULL. пустая строка - это не NULL..
тогда после присвоения, перед запросом, необходимо второй раз проверять не isset а empty - она определит как и если ее не существует, так и если она пустая. Isset ничего не даст в этом случае Добавлено через 1 минуту проверьте сами
0
|
||
|
603 / 578 / 103
Регистрация: 16.07.2012
Сообщений: 1,762
|
|||||||
| 15.10.2012, 12:51 | |||||||
![]() Добавлено через 12 минут знач нужно вот так проверять
0
|
|||||||
|
269 / 261 / 35
Регистрация: 21.02.2012
Сообщений: 1,078
|
||||||
| 15.10.2012, 14:02 [ТС] | ||||||
|
Ну вот так сделал! Теперь все работает.
0
|
||||||
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
|
| 15.10.2012, 15:05 | |
|
и в итоге - я ввожу адрес страницы в браузер напрямую и что я уже знаю, угадайте? Я уже знаю где у вас скрипты находятся, потому что полезут ошибки..
0
|
|
|
269 / 261 / 35
Регистрация: 21.02.2012
Сообщений: 1,078
|
||
| 15.10.2012, 16:57 [ТС] | ||
|
0
|
||
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
|
| 15.10.2012, 17:01 | |
|
А что тут рассказывать? Открываю консоль, смотрю куда указывает action формы. ввожу адрес
site.ru/адрес_из_action_формы.php И при включенных нотайсах вижу посыпавшиеся ошибки с адресом расположения скрипта
0
|
|
|
269 / 261 / 35
Регистрация: 21.02.2012
Сообщений: 1,078
|
||
| 15.10.2012, 18:10 [ТС] | ||
|
Ну если я правильно понял, то обработчик должен быть помещен в какую-то директорию, в которой должен быть файл .htaccess. Вобщем читаю далее, что и как))
0
|
||
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
|
| 15.10.2012, 18:20 | |
|
нет, просто необходимо проверять наличие данных формы прежде чем работать с ними напрямую
0
|
|
|
269 / 261 / 35
Регистрация: 21.02.2012
Сообщений: 1,078
|
|||||||||||||
| 15.10.2012, 20:19 [ТС] | |||||||||||||
|
Добавлено через 1 час 51 минуту
Правильно?
0
|
|||||||||||||
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
|
| 15.10.2012, 21:18 | |
|
нет. htmlspecialchars используется для вывода данных. перед запросом ее не надо использовать.
лучше замените ее на stripslashes, т.к. если включены магические кавычки - то данные нужно очистить от лишних слэшей Добавлено через 23 секунды и это все можно и в одну строку записать, все три функции сразу.. Добавлено через 1 минуту и опять же, не прятать надо ошибки. Вернее, надо - но только в законченном приложении, и то не просто их прятать а писать свой обработчик (или использовать встроенные) и записывать себе в логи, без отображения. А при отладке.. Вот, представьте, пример из жизни (чтоб понятнее было). Представьте, что домашняя живность нагадила у Вас на полу Вы же не будете прикрывать газеткой чтоб не видно было, а возьмете и уберете, верно же? Вот тоже самое и здесь - зачем прикрывать газеткой если можно убрать?
1
|
|
|
269 / 261 / 35
Регистрация: 21.02.2012
Сообщений: 1,078
|
||
| 15.10.2012, 21:26 [ТС] | ||
Как что додумаю выложу! Спасибо огромное за внимание!
0
|
||
| 15.10.2012, 21:26 | |
|
Помогаю со студенческими работами здесь
20
Пустые строки в списке при чтении из базы При вводе данных в форму и отправления в БД вводятся пустые значения Поиск строки в Базе данных Проверка существования строки в базе данных Поиск передаваемой строки в базе данных Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
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
/ *
Дана цепь постоянного тока с 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 из. . .
|
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11
Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
|
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
|