اللهم لك الحمد ، ومنك الفرج ، واليك المشتكي ، وأنت المستعان ، ولا حول ولا قوة الا بك ..
 
  الصحيفة التقنية  | الصفحة الرئيسية  | مركز تحميل مطور  | استخدم ختم مطور  | قوِ موضوعك هام |  أعلن في مُطِّورْ   | شرح السي بانل جديد |  افحص البيج رانك  | دعم فني مجاني RSS Facebook twitter Youtube




العودة   مطور Mtwer > أقسام تطوير المواقع > قسم لغات البرمجة وبرامج تصميم المواقع > لغات برمجة مواقع PHP, ASP, Java Script, Perl


لغات برمجة مواقع PHP, ASP, Java Script, Perl دورات، دروس، نقاشات، وتبادل خبرات في كلاً من php asp java scripts perl وغيرها.

عزيزي المطور ابتعد عن النقل، ولتكن مواضيعك جديدة وقيمة تعبر عن إبداعك وتميزك
إضافة رد
 
LinkBack أدوات الموضوع انواع عرض الموضوع
  #1  
قديم 01-03-2011, 07:54 PM
الصورة الرمزية haysem
مطور خبير
الرتبةالرتبةالرتبةالرتبة
 

haysem يستحق التميز

بيانات موقعي :
إسم الموقع :
اصدار المنتدى :
حصرى : النماذج فى php + دوال الحماية + دوال التحقق من المدخلات

بسم الله الرحمن الرحيم

الأنترنت لا يعتبر وسيلة لنشر المعلومات فقط ولكن أيضا وسيلة لجمع المعلومات والبيانات من المستخدمين
كل ذلك يتم عن طريق أستخدام النماذج أو الفورم Form
ولا يخلو أى سكربت من أستخدام النماذج كما فى المنتديات


عملية أستخدام الفورم تتكون من جزأين

الجزء الأول : يقوم الفورم بجمع البيانات من المستخدم وأرسالها ألى السيرفر
الجزء الثانى :يقوم السيرفر بمعالجة البيانات الواردة من الفورم


الجزء الأول : بداخل html

كود PHP:
<form action="login.php" method="post">
</
form
الفورم يكون له وسمين action ونكتب به الصفحة التى يتم الذهاب أليها عند ضغط زر submit
والجزء الثانى الطريقة المستخدمة فى عملية النقل وهناك نوعان منها get , post

get ترسل المعلومات بدون تشفير وتكون ظاهرة فى المتصفح
post ترسل المعلومات مشفرة ولا تظهر فى المتصفح

الأن نضع بداخل الفورم مربع نصى وزر submit
كود PHP:
<input name="username" type="text" />
<
input name="submit" type="submit" value="log" /> 
ويكون الكود كامل بهذا الشكل ونسميه test.php

كود PHP:
<form action="login.php" method="post">
<
input name="username" type="text" />
<
input name="submit" type="submit" value="log" />
</
form
وتكون الصفحة بالشكل التالى



