|
| |
|
|
| |
для: glsv (Дизайнер)
(12.08.2004 в 08:34)
| | | доброго времени суток,извините,что вклиниваюсь в вашу беседу,но тем не менее,у меня возникла почти точно такая дилемма,помогите ее решить,она щас обсуждается в соседней ветке,помогите отладить скрипт,он указан в последнем ссобщении...
вот ссылочка
http://softtime.ru/forum/read.php?id_forum=1&id_theme=205&id_post=1443 | |
| |
|
|
| |
|
|
| |
для: glsv (Дизайнер)
(12.08.2004 в 08:34)
| | | Дизайнер большое вам человечиское спасиба!!
Извеняюсь за свою неграмотность. | |
| |
|
|
| |
|
|
| |
для: glsv (Дизайнер)
(12.08.2004 в 08:27)
| | | Ребятыможно я вклинюсь в вашу беседу и выскажу свое мнение.
Собствеено говоря у вас есть база пользователей, у каждого пользователя обычно есть уникальный номер, покрайней мере я обычно нумерую записи в базе autoincrement. Ну так вот и что тогда можно сделать Если пользователь Вася Пупкин зарегистрированный в базе хочет изменить свои данные все вплоть до Вася Пупкин на Ася Пупкина то мы апдейтом меняем все запрошенные данные в записи под помером который имел Вася предварительно конечно проверив не совпадает ли поле логин с такимже полем в записи с другим номером. И если не совпадает то благополучно меняем. А так как мы смотрим по номеру записи то у нас нет нужды сравнивать запись саму с собой.
То есть мы можем получить запрос такого вида.
<?php
$sql="update table set login=$login and pwd=$pwd and email=$email и т.д. where id=$id";
?>
|
Где $id это уникальный номер Васи Пупкина а $login, $pwd, $email и им подобные это те переменные которые записываются в базу.
Если я просто не врубился в тему извиняйте, но мне кажется так все можно решить. | |
| |
|
|
| |
|
|
| |
для: Адоп Акробат
(12.08.2004 в 04:25)
| | | Если я все правильно описан, то:
У вас в скрипте написано
<?
$result = mysql_query("select * from users where id = $_REQUEST[user_id]", $connection);
?>
|
Т.е. у каждого пользователя есть user_id – идентификатор пользователя и он не изменяется.
Тогда – нет проблем. Во втором запросе применяйте user_id, что бы исключить этого пользователя из проверки. Вот так
<?
$test = mysql_query ("select * from users where login='$login1' and user_id!=".$_REQUEST[user_id]." ", $connection) ;
?>
|
| |
| |
|
|
| |
|
|
| |
для: Адоп Акробат
(12.08.2004 в 04:25)
| | | Так, давайте по порядку.
>Но если я изменил свой логин, то тогда программа должна проверять, есть такой юзер или нет.
По этому пункту все понятно. Перефразирую: Если пользователь изменяет свои и данные и изменяет логин, то новый логин нужно проверить на совпадение с уже сущестующими. И если совпадает, то выводить об этом сообщение и запрещать изменять данные.
>Но мне нужно, если я не хочу изменить свой логин, а хочу изменить другие данные, то мой скрипт скажет, что такой уже существует(а это я и есть), поэтому мой скрип обязует изменить свой логин, а если я его не изменю, то он скажет, то, что такой юзер уже существует.
Вот здесь не до конца ясно. Но по моему подходим к решению…
Разбираем по порядку:
Пользователь менят свои данные, а логин менять не хочет. Логин остается старым.
Теперь скрипт обновления. При обновлении он проверяет логин на несовпадение с уже существующими. И вот здесь проблема! Так как логин не был изменен, то он будет найден в базе и изменения не пройдут. Так? | |
| |
|
|
| |
|
|
| |
для: glsv (Дизайнер)
(11.08.2004 в 21:09)
| | | >Есть пользователи. Они могут менять свои данные, в том числе
>свои логин. Но при изменении своего логина надо сделать так,
>чтобы он не совпадал с логинами уже существующих
>пользователей. Так?
Да так, этот скрипт у меня уже есть.
Но мне нужно, если я не хочу изменить свой логин, а хочу изменить другие данные, то мой скрипт скажет, что такой уже существует(а это я и есть), поэтому мой скрип обязует изменить свой логин, а если я его не изменю, то он скажет, то, что такой юзер уже существует. Понимаете в чем проблема??
Но если я изменил свой логин, то тогда программа должна проверять, есть такой юзер или нет. | |
| |
|
|
| |
|
|
| |
для: cheops
(11.08.2004 в 21:06)
| | | >если посетитель хочет ник, который имеется в системе - ему следует отказать.
А мне кажется - не только регистрация
Менять свои данные могут все. И могут менять даже логин, но нельзя изменять его на логин уже существующего пользователя
>Но среди зарегистрированных посетителей есть один посетитель с исключительными правами
В в этом то я и сомневаюсь :))
Адоп Акробат, рассуди нас пожалуйста :) | |
| |
|
|
| |
|
|
| |
для: glsv (Дизайнер)
(11.08.2004 в 21:01)
| | | Давайте объявим мораторий на выкладывание кода пока не поставим задачу.
Попробую сделать это я.
Есть пользователи. Они могут менять свои данные, в том числе свои логин. Но при изменении своего логина надо сделать так, чтобы он не совпадал с логинами уже существующих пользователей. Так?
(Если так, то при обновлении нужно передавать и старый логин и новый. Тогда можно будет решить эту задачу) | |
| |
|
|
| |
|
|
| |
для: glsv (Дизайнер)
(11.08.2004 в 21:01)
| | | Да нет вроде всё нормально: есть форма и скрипт за ней - она регистрирует посетителей, если посетитель хочет ник, который имеется в системе - ему следует отказать. Но среди зарегистрированных посетителей есть один посетитель с исключительными правами, который введя свой логин и пароль может менять свои регистрационные данные - только вот про пароль мы как-то опустили :))) | |
| |
|
|
| |
|
|
| |
для: cheops
(11.08.2004 в 15:23)
| | | Ребят, буду рад ошибиться, но мне кажется, что вы решаете разные задачи. Давайте еще раз точно определим - что надо сделать. | |
| |
|
|
|