السلام عليكم ورحمة الله وبركاته
اسعد الله صباحكم بالخير والسرور
برمجة اضافة للمنتدى تتيح للأعضاء اضافة معلومات معينه
ولكن اود السؤال عن الدالة التي يجب تمرير المدخلات
عليها للأمان قبل ادخالها لقاعدة البيانات في vBulletin
وشكرا لكم![]()
السلام عليكم ورحمة الله وبركاته
اسعد الله صباحكم بالخير والسرور
برمجة اضافة للمنتدى تتيح للأعضاء اضافة معلومات معينه
ولكن اود السؤال عن الدالة التي يجب تمرير المدخلات
عليها للأمان قبل ادخالها لقاعدة البيانات في vBulletin
وشكرا لكم![]()
أهلا ..
بعد قرائتي للكود وجدت انه يستخدم دالتين .. ليتلقف المتغيرات القادمه من الطلب
الاولى : clean_array_gpc( $global,$variable)
وتكتب هكذا
كود مقتبس من newthread.php
ومعنى p هناكود:$vbulletin->input->clean_array_gpc('p', array( 'variable' => type, .......... )); مثل $vbulletin->input->clean_array_gpc('p', array( 'wysiwyg' => TYPE_BOOL, 'message' => TYPE_STR, .......... ));
_post
وtype = نوع المتغير
variable = مكانه
ولكل نوع حرف .. وهو الحرف الاول منه
الثانيه هي :clean_gpc* @param string Either, g, p, c, r or f (corresponding to get, post, cookie, request and files)
وهي للمتغير الفردي
مثل
بنفس الترتيب السابق ..كود:$vbulletin->input->clean_gpc('p', 'posthash', TYPE_NOHTML);
حيث p = _post
posthash = إسم المتغير
TYPE_NOHTML = نوعه
ونوعه هي اساس التنظيف
وأيضاً هناك دوال اخرى مثل clean
ولكنها لمتغيرات العاديه أي غير مجلوبه عن طريق post ...etc ..
المهم لإستخدام المتغير بعد تنظيفه تنستخدم
وهنا نعرف الانواع ومعانيهاكود:$vbulletin->GPC['إسم المتغير'] مثل $vbulletin->GPC['wysiwyg']
كود:define('TYPE_NOCLEAN', 0); // no change define('TYPE_BOOL', 1); // force boolean define('TYPE_INT', 2); // force integer define('TYPE_UINT', 3); // force unsigned integer define('TYPE_NUM', 4); // force number define('TYPE_UNUM', 5); // force unsigned number define('TYPE_UNIXTIME', 6); // force unix datestamp (unsigned integer) define('TYPE_STR', 7); // force trimmed string // define('TYPE_NOTRIM', 8); // force string - no trim define('TYPE_NOHTML', 9); // force trimmed string with HTML made safe define('TYPE_ARRAY', 10); // force array define('TYPE_FILE', 11); // force file define('TYPE_BINARY', 12); // force binary string define('TYPE_NOHTMLCOND', 13); // force trimmed string with HTML made safe if determined to be unsafe
للإستزاده
إفتح ملف class_core.php
واعذرنا على اللخبطه
ونشوف الشباب ..
__________________
إلى اللقاء سوالف , وآسف على الإزعاج...
moffed.com , kleeja.com/tour/ar ,phpbbarabia.com
السلام عليكم ..
ماقصر الاخ saanina
الافضل تراجع المانيول الخاص بالفبلوتين وفيه شرح وافي جدا ..
vBulletin Manual
شكرا لكم على الشرح
لكن اود ان تدخل البيانات احرف +ارقام فقط بدون علامات اخرى مثل html
استخدمت التالي
وهذي تلغي عمل الاوسمهكود PHP:
$vbulletin->input->clean_gpc('p', 'message', TYPE_NOHTML);
لكن كيف الغي ضهور الاوسمه؟
وشكرا لكم
السلام عليكم ..
اخوي رومنسي ..
على حسب ما فهمت من كلامك انك تبي تزيل التاقز من النص المدخل .
استخدم دالة strip_tags لإزالة الاوسمه ..
XXX هو المدخل المقصودكود PHP:
$db->escape_string(XXX);
شكراً لك
__________________
تابعني على Twitter
ممتاز .. عرفت ما تحتاج..
مذكور هالشي في المانيول .
جوانيxمدمن نت
جزاكم الله خير على المساعده^_^