الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كود التبليغ

مغلق
بدأه phox في 15 يوليو 2007 · 7 رد · 1,079 مشاهدة · في منتدى تطوير المواقع بـ PHP
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

الــسلام عليكـــم ...

شــلونـكــم شباب إن شاء الله تمــام :D دووووووووووووووووووووم الله لا يغير عليكـــم

"" كــــود التبــليـــغ ""

درســـ

غالباً يتم وضع كود التبليغ في ملف تركيب السكربت install.php ..

و بالطبع بهذا الملف يتم زراعة قاعدة البيانات على الغالب و من ثم بعد تركيب القاعدة يتم عمل كود التبليغ ..

لذا فالسكربتات التي تحتاج لزراعة القاعدة يدوياً غالباً لا يكون فيها كود تبليغ ..

و التبليغ غالباً يكون عن رابط الموقع الذي قام بتركيب السكربت .. و يتم ذلك عن طريق الإستعلام بمتغيرات و غالباً تستخدم المتغيرات التالية :

- $HTTP_REFERER و هو يقوم بجلب الصفحة الأخيرة التي فتحت بالمتصفح قبل تنفيذ الكود ..

- $HTTP_HOST و هو يقوم بجلب رابط الموقع ..

- $PHP_SELF يقوم بجلب رابط الملف ..

كما أنه بعض المبرمجين يضع في ملف الكونفج متغير $SITEURL مثلاً لكي يتم وضع رابط الموقع من قبل المستخدم و من ثم عند التبليغ يتم إرسال ما كتبه المستخدم في هذا المتغير ..

و لعمل كود تبليغ في السكربت الخاص بك هناك طريقتين حسب علمي و قد تكون هناك طرق أجهلها حالياً ..

كثيرة أفضل

# الطريقة الأولى /

التبليغ عن طريق البريد الإلكتروني و هي من أسهل الطرق و تعتمد على أمر إرسال بريد إلكتروني بلغة php و هي :

mail("email@domain.ltd","subject","message");

و طبعاً كما تلاحظون هناك خانة لكتابة البريد الإلكتروني الذي ترسل الرسالة له و كذلك موضوع الرسالة و محتوى الرسالة ..

طبعاً في هذه الطريقة يتم إستبدال البريد الإلكتروني السابق ببريد المبرمج و قد لا يهم كتابة موضوع للرسالة حتى لا يكون لافت للإنتباه .. يمكن وضع رمز - أو . ..

و طبعاً يتم وضع أحد المتغيرات المذكورة سابقاً بدلاً من message ..

مثال :

mail("reda1@flashmail.com","---","$HTTP_REFERER");

و طبعاً يوضع الأمر غالباً كما ذكرنا سابقاً في ملف التركيب بعد أمر زراعة قاعدة البيانات مثلاً ..

# الطريقة الثانية /

طريقة ربما فيها قليل من الصعوبة لكنها عملية و مفيدة ..

هي تعتمد على وضع كود بسيط في ملف تركيب السكربت يقوم بفتح سكربت في موقع المبرمج طبعاً مع إرسال المعلومات المطلوبة و يتم تخزين رابط الموقع مثلاً في قاعدة بيانات السكربت الموضوع في موقع المبرمج ..

و فكرتها كالتالي :

السكربت الذي يوضع في موقع المبرمج و ستحتاج لعمل قاعدة بيانات مثل هذه :


