ورود

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : جلوگیری از ثبت نام کاربر با نام کاربری مشابه در دیتابیس php (مهم بیایین)



mojtabakh18
December 25th, 2016, 00:57
سلام

من یک فیلد ثبت نام که اطلاعات کاربر در دیتابیس ثبت میشه

حالا چطوری از اینکه دو نفر مثلا با نام admin یعنی دو کاربر‌ با نام مشابه ثبت نام نشه؟؟

روش کلی شو‌بگین خودم بنویسم مرسی

- - - Updated - - -


خودم پاسخش رو پیدا کردم مرسی :-*

auuob
December 25th, 2016, 02:24
سلام و وقت بخیر

راه حل یک :
بعد از اینکه کاربر اطلاعات فرم را پر کرد ، قبل از اینکه insert را انجام دهید ، بررسی کنین که چنین ایمیل و شماره تماسی در table مربوطه وجود نداشته باشد. (اگر وجود داشت پیام داده شود که چنین کاربری و شماره موبایلی موجود است. در غیر این صورت insert و پیام تبریک عضو شدن)

موفق باشید

kiava
December 25th, 2016, 02:35
قبل از ثبت نام کدتونو به حالتی بزنید که داخل phpmyadmin موجود هست یا نه مثل این کد




//check if username is available:
$query1 = "SELECT * FROM users WHERE (username='$username' OR email='$email')";
$result = mysqli_query($mysqlConnection,$query1);
/*var_dump(mysqli_fetch_assoc($result));
if($result){
var_dump($result);
}else{
echo "oops!";
}*/
if($result && mysqli_num_rows($result) > 0){
$errors[] = "Username/Email is already registered";
}else{

omid1991
December 25th, 2016, 03:05
سلام و وقت بخیر

راه حل یک :
بعد از اینکه کاربر اطلاعات فرم را پر کرد ، قبل از اینکه insert را انجام دهید ، بررسی کنین که چنین ایمیل و شماره تماسی در table مربوطه وجود نداشته باشد. (اگر وجود داشت پیام داده شود که چنین کاربری و شماره موبایلی موجود است. در غیر این صورت insert و پیام تبریک عضو شدن)

موفق باشید


سلام و وقت بخیر

راه حل یک :
بعد از اینکه کاربر اطلاعات فرم را پر کرد ، قبل از اینکه insert را انجام دهید ، بررسی کنین که چنین ایمیل و شماره تماسی در table مربوطه وجود نداشته باشد. (اگر وجود داشت پیام داده شود که چنین کاربری و شماره موبایلی موجود است. در غیر این صورت insert و پیام تبریک عضو شدن)

موفق باشید


قبل از ثبت نام کدتونو به حالتی بزنید که داخل phpmyadmin موجود هست یا نه مثل این کد




//check if username is available:
$query1 = "SELECT * FROM users WHERE (username='$username' OR email='$email')";
$result = mysqli_query($mysqlConnection,$query1);
/*var_dump(mysqli_fetch_assoc($result));
if($result){
var_dump($result);
}else{
echo "oops!";
}*/
if($result && mysqli_num_rows($result) > 0){
$errors[] = "Username/Email is already registered";
}else{



سلام وقت بخیر

صرفا جهت اطلاع : :">
اگه درخواست همزمان باشه تکراری ثبت میشه

راه حل : :113:
UNIQUE گذاشتن فیلد مورد نظر تو دیتابیس

اینم کوئریش :
http://pastecode.ir/?raw=1147

با احترام

kiava
December 25th, 2016, 03:42
سلام وقت بخیر

صرفا جهت اطلاع : :">
اگه درخواست همزمان باشه تکراری ثبت میشه

راه حل : :113:
UNIQUE گذاشتن فیلد مورد نظر تو دیتابیس

اینم کوئریش :
http://pastecode.ir/?raw=1147

با احترام


کدی که بنده زدم مشکلی نداره همزمان هم ثبت نام کنند ارور میده بقیشو نزدم البته ولی خوب راهنماییشون کردم :x

dow
December 25th, 2016, 06:50
بهتره از طریق unique استفاده کنید همونطور یکی از دوستان در بالا گفتن. اگر مثلا چند نفرهمزمان درخواست بدن و از ***** شما عبور کنن در اینصورت بازهم چنددنام کاربری مشابه خواهید داشت.

Rezash
December 25th, 2016, 08:38
سلام وقت بخیر

صرفا جهت اطلاع : :">
اگه درخواست همزمان باشه تکراری ثبت میشه

راه حل : :113:
UNIQUE گذاشتن فیلد مورد نظر تو دیتابیس

اینم کوئریش :
http://pastecode.ir/?raw=1147

با احترام

بله فرمایش شما درست هست
البته نظر بنده ترکیب دو روش هست
۱. بررسی موجود بودن/نبودن فیلد با کویری
۲. unique بودن فیلد در دیتابیس

mojtabakh18
December 25th, 2016, 12:07
ممنون از همه

دیگه یک در میلیارده همزمان دو نفر با یک نام کاربری همزمان ثبت نام کنن