<?xml version="1.0" encoding="utf-8"?>
	<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
	<channel>
		<title>مدونة سلام</title>
		<link>http://www.salamm.com/</link>
		<language>ar-sy</language>
		<description>مدونة سلام ، مدونة شخصية تحوي مواضيع منوعة</description>
		<pubDate>Fri, 22 Feb 2008 11:00:00 GMT</pubDate>
		<generator>Notepad++</generator>
		<managingEditor>salamj@gmail.com</managingEditor>
		<webMaster>salamblog@gmail.com</webMaster>
		
		<item>
			<title>تفعيل DOM في PHP</title>
			<link>http://www.salamm.com/8</link>
			<description>بدأت العمل بمشروعي لهذا العام في الجامعة و هو &lt;acronym title=&quot;Content Management System&quot;&gt;CMS&lt;/acronym&gt;.&lt;br /&gt;
الفكرة تختلف عن الأنظمة الموجودة المفتوحة المصدر قليلا ، فأنا أعتمد بشكل كبير على XML في إنشاء بريمجات أو وحدات Modules.&lt;br /&gt;
هو في الحقيقة نواة أو Core يتحمل فيما بعد تركيب بريمجات حسب الرغبة ، فكرتي أن هذا الـCore يجب ألا يحوي أي شيء مسبق سوى مدير يمكنه إضافة و إزالة بريمجات ، حتى حسابات المستخدمين ستكون module.&lt;br /&gt;
&lt;br /&gt;
المهم ما أود الحديث عنه هو كيفية التعامل مع الـ DOM في PHP :&lt;br /&gt;
&lt;br /&gt;
الحصول على ملف php_domxml.dll  و وضعه في المسار extensions &lt;br /&gt;
&lt;br /&gt;
تعديل ملف php.ini بالشكل :&lt;br /&gt;
&lt;br /&gt;
إزالة الـ ; من العبارة&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;code&quot;&gt;&lt;span&gt;&lt;span style=&quot;color:red;&quot;&gt;;&lt;/span&gt;extension=php_domxml.dll&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
و إن لم تكن موجودة إضافتها &lt;br /&gt;
&lt;div class=&quot;code&quot;&gt;&lt;span&gt;extension=php_domxml.dll&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
في المكان المخصص لذلك ، يمكنك البحث عن extension و ستجد الأسطر :&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;code&quot;&gt;&lt;span&gt;extension=php_pdo.dll&lt;/span&gt;&lt;br /&gt;
&lt;span&gt;...&lt;/span&gt;&lt;br /&gt;
&lt;span&gt;extension=php_sqlite.dll&lt;/span&gt;&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
أعد إقلاع السيرفر و المتصفح و الآن يمكنك إنشاء كائن Object DOM &lt;br /&gt;
&lt;div class=&quot;code&quot;&gt;&lt;span&gt;&lt;span style=&quot;color:#000080;&quot;&gt;$doc&lt;/span&gt; &lt;b&gt;=&lt;/b&gt; xmldoc();&lt;/span&gt;&lt;/div&gt;</description>
			<pubDate>Tue, 22 Apr 2008 00:00:00 +0000</pubDate>
<category>أفكار</category>
<category>من حياتي</category>
<category>مجتمع</category>

			<comments>http://www.salamm.com/8#comments</comments>
			<dc:creator>salam</dc:creator>

		</item>
		
		<item>
			<title>أمن المواقع 1</title>
			<link>http://www.salamm.com/8</link>
			<description>تعتمد المواقع الديناميكية على تصرفات الزوار بشكل أساسي في ديناميكيتها ، فإرسال نموذج أو طلب صفحة بواسطة get يلعب الدور الأساسي في محتوى صفحة المعالجة على سبيل المثال طلب صفحة بواسطة الـ get على سبيل المثال لتكن view.php?pid=5 نلاحظ من هذا العنوان أن الصفحة view.php تستخدم القيمة المسندة للبارامتر pid لتعرض محتويات معينة بناءا على قيمته.&lt;br /&gt;
