• 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
اطلاعات تکراری
#1
سلام دوستان چگونه از ورود اطلاعات تکراری جلوگیری کنم مثال من یک فرم دارم که وقتی کاربر سابمیت میکنه اطلاعاتی وارد دیتابیس میشه من میخام بار دوم دیگه نتونه وارد کنه و اطلاعات تکراری وارد نشه لطفا بحث سنگین بودن دیتابیس در حدود 5,000,000 خط اطلاعات را مد نظر قرار بدید!!!!؟؟؟؟؟ چه میشه کرد دوستان؟؟؟؟!!!؟؟؟
  پاسخ
تشکر شده توسط : amir.ntm
#2
میتونی با استفاده از session چک کنی کاربر فرم رو مجددا ارسال نکنه
مثلا بار اول ارسال کرد توی session اش بنویس 1 و هر بار چک کن session مقدار 1 نداشته باشه
  پاسخ
تشکر شده توسط : amir.ntm
#3
(۱۳۹۴ دى ۱۴, ۰۶:۴۰ ق.ظ)Reza نوشته: میتونی با استفاده از session چک کنی کاربر فرم رو مجددا ارسال نکنه
مثلا بار اول ارسال کرد توی session اش بنویس 1 و هر بار چک کن session مقدار 1 نداشته باشه

اگه کاربر مرورگرش رو خاموش و روشن کرد سشن ازبين میره و دوباره میشه اطلاعات تکراری را وارد کرد!!!!من میخام ببینم آیا راهی منطقی غیر کویری زدن به دیتابیس هست یا نه؟؟؟؟؟
  پاسخ
تشکر شده توسط : amir.ntm
#4
نقل قول: اگه کاربر مرورگرش رو خاموش و روشن کرد سشن ازبين میره و دوباره میشه اطلاعات تکراری را وارد کرد!!!!من میخام ببینم آیا راهی منطقی غیر کویری زدن به دیتابیس هست یا نه؟؟؟؟؟
شما میخوای فرم جاری رو دوبار نفرسته پس مرورگر رو نمیبنده کاربر دیگه Big Grin

نقل قول:من میخام ببینم آیا راهی منطقی غیر کویری زدن به دیتابیس هست یا نه؟
خب شما باید آرشیو اطلاعات دریافتی رو یه جا نگه داری کنید که چک کنید ، و فکر کنم منطقی ترین راه دیتابیس هست Smile

یه کوئری کم وزیاد تاثیری تو برنامه نداره ، نگران نباش Big Grin
  پاسخ
تشکر شده توسط : amir.ntm
#5
با کسب اجازه از استاد خوبم رضای عزیز

شما میتونی فیلدهای دیتابیس تون رو یونیک کنید

توگوگل سرچ کنید نتایج خوبی بدست میارید UNIQUE
  پاسخ
تشکر شده توسط : amir.ntm
#6
میتونی براش شرط بزاری مثلا اگه میخوای نظر ها تکراری نباشه باید یه شرط بزاری که مطالب رو از دیتابیس بخونه و اگه شبیه بود ارور بده مثل کد زیر:
مقادیر ارسال نظر :
نام = $_POST['name']
نظر = $_POST['comm']
خوب اینم از جدولت :
id,name,comm
اسم جدولتم مثلا nazar
حالا بریم سراغ کد :
کد پی‌اچ‌پی:
$rcomm=mysql_query("SELECT * FROM nazar WHERE comm<='".$_POST['comm']."'"); 
خوب اینجا که گفتی اگر نظر تغریبا یا کلا شبیه بود بریم سراغ شرط:
کد پی‌اچ‌پی:
if(mysql_num_rows($rcomm)==1){ 
خوب اینجا هم کوری ارسال نظر
کد پی‌اچ‌پی:

خوب حالا اگه نظر شبیه نبود ارسال میشه وگرنه هیچی نمیشه.
امیدوارم تونسته باشم کمکت کنیم.
  پاسخ
تشکر شده توسط :


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان