سلام بنده جهت جلوگیری از ثبت نام های تکراری از کدی که در زیر ساختم استفاده میکنم این کد نام کاربری یکسان رو محدود میکنه میخواستم بپرسم این کد به تنهایی کافیه ای باید اقدام دیگه ای هم انجام بدم./ کد من الان کار میکنه!
<?php
function Register(){
global $conn;
if (isset($_POST['submit'])){
$username = $_POST['username'];
$sql_user = $conn->prepare("SELECT user_name FROM users WHERE user_name = '$username'");
$sql_user->execute();
$row = $sql_user->fetch(PDO::FETCH_ASSOC);
if($row){
echo 'تکراری';
}else{
echo 'جدید';
}
}
}
سلام.
اولین نکته ای که باید بهش توجه کنید اینه که داخل جدولتون فیلد موردنظر رو unique در نظر بگیرید و موقع ثبت اطلاعات validation هم انجام بدین و در اعتبارسنجی هم این مورد رو چک کنید که اگه قبلا ذخیره شده به کاربر ارور بده و اجازه ثبت داده نشه.
موفق باشید.
سلام
شما در ابتدا باید فیلد هایی داخل شون اطلاعات ذخیره میشن ( به خصوص فیلد email) باید یونیک باشه. همچنین باید ولیدیشن هم انجام بدید که اگه کاربر قبلا ثبت نام کرده بود به صفحه ای دیگه ای ریدایرکت بشه و مانع از ثبت اطلاعات تکراری بشه ( شما اگه فیلد ها رو یونیک کنید ذخیره نمیشه)
@vahidmto
با توجه به توضیحات شما کد بنده دیگه لزومی نداره نوشته بشه چون حالت یونیک رو چک کردم به نظر بهتر از شرط منه حالا یک سوال در حالت یونیک مقدار تکراری یک خطایی میده چطور میتونم اون خطا رو هندل کنم به متن مورد نظر ؟!
چرا نباید نوشته بشه در واقع شما با این کد یه درخواست به سرور ارسال میکنید و اگه فیلدی تکراری بود اجازه ذخیره داده نمیشه، حالا شما باید بررسی کنید که اگه اون فیلد تکراری بود، کاربر در همون صفحه باقی بمونه و متن ارور بهش نمایش داده بشه.
خطای دیتابیس میده چون اجازه نداره مقدار تکراری وارد کنه این خطای دیتابیس رو چطور میتونم با php هندل کنم ( خطا فقط موقع ارسال مقدار تکراری میاد )
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