Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > PHP: Базы Данных > Проверка поля емайл на повторение |
Автор: Defer 1.9.2010, 17:30 | ||
Доброго времени суток! Вообщем возникла такая проблема. У меня имеется регистрационная форма которая подключена к базе. Имя там фамилия и главное поле-емайл. Поле емайл будет являтся логином,и надо чтоб если пользователь при регистрации ввел уже существующий емайл ему вернулась бы ошибка аля такой пользователь с емайлом уже есть. Так вот я создал 2 файла. 1 файл там находятся инпуты аля текстовые строки с кнопкой а во 2 файле коннект к базе и вставка информации в базу. Непонятно почему не работает . Вообщем если count(*) равен 0 то такого емайла нет в базе а если count(*) равен 1 то есть. Что бы я хотел сделать чтобы если count(*) был бы не равен 0,то выдавалась бы ошибка через echo или sql чтобы пользовател видел при этом,insert бы не проходил Ну а если равен нулю то все нормально insert работает
Надеюсь на помощь или совет |
Автор: enoff 1.9.2010, 17:40 | ||
|
Автор: Defer 1.9.2010, 17:59 |
Warning: mysql_result() expects parameter 1 to be resource, boolean given in /Applications/MAMP/php/Registration form/db_registration.php on line 15 не помогло |
Автор: gta4kv 1.9.2010, 18:18 |
Ошибку в гугл. |
Автор: enoff 1.9.2010, 18:53 | ||
Так и знал ![]()
Добавлено через 28 секунд http://php.net |
Автор: Defer 2.9.2010, 11:07 |
чтото ничего не помогает может напишешь мне тупому как все в месту будет выглядеть? заранее блогадарен |
Автор: Defer 2.9.2010, 11:33 | ||
хммм странно пишу
а выводит должен 0 если нет такого емайла и 1 если есть А он мне выводит Resource id #3 может запрос корявый или плохой? |
Автор: gta4kv 2.9.2010, 11:37 |
Вы вообще знаете что такой mysql и как с ним работать? Вы пытаетесь вывести ссылку (индефикатор) mysql запроса. |
Автор: enoff 2.9.2010, 11:43 |
Позже код полностью напишу. Добавлено через 1 минуту и 1 секунду И ссылок много накидаю ![]() |
Автор: skyboy 2.9.2010, 11:49 |
Defer, обрати внимание на кнопку "Код" над полем ввода сообщения. Использовать для выделения программного кода bold - это усложнять чтение тем, кто мог бы ответить на вопрос. |
Автор: Defer 2.9.2010, 13:32 |
Простите меня больше не буду незнал enoff Пасиб буду ждать |
Автор: bars80080 2.9.2010, 13:48 |
Defer, это было не просто так сказано, как и то что вы написали. вы же не от балды писали запрос? не думаю, что случайно потарабанив пальцами по клавиатуре можно получить осмысленный код. вы знали, что вначале слово select, затем count(*), потом from и т.д. и это знание не от божественного вмешательства, а потому что вы это где-то увидели. как запрос, так и то, в какую функцию на php надо засовывать этот запрос. неужели вы не стали читать до конца, и не разобрали как полностью надо читать результат из БД? аналогия такая: вы приходите на урок вождения, инструктор говорит, что надо выжать сцепление, вы кричите "знаю", выжимаете сцепление, а потом задаёте вопрос: "а почему я не еду?" можно же было вычитать полную процедуру чтения данных |
Автор: skyboy 2.9.2010, 14:28 |
работа с mysql через расширение mysql(все эти функции, начинающиеся с "mysql_") происходит следующим образом: 0. подключение к серверу(http://php.net/mysql_connect или http://php.net/mysql_pconnect) 1а. выполнение запроса(http://php.net/mysql_query, http://php.net/mysql_exec). если запрос на выборку(select, вызов процедуры, возвращающей данные). 1б. перебор данных, путем запроса очередной порции данных(mysql_fetch_assoc, mysql_fetch_array, mysql_fetch_object). пункты 1а и 1б повторяются на каждом запросе. результат выполнения каждого пункта передается в следующий пункт. т.о. то, что вернет mysql_connect(если не ошибка - false), можно передать в mysql_query; то что вернет mysql_query нужно передать в mysql_fetch_* |
Автор: -=Ustas=- 2.9.2010, 15:24 |
Жуть... [off]сорри за оффтоп[/off] |
Автор: Defer 2.9.2010, 16:38 | ||
Спасибо за справку,легче было бы если бы просто вписали в моем коде ошибки,и показали как надо. Рассусоливать и я могу. Всем спасибо все свободны. Добавлено через 1 минуту и 55 секунд Отдельное спасибо enoff что подсказал в каком направлении двигаться. |
Автор: gta4kv 2.9.2010, 17:34 | ||
Так вот, это делается (дают справку, а не готовый код) не для того, что бы поиздеваться над тобой и потратить время. Это делается для того, что бы в пустой голове, которой еще хватает наглости хамить, людям которые тебя учат — появились какие то знания. Можешь всю жизнь ходить на готовенькое и так ничего не уметь, или пытаться что-то делать самому (в данном случае, минимальное - залезть в справку по-функциям mysql_* и разобраться в чем же проблема). Решать тебе. |
Автор: Defer 3.9.2010, 10:50 | ||
Посылать в гугл тоже все могут в данном контексте всеравно что послать человека на... Вместо того чтобы если знаешь сразу объяснить причину ошибки. В следующий раз если нечего сказать пройди мимо и не засоряй тему выражениями аля валите в гугл, для того ведь и существуют такие форумы чтобы помогать а не в гугл посылать сразу. Сорри за небольшой оффтоп. Зы закройте тему она уже неактуальна. Спасибо. |
Автор: bars80080 3.9.2010, 13:44 |
дык, подсказали же: вы не полностью прочитали документацию. если бы вы после этого спросили: "а где её можно почитать полностью?" - вам бы быстро скинули пару-тройку ссылок |