|
0 / 0 / 0
Регистрация: 25.03.2012
Сообщений: 43
|
|||||||||||||||||||||
Проверка на существование имени в базе12.10.2012, 22:27. Показов 5971. Ответов 43
Метки нет (Все метки)
Привет всем. Вот мой очередной трабл))) Ссылки у меня вида index.php?cat=health и формируются из базы, если пользователь вместо health вобьет припустим heal тогда браузер выдаст ошибку, поэтому мне нужно сделать проверку, существует ли heal в базе. Если нет, значит отправить на index.
Есть выборка из базы, в ней все $CAT хранятся:
0
|
|||||||||||||||||||||
| 12.10.2012, 22:27 | |
|
Ответы с готовыми решениями:
43
Проверка на существование логина в базе Проверка имени файла в базе
|
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
|||||||
| 12.10.2012, 22:30 | |||||||
0
|
|||||||
|
1178 / 1128 / 94
Регистрация: 31.05.2012
Сообщений: 3,060
|
|||||||||||
| 12.10.2012, 22:33 | |||||||||||
|
вместо
0
|
|||||||||||
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
||||||
| 12.10.2012, 22:34 | ||||||
|
Зачем вам вообще что то извлекать если необходимо просто проверить наличие такой записи?
0
|
||||||
|
0 / 0 / 0
Регистрация: 25.03.2012
Сообщений: 43
|
|||
| 12.10.2012, 23:03 [ТС] | |||
|
Добавлено через 26 минут
0
|
|||
|
1178 / 1128 / 94
Регистрация: 31.05.2012
Сообщений: 3,060
|
||||||
| 12.10.2012, 23:17 | ||||||
|
ну если у вас есть все категории из базы уже выбранные, то база данных к теме не относится уже
![]() Проверяйте на пхп. Сделайте массив из категорий и проверяйте функцией in_array() или прям перебрав результат проверьте
0
|
||||||
|
0 / 0 / 0
Регистрация: 25.03.2012
Сообщений: 43
|
|||||||
| 12.10.2012, 23:24 [ТС] | |||||||
|
Просто у меня все страницы формируются через GET запросы с помощью $_GET['cat'] и $_GET['subcat'], но для subcat я прописать могу аналогично. А так я могу сделать???
0
|
|||||||
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
||||||
| 12.10.2012, 23:29 | ||||||
|
нет. или Вы не поняли меня, или я Вас.
0
|
||||||
|
0 / 0 / 0
Регистрация: 25.03.2012
Сообщений: 43
|
||
| 12.10.2012, 23:30 [ТС] | ||
![]() Завтра буду пробовать... сейчас уже не имею возможности... к стати пока функции мне хорошо не дались((.. завтра отпишусь, надеюсь получится некоторыми предполагаемыми способами
0
|
||
|
1178 / 1128 / 94
Регистрация: 31.05.2012
Сообщений: 3,060
|
||||||
| 12.10.2012, 23:32 | ||||||
0
|
||||||
|
0 / 0 / 0
Регистрация: 25.03.2012
Сообщений: 43
|
|||
| 13.10.2012, 02:46 [ТС] | |||
|
Добавлено через 3 часа 13 минут
0
|
|||
|
1178 / 1128 / 94
Регистрация: 31.05.2012
Сообщений: 3,060
|
|
| 13.10.2012, 02:48 | |
|
Экранировать надо любые данные пришедшие от пользователя которые отправляются в бд запросом
0
|
|
|
0 / 0 / 0
Регистрация: 25.03.2012
Сообщений: 43
|
|
| 13.10.2012, 03:02 [ТС] | |
|
DrobyshevAlex,
Из таблицы в базе я достаю все существующие значения index?cat=... и формирую по ним навигацию и ссылки, т.е. рубрики health-index?cat=health..., beauty-index?cat=beauty, cook-index?cat=cook ... если пользователь выбрал рубрику health значит я ему достаю одним запросом все рубрики которые имеют метку health, а если пользователь в строке браузера введет несуществующую ссылку, например index?cat=heal, тогда по $GET['cat'] мне придет несуществующий запрос, который мне надо обработать, но если я переделаю несуществующий запрос в пустоту, тогда сформируется просто индексная страница.
0
|
|
|
1178 / 1128 / 94
Регистрация: 31.05.2012
Сообщений: 3,060
|
|||||||
| 13.10.2012, 03:24 | |||||||
![]() Добавлено через 5 минут Вот вам пришел запрос с переменной cat. Она же вам нужна для выбора из базы? Если нет, то зачем вообще передавать эту переменную? А раз нужна, и вы в бд её отправляете, вот там и проверяйте. У вас где то есть запрос
Другое дело, что не обязательно проверять отдельно, подделали ла запрос, если нет такого значения в базе, то просто не чего ен выбирится, и вы узнаете что он подделан, и можно сделать страничку ошибки 404 или редирект на главную. Но с другой стороны, раз у вас всё ранво все категории выбраны, то можно как я написал в посте 6 проверить, есть ли такая категория вообще, прежде чем делать запрос, и опять же либо ошибку 404 либо редирект на главную.
0
|
|||||||
|
0 / 0 / 0
Регистрация: 25.03.2012
Сообщений: 43
|
||||||||||||||||||||||||||||||
| 13.10.2012, 13:51 [ТС] | ||||||||||||||||||||||||||||||
0
|
||||||||||||||||||||||||||||||
|
1178 / 1128 / 94
Регистрация: 31.05.2012
Сообщений: 3,060
|
||||||||||||
| 13.10.2012, 14:05 | ||||||||||||
|
Ну можно как то так сделать
А нет, стоп. Это же будет массив массивов.
0
|
||||||||||||
|
0 / 0 / 0
Регистрация: 25.03.2012
Сообщений: 43
|
|||
| 13.10.2012, 14:19 [ТС] | |||
|
Добавлено через 2 минуты Добавлено через 7 минут DrobyshevAlex, Опять не работает что-то... секунду... сейчас скины выложу
0
|
|||
|
1178 / 1128 / 94
Регистрация: 31.05.2012
Сообщений: 3,060
|
||||||
| 13.10.2012, 14:29 | ||||||
|
Ну если вы там ещё будете что то делать с результатом из базы, то есть ещё применять будете mysql_fetch... то вам нужно передвинуть внутренний указатель результата на начало.
как то так Кликните здесь для просмотра всего текста
Но вот я не понимаю, вы первый запрос делаете только для определения есть ли у вас категория в бд? или потом выводите где то ещё результат первого запроса? Добавлено через 1 минуту Просто если вы используете только для определения категории, то вам не нужно выбирать всё содержимое, а нужно просто проверить есть ли такая категория в базе и всё.
0
|
||||||
|
0 / 0 / 0
Регистрация: 25.03.2012
Сообщений: 43
|
||||||
| 13.10.2012, 14:34 [ТС] | ||||||
|
DrobyshevAlex, Вот код:
0
|
||||||
|
1178 / 1128 / 94
Регистрация: 31.05.2012
Сообщений: 3,060
|
|||||||||||
| 13.10.2012, 14:34 | |||||||||||
|
хм, не совсем понятна структура вашей таблицы.
У вас категории и подкатегории хранятся в однйо таблице? И получается что если для одной категории есть несколько подкатегорий то у вас что, дубликат строк с именем категории идёт? Нужно тогда как то так сделать
Что бы подкатегорию, указываете ID категории, то есть pid = $cat_id ну или через join по имени
0
|
|||||||||||
| 13.10.2012, 14:34 | |
|
Помогаю со студенческими работами здесь
20
Проверка на существование БД MySQL Проверка на существование логина в БД Проверка на существование логина Проверка на существование страницы! Проверка записи на существование в БД Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|