لا يمكن الثقة بزوار مواقعك البعض لديهم هواية اكتشاف ثغرات المواقع و البعض يهوى تخريب أي موقع بغض النظر عن محتواه لإظهار سأحاول في هذا الموضوع القصير أن أشير إلى بعض الاحتياطات الواجب اتخاذها لأمن المواقع بما يندرج تحت اسم input validation.
&lt;br /&gt;
باختصار شديد للفكرة كلها ، يجب عليك أن تراقب أي شيء يرسله زائر سواء عبر post أو get أو cookie أو ...&lt;br /&gt;
&lt;b&gt;مشكلة تفعيل الـ register_globals&lt;/b&gt;&lt;br /&gt;
في بعض نسخ PHP ستجد أن register_globals=on و هذا يعني أن أي بارامتر مرسل يمكن الوصول إليه كمتحول في الصفحة بنفس الاسم، مثلا في المثال السابق سيمكنك أن تصل لقيمة pid بكتابة $pid ، ما المشكلة هنا ؟
المشكلة أن $pid تشير إلى القيمة المسندة لـpid مرسل بواسطة get أو post أو cookie أو غير ذلك.
طيب ، وما المشكلة أيضا أكرر التساؤل ؟!
لنأخذا المثال التالي فهو يوضح الفكرة
&lt;div class=&quot;code&quot;&gt;
if (isAdmin()){
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;$viewOpts = true;
&lt;br /&gt;
}
&lt;/div&gt;
على فرض أن التابع isAdmin يختبر كون الزائر الحالي هو مدير اعتادا على قراءة ملف cookie و لنفرض أنه أعاد قيمة false ماذا سيحدث ؟ حاليا لا شيء فقد اختبر كون المتصفح الحالي مدير و فشل ، لكن ماذا يحدث لو مررنا القيمة viewOpts=true عبر الـURL ( كأسلوب GET ) - أفترض هنا أن register_globals=on افترض أنك فهمت ما أرمي إليه.&lt;br /&gt;
لحل هذه النقطة و باختصار، استخدم $_POST و $_GET و $_COOKIE و $_ENV و $_SERVER للوصول إلى متحولات كل منهم.
&lt;br /&gt;أكمل الموضوع بموضوع لاحق حول اختبار كل نوع و حلول مقترحة &lt;img src=&quot;http://www.salamm.com/images/smiles/39.gif&quot; alt=&quot;&quot; style=&quot;vertical-align: middle;&quot; /&gt; .&lt;br /&gt;
</description>
			<pubDate>Tue, 19 Feb 2008 00:00:00 +0000</pubDate>
<category>أفكار</category>
<category>من حياتي</category>
<category>مجتمع</category>

			<comments>http://www.salamm.com/8#comments</comments>
			<dc:creator>salam</dc:creator>

		</item>
		
		<item>
			<title>نظام التدوين salamBlog</title>
			<link>http://www.salamm.com/8</link>
			<description>نظام التدون المستخدم هنا في مدونتي هو من برمجتي و سميته salamBlog.&lt;br /&gt;
هذه أول مدونة لي على الانترنت و كنت قد تعاملت مسبقا مع أنظمة تدوين كثيرة و لكن في النهاية قررت برمجة مدونتي بنفسي ، لماذا ؟&lt;br /&gt;
أريدها خفيفة ، سريعة التصفح ، آمنة ، لها خصوصية ، صديقة لمحركات البحث ، أفهمها جدا بحيث أتمكن دائما من تطويرها حسب رغبتي و و لأن أغلب أنظمة التدوين التي تعاملت معها كنت أرى فيها أشياء تنقصني و أشياء إضافية.&lt;br /&gt;
ما هي ميزات نظام التدوين المستخدم هنا :&lt;br /&gt;
1 - خفيف جدا.&lt;br /&gt;
2 - آمن.&lt;br /&gt;
3 - تصنيفات Tags.&lt;br /&gt;
4 - صديقة لمحركات البحث.&lt;br /&gt;
5 - إدارة عالية الديناميكية.&lt;br /&gt;
6 - سهولة تغيير التصميم و التطوير.&lt;br /&gt;
7 - مراعية للمعايير القياسية بنسبة كبيرة جدا.&lt;br /&gt;
8 - إمكانية إضافة CSS و javascript في رأس الصفحة عند إضافة موضوع بالإضافة إلى الـ keys و الـ description 
...&lt;br /&gt;
&lt;br /&gt;
نواقص سأكملها :&lt;br /&gt;
&lt;br /&gt;
1 - &lt;del&gt;RSS&lt;/del&gt; Atom&lt;br /&gt;
2 -&lt;del&gt; التعليقات ( حاليا لا يمكن التعليق و ربما لن أضيف هذه الميزة).&lt;/del&gt;&lt;br /&gt;
4 -&lt;del&gt; صور ، معرض صور خفيف ملائم.&lt;/del&gt; استخدمت فلكر.&lt;br /&gt;
5 - ما بعرف شو بيطلع معي أفكار...&lt;br /&gt;
&lt;br /&gt;
هذا النظام للتدوين ليس مفتوح المصدر إنه فقط للاستخدام الشخصي ، قد أعمل في المستقبل على تطويره أكثر و نشره كمنتج مجاني مفتوح المصدر.</description>
			<pubDate>Sat, 02 Feb 2008 00:00:00 +0000</pubDate>
<category>أفكار</category>
<category>من حياتي</category>
<category>مجتمع</category>

			<comments>http://www.salamm.com/8#comments</comments>
			<dc:creator>salam</dc:creator>

		</item>
		
	</channel>
	</rss>