PDA

View Full Version : سوال: چك كردن پر بودن يا خالي بودن فيلد



Nil00 far
دوشنبه 16 بهمن 1391, 17:52 عصر
سلام دوستان عزيز
ميدونم ميشه براي چك كردن پر بودن يا خالي بودن يك فيلد از تابع isset
استفاده كرد سوالم اينه آيا راه بهتري هم وجود داره چون تعداد فيلدام زياده نميشه دونه دونه چك كنم
واسه فرم ثبت نام ميخوام ممنون مي شم كمكم كنيد

siavashsay
دوشنبه 16 بهمن 1391, 18:02 عصر
تابع isset پربودن یا خالی بودن رو به تنهایی چک نمیکنه ! باید از تابع empty استفاده کنید !

if(empty($_POST['username']) or empty($_POST['password']) or empty($_POST['email'])){
// return error
}

Nil00 far
دوشنبه 16 بهمن 1391, 20:52 عصر
با این تابع هم باید تک تک فیلدا چک بشه یعنی راه دیگه ای نیست؟

parsboy
دوشنبه 16 بهمن 1391, 21:03 عصر
دوست عزیز شما اول تمام فیلدهاتون رو داخل یک آرایه بریزید سپس برای چک کردن خالی بودن اون آرایه را معرفی کنید

Nil00 far
دوشنبه 16 بهمن 1391, 21:09 عصر
آرایه رو چطور باید چک کنم؟ با همون تابع ؟

parsboy
دوشنبه 16 بهمن 1391, 21:11 عصر
بله شما باید با استفاده از دستورif بگید اگر اون آرایه empty بود مثلا بگه : لطفا فیلدراپرکنید

Nil00 far
دوشنبه 16 بهمن 1391, 21:27 عصر
ممنون کار میکنم اگه دوباره دچار مشکل شدم مزاحمتون می شم

siavashsay
دوشنبه 16 بهمن 1391, 21:29 عصر
به هرحال آخرش باید چند خط کد بنویسید ! چه با آرایه چه بی آرایه !
پس خودتونو زحمت ندین !
فرقی نمیکنه !

2undercover
سه شنبه 17 بهمن 1391, 15:02 عصر
می تونید این کار رو انجام بدید:



foreach($_POST as $send)
{
if(empty($send))
{
$error=1;
break;
}
}


کلش شد 8 خط !!!!

engmmrj
سه شنبه 17 بهمن 1391, 23:34 عصر
$a=array('name','lname');
if($_POST[$a]==''){
$flag=1;
}

کلش شد 4 خط !!

MinusOne
چهارشنبه 18 بهمن 1391, 02:39 صبح
$a=array('name','lname');
if($_POST[$a]==''){
$flag=1;
}

کلش شد 4 خط !!
با توجه به اینکه تعداد فیلدها زیاده فکر نکنم این روش مناسب باشه بعدشم شما اومدی یک آرایه رو به عنوان Key قرار دادی در صورتی که Key فیلد های ارسالی همگی رشته هستن.

siavashsay
چهارشنبه 18 بهمن 1391, 10:18 صبح
کل کل شده ؟! میگم میخوام ببینم کی میتونه بدون کد اینکارو انجام بده :قهقهه:

Nil00 far
چهارشنبه 18 بهمن 1391, 13:54 عصر
ممنونم از همگی حتما کدا رو امتحان می کنم

2undercover
چهارشنبه 18 بهمن 1391, 16:07 عصر
کل کل شده ؟! میگم میخوام ببینم کی میتونه بدون کد اینکارو انجام بده


برنامه نویسی موفق همینه دیگه!

که بتونی بدون کد برنامه کاربردی بنویسه(:لبخند::لبخند::لبخند:) !

engmmrj
پنج شنبه 19 بهمن 1391, 12:11 عصر
با توجه به اینکه تعداد فیلدها زیاده فکر نکنم این روش مناسب باشه
اتفاقا این روش بهتری است

MRmoon
پنج شنبه 19 بهمن 1391, 12:33 عصر
عملگر خطی رو فراموش کردین.



$a=array('name','lname');
($_POST['$a']==NULL)? FALSE : TRUE ;


اگه خالی بود فالس برمیگردونه اگگه نه ترو

tehro0n
پنج شنبه 19 بهمن 1391, 14:58 عصر
آقا یک خط ( با جرزنی )

foreach($_POST as $send)if(empty($send)){echo 'error';break;}else echo $send;

engmmrj
پنج شنبه 19 بهمن 1391, 15:31 عصر
آقا یک خط ( با جرزنی )

foreach($_POST as $send)if(empty($send)){echo 'error';break;}else echo $send;
این درسته یک خط است ولی شما از چند عملگرد استفاده کردی که این روش رو باطل میکنه

MinusOne
پنج شنبه 19 بهمن 1391, 16:38 عصر
این روش هم خوبه : (یه خط :شیطان:)

echo (!empty(array_keys($_POST, ''))) ? "Error" : '';