|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
23.11.2015, 23:38 | #1 |
Пользователь
Регистрация: 02.10.2015
Сообщений: 27
|
Некорректно работает запрос в БД
Добрый день!
Делаю голосование на сайте. Для этого id проголосовавшего вношу в таблицу и проверяю есть ли оно там или нет, для того, чтобы разрешить голосование или нет. Делаю в ООП. Вот код: Создаю объект и вызываю метод: PHP код:
PHP код:
Если же удалить INSERT запрос, а оставить только echo 'Ok', то при отсутствии записи, на экран выводится надпись 'Ok', что и должно быть. Циклов никаких тут не использую, этот метод больше нигде не вызываю, объекта такого больше нигде нет. Я просидел с этим уже часов 5, помочь никто не может. Код элементарный, но не работает как надо. Буду очень благодарен за помощь! |
23.11.2015, 23:42 | #2 |
Участник клуба
Регистрация: 21.10.2015
Сообщений: 1,361
|
Залогируйте метод и будет видно.
|
23.11.2015, 23:45 | #3 |
Пользователь
Регистрация: 02.10.2015
Сообщений: 27
|
Что вы имеете ввиду?
|
23.11.2015, 23:47 | #4 |
Участник клуба
Регистрация: 21.10.2015
Сообщений: 1,361
|
Даже и не знаю как еще проще сказать ....
|
23.11.2015, 23:50 | #5 |
Пользователь
Регистрация: 02.10.2015
Сообщений: 27
|
Может используете другое слово? Я не знаю что это значит в php.
Даже когда я пишу return false сразу после insert, то результат все тот же. |
24.11.2015, 00:01 | #6 |
Участник клуба
Регистрация: 21.10.2015
Сообщений: 1,361
|
Сделайте файл и в него вписывайте каждое действие, потом откроете и посмотрите сколько и как проходило.
|
24.11.2015, 00:26 | #7 |
Пользователь
Регистрация: 02.10.2015
Сообщений: 27
|
Вышло вот что:
Resource id #60Resource id #61Вы не можете проголосовать больше 1 раза <br>1 т.е. он записал запрос SELECT потом почему-то не записал $c,в которой должен лежать 0 потом записал запрос INSERT потом похоже, что перескочил вверх и снова прошелся по коду до выполнения первого условия но $c он записал после echo 'Вы не можете проголосовать больше 1 раза', а не до Ничего не пойму |
24.11.2015, 01:07 | #8 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
вы советом может воспользуетесь?
у вас может быть дважды идет запрос просто напросто. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
24.11.2015, 01:17 | #9 |
Пользователь
Регистрация: 02.10.2015
Сообщений: 27
|
Та я бы с удовольствием! Что я неправильно понял?
Вот все, что в файле, в котором создается объект класса, метод вызывается единожды, никаких циклов. Код:
Следующие разы после запроса INSERT код снова прыгает вверх к запросу SELECT и проходит снова сверху донизу. Последний раз редактировалось Yan9; 24.11.2015 в 01:20. |
24.11.2015, 01:50 | #10 |
Пользователь
Регистрация: 02.10.2015
Сообщений: 27
|
Разделил на два метода:
Файл с объектами (создал даже разные объекты класса): Код:
Код:
Создание отдельного класса в отдельном файле только для этого одного метода тоже проблему не решило. Кто-то знает почему такое может происходить? Последний раз редактировалось Yan9; 24.11.2015 в 02:05. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Некорректно работает запрос. | Abay19941308 | БД в Delphi | 2 | 25.12.2013 14:31 |
Некорректно работает TidHTTP | denbox | Общие вопросы Delphi | 4 | 16.01.2013 12:13 |
Некорректно работает программа | Dimakat | Помощь студентам | 2 | 07.09.2010 14:54 |
Некорректно работает запрос | Arkuz | БД в Delphi | 9 | 20.08.2009 07:04 |
Некорректно работает запрос | zulu80 | БД в Delphi | 10 | 16.02.2009 13:35 |