PDA

View Full Version : بررسی وجود فیلد تکراری برای یک جدول با محتویات آدرس وب سایت ها



clover
جمعه 06 فروردین 1389, 18:39 عصر
با سلام
در یک سیستم تبادل لینک، چطور باید بررسی کنیم که لینک تکراری در جدول وارد نشه ؟
مثلا یک آدرس با www و یا بدون اون هر دو به یک وب سایت اشاره می کنند. و یا چطور می تونم ساب دامین ها و یا زیر شاخه ها را تشخیص داد ؟
به طور کلی نمی دونم این سیستم چطور باید اینها را از هم تشخیص بده و کدوم را باید محدود کنه ؟
به طور مثال کاربر باید اجازه داشته باشه آدرسی مانند
"http://test.com/home/" را ثبت کنه. حالا دفعه ی بعد چطور باید جلوی ثبت آدرس
"http://test.com/" گرفته بشه و در عوض به
"http://weblog.test.com/" اجازه داده بشه ؟
اصلا بررسی این مورد با کد نویسی منطقی هست ؟ یا باید به عهده مدیر باشه ؟ لطفا راهنمایی کنید.

ahmad1358
شنبه 07 فروردین 1389, 04:22 صبح
اگه تو بانک ذخیره شده شما با یه دستور ساده Select مثل زیر می تونید در صورت خالی بودن نتیجه مقدار ورودی رو قبول کنید:


Select * from Tble_name where Field_name Like values

که مقدار values همون


http://test.com/

هستش .و Field_nameنام فیلدی است که آدرس سایتها توش ذخیره شده.

clover
یک شنبه 08 فروردین 1389, 00:20 صبح
اگه تو بانک ذخیره شده شما با یه دستور ساده Select مثل زیر می تونید در صورت خالی بودن نتیجه مقدار ورودی رو قبول کنید:


Select * from Tble_name where Field_name Like values

که مقدار values همون


http://test.com/

هستش .و Field_nameنام فیلدی است که آدرس سایتها توش ذخیره شده.

دوست عزیز
ابا این کار مشکل حل نمیشه !
خب اگر طرف قبلا آدرس

test.com
ثبت کرده باشه، این را هم می تونه ثبت کنه

ahmad1358
یک شنبه 08 فروردین 1389, 02:44 صبح
نه ديگه نميتونه ثبت كنه چون test.com زير مجموعه اي از http://test.com هستش

rasoolgh1
یک شنبه 08 فروردین 1389, 02:58 صبح
شما سعی کنید اسم رو از htttp اینا جدا کنید.بنمونه test.com نتیجه اگه فیلد pk باشه مشکل حله؟؟؟؟!!!!!!!
شاید هم من متوجه منظور نشدم:عصبانی++:

clover
یک شنبه 08 فروردین 1389, 13:42 عصر
نه ديگه نميتونه ثبت كنه چون test.com زير مجموعه اي از http://test.com هستش
اما آیا http://test.com هم زیر مجموعه ای از test.com هست ؟
من میخوام یه سناریو ارائه کنید با جزییات که نشه دورش زد. اگر لطف کنید و تمام موارد را بررسی کنید ممنون میشم.


شما سعی کنید اسم رو از htttp اینا جدا کنید.بنمونه test.com نتیجه اگه فیلد pk باشه مشکل حله؟؟؟؟!!!!!!!

من هم دارم روی همین کار می کنم. اما در صورت وجود میخوام روش اصولی یا مرسوم را بدونم.

ahmad1358
یک شنبه 08 فروردین 1389, 15:13 عصر
در اين صورت يكي از بهترين روشها استفاده از Regular expression هستش كه بايد ورودي كاربر با يك استاندارد چك شود اگر match بود حالا از دستور like استفاده شود تا ببيند شبيه اين ورودي قبلا وارد شده يا نه

كه در اين صورت با توجه به استاندارد يا الگوي شما كاربر فقط ميتونه به يه صورت اطلاعات رو وارد كنه مثلا ديگه نميتونه test.com وارد كنه و حتما بايد مثلا اينجوري وارد كنه


http://\w.sitename.\w{3 (http:///w.sitename./w%7B3)}

يعني اول http:// بعد يه نقطه و نام سايت و سپس 3 كاراكتر ديگه سايت بعد از نقطه.