День добрый. Подскажите, как можно решить проблему с цикличным выводом сообщения.. Есть такой код PHP: while($resultat = $q->fetch_array(MYSQLI_BOTH)){ if ($checkit != $resultat['name']) { $i++; //Где то тут должно вывести сообщение, что такого кода не существует; continue; //Если убрать, то выводит несколько-подряд. } if ($checkit == $resultat['name']){ if ($counter2 > 0 && $active != false){ mysqli_query($bds,"UPDATE bonus SET counter=counter-1 WHERE name='$checkit'"); mysqli_query($bds,"UPDATE users SET last_code=CONCAT(last_code, '".$data['bonuscode'].",') WHERE id='$u->id'"); mysqli_query($bds,"UPDATE users SET money=money+'$action2' WHERE id='$u->id'"); echo "Код успешно активирован. На ваш счет начислено ".$action2." игровой валюты. Обновите страницу, или нажмите на кнопку ниже."; }else{ echo "Код недействителен"; } } } Задача такова..Мне необходимо выводить "Такого кода не существует" в тот момент, если не один из перебираемых вариантов в БД не совпал с требуемым.. в данном случае выводится это сообщение каждую проверку. Можно, конечно, создать условие и переменную типа false, тогда будет разовый вывод сообщения, но оно выведется и тогда, когда сверяемый код и код, который сверяем - совпадут..Получится что то вроде: Такого кода не существуетКод успешно активирован. На ваш счет начислено.. Есть идеи ? P.S - Break не подойдет вообще ни в каких пропорциях.
Идея тут одна, кто-то не умеет работать с БД от слова совсем. И совсем понятия не имеет зачем вообще нужна база данных. Сравнение кода должно проходить на уровне СУРБД, а не на уровне РНР.
Интересно..а ну ка сделай мне сравнение результата с переменной из POST запроса на уровне СУБД..очень интересно посмотреть.
а чего это тон какой то повелительный.....??? элементарных вещей не знаете - в запросе Код (Text): SELECT * FROM t WHERE name = 'искомое слово'
Что вы несете ? Это очередной борд псевдоумников ? Ничего что где то до этого цикла я сделал подобный запрос + преобразовал все доступные коды в массив, предварительно сделав explode..вы о чем вообще ? Если вы глупый, то не нужно лезть туда, куда не просят..господи. Удалите тему, аж стыдно за борд..Просят одно, а они, не зная всего кода целиком, пытаются залезть куда то вне дозволенных рамок..господь убереги их душу..Если еще кто то напишет о том, что можно сравнить через LIKE и NOT LIKE - обоссусь от смеха. --- Добавлено --- Специально для дурачков сверху: PHP: $te = mysqli_query($bds,"SELECT * FROM users WHERE last_code LIKE '%".$checkit."%'"); Facepalm.. --- Добавлено --- В общем решение я сделал. Закройте тему, пока еще больше дурных голов не забрело. От темы отписался с борда ушел. Высказать что-то умное можете не пытаться. Позорники.
за 12 лет проведённых на форумах РНР какого только тона я не слышал, тон меня мало волнует, главное это содержимое поста. @shareware, если с нежеланием расписывать прописные истины вдоль и поперёк расписанные в книгах я еще как-то могу бороться (а иногда даже и побороть), то против банальной нехватки времени на это, я бессилен. База данных в первую очередь нужна для обработки информации, а то что она в себе эту информацию хранит - это всего лишь приятный бонус. Я конечно утрирую, но от истины это не так уж и далеко. Ты делаешь "полную" выборку из таблицы и производишь сравнение на уровне РНР, для знающего человека - это примерно как удалять гланды через задний проход.