الدرس الثاني
عشر..
-----
قراءة وكتابة معلومات في ملف txt
عندما لا يكون لدينا قاعدة بيانات، يجب أن نستخدم ملفات
txt عادية لحفظ المعلومات
.. في الـ
PHP، إنشاء أو قراءة معلومات
من ملف، أمر سهل! .. يوجد عدد من الدوال
- سنقوم بدراستها اليوم -
تساعدنا على عمل ذلك ..
سنقوم بإنشاء سكربت بسيط،
يحفظ (الاسم) والـ (بريد)
لمستخدمين، ومن ثم نقوم بعرضها
..
----------
- 1
الدالة
fopen()
الدالة الأساسية هي
fopen()، وهي التي تسمح بفتح
ملف؛ للقراءة، أو لإنشاءه إن
لم يكن موجوداً، أو للكتابة .. وتستخدم بهذا الشكل
تقريباً:
|
= File name & extention
اسم الملف والمراد الكتابة فيه
وامتداده ..
= mode
الطور
..
** جدول الأطوار المتاحة
**
= r
فتح وقراءة
فقط
..
= w
فتح وكتابة فقط (الدالة تقوم بإنشاء
الملف إن لم يكن موجوداً) ..
= a
فتح وقراءة فقط مع إضافة المحتويات في نهاية الملف (الدالة تقوم بإنشاء
الملف إن لم يكن
موجوداً) ..
= r+
فتح للقراءة والكتابة
..
= w+
فتح
للقراءة والكتابة (الدالة
تقوم بإنشاء الملف إن لم يكن موجوداً)
..
= a+فتح
للقراءة والكتابة مع إضافة
المحتويات في نهاية الملف (الدالة تقوم بإنشاء الملف إن
لم يكن موجوداً)
..
أمثلة:
$fp = fopen("../file.txt","r");
|
الدالة fopen إذن تسمح بفتح ملفات على الويب......
-2
إنشاء
(أو تحديث) ملف
قبل كل شيء، يجب وضع معلومات
في ملف .. يجب إذن
فتح ملف للكتابة وإنشاءه إن
لم يكن موجوداً .. إذن لدينا الاختيار بين طور
"w" وطور
"a"، ولكن نفضل الثانية،
لأنها تبدأ بالكتابة في آخر الملف، بمعنى آخر؛ تتم كتابة
المعلومات بعد المعلومات
المكتوبة سابقاً في الملف ..
ملاحظة: شيء جيد
التأكد من ان الملف تم فتحه
بنجاح
if($fp = fopen("file.txt","a")){
|
الدالة
fputs()
تسمح بالكتابة في ملف .. وهي
مرادفة للدالة
fwrite()،أي
أن لهما نفس
العمل بالضبط
!
وتستخدم بالشكل التالي:
fputs(...);
----------
- 3قراءة
من ملف
يمكنك قراءة المعلومات
الموجودة في الملف بفتحها
بطور القراءة:
if (file_exists($file))
|
نستخدم الدالة
fgets()
لاسترجاع المعلومات الخاصة بالملف،
واحدة واحدة ..
الدالة
feof()
تسمح لنا بفحص إذا لم نصل
إلى نهاية الملف ..
ملاحظة:
يمكنك وضع الكم الذي تريده
من المعلومات، ولكن يجب فصلها بـ
|،
للبدأ وللنهاية وبين
المعلومات ..
مثال الاضافه والاستعراض
نقوم بفتح ملف ونكتب به الاتي ونحفظه بالاسم التالي index.html
<head> <title>المعلومات الشخصية</title> </head> <body> <"form method="post" action="add.php"> <div align="center"> <center> <table bordercolor="#944E6D" border="2" cellpadding="0" cellspacing="2" width="53%" height="1"> <tr> <td width="200%" align="center" height="42" bgcolor="#E1F0FF"> <font color="#000080"><b>المعلومات الشخصية</b></font></td> </tr> <tr> <td width="200%" align="center" height="109" valign="top" bgcolor="#FFFFFF"> <table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" width="100%" height="103"> <tr> <td width="100%" height="103" valign="top"> <table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%"> <tr> <td width="46%" align="left">الأسم الأولى</td> <td width="154%" align="right"> <input type="text" name="T1" size="20"></p> </td> </tr> <tr> <td width="46%" align="left">الأسم الأخير</td> <td width="154%" align="right"> <input type="text" name="T2" size="20"></p> </td> </tr> <tr> <td width="46%" align="left">الدولـــة</td> <td width="154%" align="right"> <input type="text" name="T3" size="20"></p> </td> </tr> <tr> <td width="46%" align="left">المدينــة</td> <td width="154%" align="right"> <input type="text" name="T4" size="20"></p> </td> </tr> <tr> <td width="46%" align="left">العمـــر</td> <td width="154%" align="right"> <input type="text" name="T5" size="20"></p> </td> </tr> </table> </td> </tr> </table> </td> </tr> <tr> <td width="200%" align="center" height="30" valign="top" bgcolor="#E1F0FF"><p> <input type="submit" value="أرسل" name="submit"> <input type="reset" value="مسح" name="reset"></p> </td> </tr> </table> </center> </div> </form> </body>
</html> |
الان نقوم بفتح ملف أخر ونقوم بكتابة الكود التالي به ونحفظه بأسم add.php
<?
// لفتح الملف المحدد
$fp = fopen("pro.txt","a+");
if(!$fp)
{
echo " لايمكن فتح الملف";
exit;
}
$date = $T1."\t".$T2."\t".$T3."\t".$T4."\t".$T5."\n";
//للكتابة في الملف
fwrite($fp,$date);
echo "<center><font color='#944E6D'><b> لقد تم تخزين البيانات في الملف بي نجاح</b></font><center>";
fclose($fp);
// الكود القادم ماهو الى كود للانتقال أتوماتيكي الى الصفحه المحدد بثواني محدد
echo "<META HTTP-EQUIV='Refresh' Content=3;URL='index.html'>";
?>
وعند تنفيذ الملف add.php وتعبئة البيانات سوف يظهر لنا الشكل التالي الذي يأكد حفظ البيانات في الملف بنجاح
الان قوم بي الذهاب الى نفس الدليل سوف تشاهد أنه تم أنشاء ملف pro.txt ووضع به البيانات التي وضعتها
ولاستعراض البيانات الموجوده في هذا الملف نقوم بكتابة الكود التالي ونحفظه بالاسم التالي view.php
<html dir="rtl">
<head>
<title>ترتيب المصفوفات</title>
</head>
<body><center>
<h1>جميع البيانات</h1>
<?
$orders= file("pro.txt");
// لحساب عدد البيانات المدخله كل مره
$number_of_orders = count($orders);
if ($number_of_orders == 0)
{
echo "<p><strong>لا يوجد أي بيانات في الملف</strong></p>";
}
echo "<table border=1>\n";
echo "<tr><th bgcolor = \"#CCCCFF\">الاسم الاول</td>
<th bgcolor = \"#CCCCFF\">الاسم الثاني</td>
<th bgcolor = \"#CCCCFF\">الدولة</td>
<th bgcolor = \"#CCCCFF\">المدينة</td>
<th bgcolor = \"#CCCCFF\">العمر</td>
<tr>";
for ($i=0; $i<$number_of_orders; $i++)
{
$line = explode( "\t", $orders[$i] );
echo "<tr><td>$line[0]</td>
<td align = center>$line[1]</td>
<td align = center>$line[2]</td>
<td align = center>$line[3]</td>
<td align = center>$line[4]</td>
</tr>";
}
echo "</table>";
?>
</center></body>
</html>
.::Started on :
20-6-2004::.
.::Powered by:php-step
vision.tk::.
Copyrights©2004
Snap-Soul.tk.Allrights
reserved