`id` int(10) unsigned NOT NULL auto_increment,
`url` varchar(255) NOT NULL default '',
PRIMARY KEY (`id`),
KEY `id` (`id`)
) TYPE=MyISAM;
   CREATE TABLE `code` (

حسب السابق أسمينا الجدول code و هو يحتوي على حقل للرقم التسلسلي id و حقل لحفظ رابط المواقع التي قامت بتركيب السكربت و هو حقل url .. يمكن مستقبلاً و حسب إحتراف المبرمج إضافة حقول أخرى تاريخ التركيب مثلاً لن أتطرق لها بهذا الدرس لعدم أهميتها !! ..

طبعاً سنحتاج بعد هذا للسكربت الذي يقوم المبرمج بوضعه بموقعه و فيه يتم تخزين رابط موقع المستخدم بقاعدة البيانات و هو كالتالي و لنفترض أن إسمه site.php :


$dbserver="localhost";
$dbusername="";
$dbpassword="";
$dbname="code";
mysql_connect($dbserver,$dbusername,$dbpassword);
mysql_select_db($dbname);
if(isset($url)){
mysql_query("INSERT INTO code (url)VALUES('$url')");
}
?>
<?php

طبعاً كما هو ملاحظ قمنا بالسطور الأربعة الأولى بوضع كود التعرف على قاعدة بيانات ثم بالسطرين التي تلتها كود لعمل إتصال بقاعدة البيانات و في السطر السابع وضعنا شرط متعلق بأن لا تعمل الأوامر التي بداخله إلا إذا كان الرابط على الشكل site.php?url=http://www.domain.ltd مثلاً ..

و الأمر الذي بداخله هو أمر إدراج في قاعدة البيانات قيمة المتغير url و الذي سيكون رابط موقع المستخدم ..

باقي علينا كتابة الكود الذي نضعه في ملف التركيب install.php ..

   @fopen("http://localhost/code/site.php?url=http://"."$HTTP_HOST"."$PHP_SELF","r");

طبعاً كما ذكرنا يوضع هذا الكود بعد أمر زراعة قاعدة البيانات في ملف التركيب و نلاحظ فيه أمر فتح رابط و هو رابط السكربت الذي قمنا بعمله قبل قليل و الذي نضعه بموقع المبرمج و نلاحظ أن المتغير url سيحمل فيه قيمة هي عبارة عن رابط الموقع + رابط الملف بعكس الطريقة السابقة وضعنا فيها الصفحة التي سبقت تنفيذ الكود .. و طبعاً عند فتح رابط صفحة بالشكل السابق سيكون تلقائياً رابط موقع المستخدم مسجلاً فيه و من ثم يتم تخزينه بقاعدة البيانات ..

# كيف سنعرف المواقع التي تم حفظ رابطها ؟!!

إما بفتح القاعدة و قراءة محتوياتها المخزنة أو عمل سكربت يستعرض الروابط المخزنة بالقاعدة و هو كالتالي :


$dbserver="localhost";
$dbusername="";
$dbpassword="";
$dbname="code";
mysql_connect($dbserver,$dbusername,$dbpassword);
mysql_select_db($dbname);
if(isset($url)){
mysql_query("INSERT INTO code (url)VALUES('$url')");
}
if(isset($site)){
$query=mysql_query("SELECT url FROM code ORDER BY id DESC");
while($result=mysql_fetch_array($query)){
echo "$result"."
";
}
}
?>
   <?php

طبعاً هذا السكربت نفسه نفس السابق site.php لكن أضفنا عليه شرط و هو site فإذا كتب في المتصفح تم عرض الروابط المخزنة بقاعدة البيانات ..

و يمكن عرضه عن طريق الرابط :

site.php?site=show مثلاً ..

اتمنى انكم استفدتم ولووو قليل :)

تم تعديل هذه المشاركة بواسطة phox في 15 يوليو 2007 في 08:32

#2

السلام عليكم ورحمة الله و بركاته

بداية جميلة... واول مشاركة

لو كان كل الاعضاء مثلك لتغير اشياء كثيرة

d4baa0.gif
#3

مع كامل تقديري واحترامي

هل أنت كاتب الموضوع أم ناقل للموضوع؟

ارجو معاينة الرابط:

www.swalif.net/softs/swalif45/softs43345/

بالتوفيق

تم تعديل هذه المشاركة بواسطة عبدالله عيّاش في 15 يوليو 2007 في 12:01

sign3.jpg
#4

شكرا اخ عبدالله عيّاش

الرابط

http://www.swalif.net/softs/swalif45/softs43345/

لوكان الموضوع منقول يعني ان الاشياء لن تتغير ابدا

وعلى ما اظن يحذف الموضوع ان لم يكن صاحبه

تم تعديل هذه المشاركة بواسطة B.M.AbdelAziZ في 15 يوليو 2007 في 11:59

d4baa0.gif
#5

بالنسبة لي لا توجد مشكلة في نقل الفائدة من مكان إلى آخر ولكن يشترط الإشارة إلى المصدر دائما

بالتوفيق

sign3.jpg
#6

لا ينفع هاذا نوع من حمايه للبي اتش بي لأنها مفتوحة المصدر

#7

السلام عليكــــم ...

لم اقم بنقــل الموضوع

وشكــراً

#8

مشكوووووووووور على الموضوع

هذا الموضوع مغلق.

مواضيع مشابهة