PDA

View Full Version : مبتدی: validation در فرم



mehsaa
یک شنبه 26 آبان 1392, 11:09 صبح
سلام
برای validation هایی روی فیلدهایی با تایپ مالتی تکس میزارم باید چه کاراکترهایی و در نظر بگیرم که وارد نشه؟
و اینکه الان من یه چیز کلی میدونم برای validation ها، ولی اگه بهم یه فرمت مثلا شماره بدن من نمیتونم براش دقیق خودم validaton بنویسم، از کجا میتونم این و یاد بگیرم؟
مرسی

son8989
یک شنبه 26 آبان 1392, 12:37 عصر
سلام برای محدودیت برروی یک کنترل مامیتونیم اینکارروباقراردادن محدودیت موردنظرمون درون رویداد keypress کنترلمون اعمال کنیم.مثلا من این مثال رومیزنم که من نمیخوام تکس باکس حروف روبپذیره برای اینکار توی رویداد keypress کنترلم اینوواردمیکنم.


if (Char.IsDigit(e.KeyChar) )
{
e.Handled = false;
}
else
{
e.Handled = true;
}

mehsaa
یک شنبه 26 آبان 1392, 12:51 عصر
خیلی ممنون فکر کنم من سوالم و بد بیان کردم
سوالم این هست که برای اینکه از ورود کدمخرب درون یه فیلد جلوگیری کنیم چه کاراکتری و باید در نظر بگیریم که وارد نشه؟
منظورم این هست که اصلا کدهای مخربی که میتونن وارد بشن چی هست؟ آیا پی اچ پی هست؟ یعنی من باید از ورود کاراکتری مثل '؟' یا ' " ' یا مشابه اینا که جزو کاراکترهایی هستند که برای کد هست جلوگیری کنم؟
مرسی

MMSHFE
یک شنبه 26 آبان 1392, 13:40 عصر
Validation سمت کلاینت معتبر نیست و به راحتی قابل غیرفعال شدنه. سمت سرور باید Validation رو انجام بدین. اینکه چه کارکترهایی هم باید مجاز باشن بستگی به نیاز شما داره. مثلاً توی فیلد سن، هیچ چیزی بجز عدد نباید وارد بشه ولی توی فیلد نام، حروف الفبا مجازه. توی فیلد ایمیل، هم حروف و هم اعداد و همچنین کارکترهایی مثل @ و _ و - و . و... مجازه. اول باید مشخص کنید چی لازم دارین تا بعد ببینیم چه کارکترهایی غیرمجازه و کدومها مشکل ساز هستن و اگه بخوایم مجاز باشن، باید Escape کنیم.

mehsaa
یک شنبه 26 آبان 1392, 15:32 عصر
مرسی
منظور من این هست که در کل باید از ورود چه کاراکترهایی جلوگیری کنیم، خاصا این تایپ هایی که فرمودید منظورم نیست، اصلا کد مخرب با چه زبونی هست؟
و اینکه validation ها رو من با کد php مینویسم و چک میشه، باید پس کجا بزارم؟ چجوری میتونه غیر فعال بشه؟
مرسی

shahriyar3
یک شنبه 26 آبان 1392, 15:46 عصر
اینجا (http://php.net/manual/en/filter.filters.sanitize.php)رو ببینید

mehsaa
یک شنبه 26 آبان 1392, 15:57 عصر
خیلی ممنون
فکر کنم بد منظورم و میگم.
سوالم اصلا در کل اینه، کد مخربی که میتونه از طریق فرم ها وارد بشه اگه validation انجام نشه، چیه؟ این کد مخرب و با چه زبونی مینویسن؟
و اونی که جناب MMSHFE فرمودن که میشه غیر فعالش کرد چجوری میشه غیر فعال بشه؟

shahriyar3
یک شنبه 26 آبان 1392, 16:21 عصر
همه چی میتونه وارد بشه بستگی داره هکر چه هدفی داره به چی میخواد دسترسی داشته باشه و نقطه ضعف سایت چی باشه
اول معمولا برای تست جاوا اسکریپت وارد میکنن ببینن ورودی ها بازه یا نه

<script>
alert(1);
</script>

mehsaa
یک شنبه 26 آبان 1392, 16:44 عصر
آقا دستتون در نکنه، در این مورد جایی سراغ دارید که مطالبی بخونم؟ مرسی

mehsaa
یک شنبه 26 آبان 1392, 16:45 عصر
میشه بگید این چیکار میکنه؟ مرسی

mehsaa
یک شنبه 26 آبان 1392, 16:49 عصر
آقا ببینید درست متوجه شدم، اگه این و وارد کرد و آلارم بهم داد یعنی اینکه تو اون فیلد میتونه کد وارد کنه درسته؟

shahriyar3
یک شنبه 26 آبان 1392, 16:53 عصر
بله درسته . در واقعا شما باید بدونید که از input چه مقداری رو به عنوان ورودی میخواید دریافت کنید .
مثلا از فیلد سن یک عدد مثبت 2 رقمی میخواید و...
بر اساس اون ورودی ها رو فیلتر کنید و اجازه ورود داده های غیر مرتبط و ندین

mehsaa
یک شنبه 26 آبان 1392, 16:57 عصر
پس کلا با هر زبانی میشه کد مخرب برای ورودی ها ایجاد کرد؟