باعتباري مطور PHP، يُطلب مني أحيانًا إنشاء صندوق صيحات. إذا حدث لك نفس الشيء، فإليك دليل سريع. من الواضح أنك تريد إضافة CSS الخاص بك إليه أعلاه، ولكن إليك الفكرة الأساسية.
نحتاج إلى جدول قاعدة بيانات MySQL وثلاثة ملفات PHP.
أولاً، نحتاج إلى ملف لحفظ معلومات قاعدة البيانات
---الملف رقم 1:mysql.inc.php---
<?php
#مثال على الصراخ ببساطة
# اسم الملف:mysql.inc.php
# الوصف: ملف للاحتفاظ بمعلومات قاعدة البيانات.
$host ='localhost';
$user ='database_user_name';
$password='database_user_password';
$name ='database_name';
?>
قم بإنشاء جدول بيانات بأربعة حقول. ربما لم يكن لديك ملف SQL هذا من قبل، قم بإنشاء ملف PHP "install.php". بعد استخدام هذا الملف مرة واحدة، تذكر حذفه!
- الملف رقم 2: install.php -
<?php
#مثال على الصراخ ببساطة
# اسم الملف: install.php
# الوصف: إنشاء جدول قاعدة البيانات
// تضمين ملف معلومات قاعدة البيانات
include("mysql.inc.php");
// الاتصال بقاعدة البيانات
$connection= @mysql_connect($host,$user,$password) or die(mysql_error());
$db= @mysql_select_db($name,$connection) أو die(mysql_error());
// إذا كان لدينا بالفعل جدول يسمى "shouts"، فنحن بحاجة إلى حذفه أولاً
$sql='إسقاط الجدول في حالة وجوده `صيحات`';
$result= @mysql_query($sql,$connection) أو die(mysql_error());
// الآن تأكد من عدم وجود جدول بنفس الاسم، وقم بإنشائه
$sql='إنشاء جدول `صيحات' (
`id` int(11) ليس زيادة تلقائية فارغة،
`الطابع الزمني` الطابع الزمني ليس فارغًا افتراضيًا CURRENT_TIMESTAMP،
`shoutby` varchar(50) الافتراضي NULL،
`يصرخ` varchar(50) الافتراضي NULL،
المفتاح الأساسي `id` (`id`)
) TYPE=MyISAM AUTO_INCREMENT=1';
echo'إنشاء جدول: 'صيحات'....';
// اتصال وثيق
$result= @mysql_query($sql,$connection) أو die(mysql_error());?>
<أتش تي أم أل>
<الرأس>
<title>ببساطة الصراخ - التثبيت</title>
</الرأس>
<الجسم>
<br />
اكتملت عملية التثبيت. يرجى حذف كافة ملفات التثبيت من الخادم الخاص بك على الفور. يحتوي هذا البرنامج على ملفات التثبيت التالية:<br />
<br />
1) install.php<br />
<br />
<br />
<!-- يمكنني فقط إرسالهم إلى ملف Index.php تلقائيًا، ولكن بعد ذلك سيتساءلون عما إذا كان قد تم إنشاؤه بشكل صحيح أم لا -->
انقر <a href="index.php">هنا</a> للبدء.</html>
هذا هو الملف الرئيسي:
---الملف رقم 3:index.php---
<؟
#مثال على الصراخ ببساطة
# اسم الملف: Index.php
# الوصف: الصفحة الرئيسية لعرض صيحاتنا.
// تحتوي على معلومات قاعدة البيانات
include_once("mysql.inc.php");
// الاتصال بقاعدة البيانات
$connection= @mysql_connect($host,$user,$password) أو die(mysql_error());
$db= @mysql_select_db($name,$connection) أو die(mysql_error());
?>
<أتش تي أم أل>
<الرأس>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"><style type="text/css">
<!--
الجسم، د، ث {
عائلة الخطوط: Verdana، Arial، Helvetica، sans-serif؛
حجم الخط: 12 بكسل؛
}
-->
</نمط><الجسم>
<div style="width:500px;height 400px; الحدود: أخدود رفيع #519554;">
<؟
// عرض آخر 10 رسائل، قم أولاً بتهيئة العداد
$counting=0;
// نحتاج إلى عداد لأنني أريد عرض صيحاتنا بترتيب ASC
// (مثل غرفة الدردشة)
$sql=mysql_query("SELECT * FROM `shouts`");
بينما($data=mysql_fetch_array($sql)){
// يحسب كل صف
$counting=$counting+1;
} //end while
// إذا عاد العدد أكبر من 10، فإننا نختار الأخير
// 10 صيحات للعرض
إذا($counting>10){.
$countlessten=$counting-9;
$sql=mysql_query("SELECT * FROM `shouts` ORDER BY `shouts`.`id` ASC LIMIT $countlessten,10");
}آخر{
// وإلا فلا يهم، هناك أقل من 10!
$sql=mysql_query("SELECT * FROM `shouts` ORDER BY `shouts`.`id` ASC LIMIT 10");
}
بينما($data=mysql_fetch_array($sql)){
// حقل الطابع الزمني الخاص بي في قاعدة البيانات عديم الفائدة بالنسبة لي إلا إذا
// أقوم بتحليله، يقوم الكود التالي بتحليل الطابع الزمني إلى الأشياء
//يمكن استخدامه.
$timestamp=$data['timestamp'];
$postedyear=substr($timestamp,0,4);
$postedmonth=substr($timestamp,5,2);
$postedday=substr($timestamp,8,2);
$postedtime=substr($timestamp,11,5);
$newpostedtime="";
$nomilitary=substr($postedtime,0,2);
// الساعة أكبر من 12، لذا نحتاج إلى الرجوع إلى 1-12 و
// أضف "مساء"
إذا($nomilitary>=13){
$nomilitary=$nomilitary-12;
$newpostedtime=$nomilitary;
$newpostedtime.=":":;
$newpostedtime.=substr($postedtime,3,2);
$newpostedtime.="مساء";
}
إذا($newpostedtime!=""){
$postedtime=$newpostedtime;
}آخر{
$postedtime.="صباحا";
}
// الآن بعد أن أصبح لدينا الوقت، فلنبدأ بالصيحة والمصيح
$shoutby=$data['shoutby'];
$shout=$data['shout'];
echo$postedmonth."/".$postedday."/".$postedyear." في ".$postedtime." - <strong>".$shoutby." قال: </strong>".$shout."<br <br>";
// يشبه: 12/1/2008 الساعة 5:02 مساءً - قال جوش: يو يو يو!
}
// يوجد أدناه نموذج HTML لإنشاء الصيحات
?>
<نموذج معرف = "newshout" اسم = "newshout" عمل = "newshout.php" طريقة = "post"> <input name = "shoutby" type = "text" id = "shoutby" onClick = "javascript:this.value =''" value="أدخل اسمك هنا" size="24" maxlength="50" />
<br><br><input name = "shout" type = "text" id = "shout" onClick = "javascript:this.value =''" value = "Click & Shout size = "24" maxlength = "50" />
<br><br><input id="submit" name="submit" type="submit" value="Shout /></form>
</div>
</الجسم>
</html>
وأخيرًا، نحتاج إلى ملف PHP للتعامل مع النموذج
-- الملف رقم 4: newsout.php --.
<؟
#مثال على الصراخ ببساطة
# اسم الملف: newsout.php
# الوصف: معالجة نموذج HTML على ملف Index.phpand إعادة التوجيه.
// احصل على اسم الشخص الذي ترك الرسالة
$shoutby=$_POST['shoutby'];
إذا($shoutby==أدخل اسمك هنا"||$shoutby==""){
//إذا لم يتم إدخال أي اسم
$shoutby="زائر";
}
إذا($_POST['يصرخ']){
// رسالة
إذا($_POST['يصرخ'] !=انقر واصرخ!){
// لم يصرخوا بالرقم الافتراضي، لذا تابع المعالجة
$shout=$_POST['shout'];
// استبدل "<" و">" لإيقاف المتسللين
$shout=str_replace("<"،"،$shout);
$shout=str_replace(">"،"،$shout);
// يحتوي على معلومات البيانات
include_once("dbaccess.php");
// الاتصال بقاعدة البيانات
$connection= @mysql_connect($host,$user,$password) أو die(mysql_error());
$db= @mysql_select_db($name,$connection) أو die(mysql_error());
// أدخل معلومات الرسالة في قاعدة البيانات
$sql="INSERT INTO `shouts`(`shoutby`,`shout`) VALUES('$shoutby','$shout')";
// أغلق الاتصال
$result= @mysql_query($sql,$connection);
}
}
?>
<أتش تي أم أل>
<الرأس>
</الرأس>
<body onLoad="window.open('index.php','_self')">
</الجسم>
</html>