مشکل در چک کردن فرمت آدرس ایمیل

phpweb

Active Member
من از کد زیر برای چک کردن آدرس ایمیل استفاده می کنم، این کد خوب کار می کنه ولی وقتی که داده ورودی از کاراکتر دش - استفاده می کنم، این کد اعلام می کنه که فرمت ایمیل درست نیست.

بنظرتون مشکل کار کجاست.

PHP:
if(eregi("^[a-zA-Z0-9]+[a-zA-Z0-9\.\-_]*@[a-zA-Z0-9]+[a-zA-Z0-9\.\-]*\.[a-zA-Z]+$", $_POST[email]))
        {
//#############//
        }
        else
        {
       
    ;'آدرس ايميل از فرمت مناسب برخوردار نيست'echo  
        }
 
آخرین ویرایش:

Masoud1365

مدیر انجمن
این تابع رو استفاده کنید
PHP:
function check_valid_email($address){
  // check an email address is possibly valid
  if (ereg('^[a-zA-Z0-9_\.\-]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$', $address))
    return true;
  else
	return false;
}
 

znhost

Member
فکر میکنم از این به بعد برنامه نویسا حروف فارسی رو هم باید توی آدرس سایتها و ایمیلها درج کنن.
چون هم ایمیل فارسی اومده هم آدرس فارسی
 

phpweb

Active Member
این تابع رو استفاده کنید
PHP:
function check_valid_email($address){
  // check an email address is possibly valid
  if (ereg('^[a-za-z0-9_\.\-]+@[a-za-z0-9\-]+\.[a-za-z0-9\-\.]+$', $address))
    return true;
  else
    return false;
}

من توی کد خودم بجای دبل کوتیشن از سینگل کوتیشن استفاده کردم، ولی باز هم جواب نداد.

می شه بگید گه ایرادی توی کد هست که با کاراکتر دش به مشکل بر می خوره؟

مشکلم هنوز حل نشده
 
آخرین ویرایش:

ARMIN3D.NET

New Member
این تابع رو استفاده کنید
PHP:
function check_valid_email($address){
  // check an email address is possibly valid
  if (ereg('^[a-zA-Z0-9_\.\-]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$', $address))
    return true;
  else
	return false;
}
تابعه خوبیه ولی یه اشکا بزرگ داره که هیچ کس بهش توجه نمیکنه. یکی از فیچر های جیمیل اینه که با گذاشتن کرکتر dot (.) در هر جای آدرس ایمیل ، تو حساب شما تغییری ایجاد نمیشه.
مثلا :
همه با هم یکی هستن . باید تو تابعتون define کنید که اگر gmail بود ، تمام نقطه های قبل از @ حذف بشن ، بعد مقایسه یا هر فانکشنی روش اجرا بشه. حالا این کجا مشکل ساز میشه ؟ مثلا تو همین vb که میتونی با یه میل 10 تا یوزر بسازی :D
 

Masoud1365

مدیر انجمن
تابعه خوبیه ولی یه اشکا بزرگ داره که هیچ کس بهش توجه نمیکنه. یکی از فیچر های جیمیل اینه که با گذاشتن کرکتر dot (.) در هر جای آدرس ایمیل ، تو حساب شما تغییری ایجاد نمیشه.
اینو نمیدونستم ! به نظر من اگر اینجوری باشه که این یه ضعف محصوب میشه ! :-?
 

ARMIN3D.NET

New Member
نویسندگان vBulletin هم نمیدونن. من به شخصه cms ای ندیدم که این فیچر رو رعایت کنه. خودم تو سیستمم ، کامل باهاش برخورد کردم ولی هیچ کس بهش توجه نمیکنه. میشه مصداق مطلق نبودن امنیت. :D
 

phpweb

Active Member
تابعه خوبیه ولی یه اشکا بزرگ داره که هیچ کس بهش توجه نمیکنه. یکی از فیچر های جیمیل اینه که با گذاشتن کرکتر dot (.) در هر جای آدرس ایمیل ، تو حساب شما تغییری ایجاد نمیشه.
مثلا :
همه با هم یکی هستن . باید تو تابعتون define کنید که اگر gmail بود ، تمام نقطه های قبل از @ حذف بشن ، بعد مقایسه یا هر فانکشنی روش اجرا بشه. حالا این کجا مشکل ساز میشه ؟ مثلا تو همین vb که میتونی با یه میل 10 تا یوزر بسازی :d

گوگل هم داره مسخره بازی در می یاره. تا دیروز برنامه نویسا بخاطر مرورگرهای بنجل مایکروسافت باید کدهاشون رو عوض می کردن، حالا هم گوگل افتاده دنبال دردسر درست کردن برای برنامه نویسا
 

جدیدترین ارسال ها

بالا