الأن ننتقل ألى الجزء الثانى وهو أستقبال البيانات ومعالجتها
يتم أستقبال البيانات المرسلة فى php عن طريق
كود PHP:
$_POST['email'
حيث بداخلها يتم وضع أسم المربع النصى المراد أستقباله
ويمكن تخزينه بداخل متغير والتعامل معه كمتغير عادى


كود PHP:
$username $_POST['username'] ; 
ونقوم بعرضه بواسطة echo ويكون الكود كامل بهذا الشكل

كود PHP:
<?php
//http://www.mtwer.com
$username $_POST['username'] ;
echo 
"Your Name Is ".$username;
?>
والأن نقوم بالتجربة
نفتح صفحة test.php من خلال السيرفر عن طريق http://localhost/test.php
ثم نقوم بكتابة كلمة mtwer ونضغط زر submit
الأن سيتم نقلنا ألى صفحة login.php





ننتقل ألى جزء أخر وهو التحقق من البيانات المدخلة
وهذه لها فائدتين
1.حماية الموقع من أكواد Html ومن ثغرات مثل sql ingection و Cross-Site Scripting
2.لو عندنا خانة لرقم التليفون التأكد من أن المدخل رقم هاتف وليس متغير نصى


أولا دوال الحماية

لدينا دالتين رئيستين فى مجال الحماية
كود PHP:
htmlentities($string); 
ووظيفتها تقوم بتحويل أكواد html ألى رموز معينة يفهمها المتصفح ويعرضها كأكواد هتمل
بدلا من تنفيذها
هذه الدالة لها خمس حروف تعتبرهم من المحظورات كالتالى
وتكون الصفحة بالشكل التالى




تجربة قبل وبعد الدالة
فى السكربت المستخدم فى الأعلى سنضع فى المربع النصى القيم التالية
كود بلغة HTML:
<body bgcolor="red">mtwer
ونضغط زر submit




سنجد أن الخلفية تلونت باللون الاحمر وأصبح شكلها




ولعلاج هذه المشكلة نستخدم دالة htmlentities
ونعدل كود صفحة login.php ليكون كالتالى

كود PHP:
<?php
//http://www.mtwer.com
$username $_POST['username'] ;
$username=htmlentities($username);
echo 
"Your Name Is ".$username;
?>
ونجرب بعد أستخدام الدالة




نلاحظ أنه تم تحويل كود html ألى الرموز الغريبة التى يعرضها المتصفح ولا ينفذها


الدالة الثانية
كود PHP:
$username=strip_tags($username); 
وهذه تختلف عن الدالة الاولى فى أنها تقوم بحذف أكواد html بشكل كامل
بعد تغيير الكود فى صفحة login.php ألى


كود PHP:
<?php
//http://www.mtwer.com
$username $_POST['username'] ;
$username=strip_tags($username);
echo 
"Your Name Is ".$username;
?>

والتجربة تكون النتيجة كالتالى




ثانيا دوال التحقق والتأكد من صحة المدخلات
ويكون شكلها كالتالى


كود PHP:
filter_var($username,FILTER TO BE APPLIED
وهذه الدالة تأخد قيمتين

القيمة الاولى وهى أسم المتغير
القيمة الثانية وهى الفلتر الذى يتم تطبيقه


سنأخذ مثال أولا لتوضيح الفكرة ثم نذكر أنواع الفلترات المتاحة
مثالنا هو عبارة عن دالة للتحقق من المدخل ألى المربع النصى والتأكد من كونه أيميل
قم بتعديل الكود الموجود فى صفحة login.php ألى التالى


كود PHP:
<?php
//http://www.mtwer.com
$email $_POST['username'] ;
if (
filter_var($email,FILTER_VALIDATE_EMAIL))
{
    echo 
"Your email Is ".$email;
}
else
{
    echo 
"You Enter Invalid Email !";
}
?>
شرح الكود
عبارة عن قاعدة if
أذا تحقق الشرط وهو كان المدخل أيميل
يتم طباعة الجملة أيميلك كذا
وأذا لم يتحقق يتم طباعة أيميلك خاطئ


والأن نجرب كتابة أسم عادى مثلا mtwer
تكون النتيجة




ونغير ما كتبناه فى المربع النصى ألى mtwer@mtwer.com
تكون النتيجة




الأن نستعرض باقى الفلترات المتاح أستخدامها




الأن بقى أخر جزء حتى تكون لا تحتاج اى شئ فى الفورم
وهو ماذا لو لم يكن مربع نصى بل نوع يمكنك من عمل عدة أختيارات
كيف سيتم التعامل معها

الجواب : يتم التعامل معها كمصفوفة array

مثال عدل كود صفحة test.php كالتالى


كود بلغة HTML:
what language do you know
<form action="login.php" method="post">
<select name="languages[]" multiple="multiple">
<option value="php">php</option>
<option value="javascript">JavaScript</option>
<option value="css">CSS</option>
<option value="AJAX">AJAX</option>
</select>
<input name="submit" type="submit" value="log" />
</form>
ويكون شكلها كالتالى



ونقوم بتعديل الكود فى صفحة login.php
ليصبح كالتالى

كود PHP:
<?php
echo "<h3>You choose the following languages:</h3><br />";
foreach(
$_POST['languages'] AS $language) {
$language htmlentities($language);
echo 
"$language<br />";
}
?>
وبعد ضغط زر log
نذهب ألى صفحة login.php
ويكون شكلها كالتالى




بوصولك هذا المكان تكون قد تعلمت
  • التعامل مع النماذج فى php
  • استخدام دوال الحماية
  • التحقق من المدخلات فى php



التوقيع :

عضو جديد في معهد مطور التطويري - Mtwer.com/vb
يمكنك تعديل التوقيع من خلال لتوحة تحكمك الخاصة عبر الرابط التالي : لوحة التحكم

رد مع اقتباس
قديم 02-03-2011, 03:29 PM   رقم المشاركة : [2]
:: + مشرف قسم seo و أرشفة المواقع + ::
الرتبة الرتبة الرتبة الرتبة
الصورة الرمزية الصيف احلى
 

الصيف احلى يستحق التميز

بيانات موقعي :
اصدار المنتدى : لا أملك منتدى
جزاك الله خيراً

وفي ميزآن حسناتكـ يارب


التوقيع: انتظرونا بدورة مطور للربح من النت قريبا ويوميا
منتدى اسلامى يحتاج دعمكم
http://www.worldarabnew.com
http://www.worldarabnew.com
الصيف احلى غير متواجد حالياً   رد مع اقتباس
قديم 02-03-2011, 03:32 PM   رقم المشاركة : [3]
مُطوِّرْ مسؤول
الرتبة الرتبة الرتبة الرتبة الرتبة الرتبة الرتبة الرتبة
الصورة الرمزية مُجَاهِد
 

مُجَاهِد يستحق التميز

بيانات موقعي :
إسم الموقع : مطور
اصدار المنتدى : VB 3.8.9
موضوع مميز .. وتستاهل التقييم ..

وفقك الله ..


التوقيع: حصري لمطور [Product] منع أعضاء محددين من تعديل البريد // كلمة المرور

حصري لمطور [Product] منع تعديل المشاركات الا بعد عدد من المشاركات

حصري لمطور [Product] أخبار المنتدى المتحركة بالجى كويري jQuery

حصري لمطور [Product] منع إضافة الكلمات الدلالية tag الا بعد عدد من المشاركات

حصري لمطور [Product] اعلانات ادسنس أو أي اعلان في الملف الشخصي للعضو

[ Product ] منع رفع المواضيع - منع الردود المتتالية لنفس العضو - الإصدار 2 الثاني (حصري لمطور mtwer)

[ Product ] منتج شريط جريدة الرياض الإخباري ! (حصري لمطور mtwer)

حصري لمطور [ Product ] الروابط الإضافية في الفوتر Footer

بو مجاهد
مُجَاهِد غير متواجد حالياً   رد مع اقتباس
قديم 03-03-2011, 12:33 AM   رقم المشاركة : [4]
مطور خبير
الرتبةالرتبةالرتبةالرتبة
الصورة الرمزية haysem
 

haysem يستحق التميز

بيانات موقعي :
إسم الموقع :
اصدار المنتدى :
شكرا لك أخ مجاهد على التثبيت
وأن شاء الله مواضيع أفضل قادمة


التوقيع:

عضو جديد في معهد مطور التطويري - Mtwer.com/vb
يمكنك تعديل التوقيع من خلال لتوحة تحكمك الخاصة عبر الرابط التالي : لوحة التحكم

haysem غير متواجد حالياً   رد مع اقتباس
قديم 17-03-2011, 07:30 PM   رقم المشاركة : [5]
مطور محترف
الرتبةالرتبةالرتبة
الصورة الرمزية hasano
 

hasano يستحق التميز
إرسال رسالة عبر مراسل MSN إلى hasano

بيانات موقعي :
إسم الموقع :
اصدار المنتدى :
جزاكم الله خيـــــرا


التوقيع:

عضو جديد في معهد مطور التطويري - Mtwer.com/vb
يمكنك تعديل التوقيع من خلال لتوحة تحكمك الخاصة عبر الرابط التالي : لوحة التحكم

hasano غير متواجد حالياً   رد مع اقتباس
قديم 27-03-2011, 05:31 PM   رقم المشاركة : [6]
مطور خبير
الرتبةالرتبةالرتبةالرتبة
الصورة الرمزية haysem
 

haysem يستحق التميز

بيانات موقعي :
إسم الموقع :
اصدار المنتدى :
مشكور hasano على المرور


التوقيع: في كل مره تخدم فيها إنسانا .. اغفر له مقدما نكرانه للجميل
haysem غير متواجد حالياً   رد مع اقتباس
إضافة رد

العلامات المرجعية

الكلمات الدلالية (Tags)
forms, دوال الحماية, سكربت, نماذج

مواضيع جديدة في قسم لغات برمجة مواقع PHP, ASP, Java Script, Perl

أدوات الموضوع
انواع عرض الموضوع

ضوابط المشاركة
لا تستطيع إضافة مواضيع جديدة
لا تستطيع الرد على المواضيع
لا يمكنك اضافة مرفقات
لا يمكنك تعديل مشاركاتك

BB code متاحة
كود [IMG] متاحة
كود HTML معطلة
Trackbacks are متاحة
Pingbacks are متاحة
Refbacks are متاحة

الانتقال السريع




Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.5.2
new notificatio by 9adq_ala7sas
الحقوق محفوظة لكل المطورين والمواقع العربية

Security team


المعهد غير مسؤول عن أي اتفاق تجاري أو تعاوني بين الأعضاء
فعلى كل شخص تحمل مسؤولية نفسه إتجاه مايقوم به من بيع وشراء وإتفاق وأعطاء معلومات موقعه
التعليقات المنشورة لا تعبر عن رأي معهد مطور ولا نتحمل أي مسؤولية قانونية حيال ذلك ( ويتحمل كاتبها مسؤولية النشر )

جميع الأوقات بتوقيت GMT +3. الساعة الآن 11:34 AM.