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

من يريد المشاركة في هذا المشروع التعليمي. ان شاء الله الفايدة للجميع.

بدأه أبو نورة الأمورة في 22 نوفمبر 2011 · 11 رد · 866 مشاهدة · في منتدى تطوير المواقع بـ PHP
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

بسم الله الرحمن الرحيم

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

يا خواني واخواتي أنا لي فترة افكر في انشاء موضوع في هذا المنتدى فكرتة تطوير المبرمجين المبتدئين وزيادة خبر المتوسطين والمحترفين.

أنا عندي خبرة بسيطة في ال PHP وبغى اطور نفسي وغير وأفضل طريقة هي الممارسة المستمرة.

فية شيء ودي اوضحة:

مشكلة طلاب وطلبات الحاسب الالي وخصوصا قسم البرمجة ان الواحد فينا مايحب يجرب او يصلح شيء جديد. هذا الي انا لاحظتة خلى فترة دارستي وانا كنت واحد منهم. الطالب و الطلابة مايحول يسوي الا الي يطلبة المدرس. وبعض الطلاب عندهم رهبة من المشاريع مع انه يحب البرمجة. المهم ان شاء الله في هذا الموضوع نبي نكسر هذي الحواجز.

المطلوب في هذا الموضوع بناء موقع اخباري فية كل المميزات كما في التالي:

1- امكانية انشاء موضوع + حذف + تعديل.

2- تعليق على الموضوع.

3- ردود على التعليق.

4- تقيم الموضوع.

5- مستخدم جديد + تغير الرقم السري + استرجاع الرقم السري.

6- تسجيل دوخل + وتسحيب خروج من الموقع.

7- بناء ملف شخصي للمستخدم

8- امكانية ارفاق صورة شخصية للمستخدم في الملف الشخصي.

9- بناء لوحة تحكم للموقع مع اعطاء الصلاحيات للمستخدمين.

10- محرك بحث.

ممكن لي عضو ان يزيد ويقترح. الموضوع هذا الهدف منه تعليمي فقط.

المشاركة مفتوحة للجميع.

طريقة المشاركة سوفتكون مثل الواجبات المدرسية. انا اشوف هذه طريقة ممتازة لان اكثر المواضيع الي فيها بناء مشاريع يقومون الاعضاء برد والثناء على صاحب الموضوع دون المحاولة في تطوير وتعديل على المشروع واحتى اضافة اقتراحات.

مثال: يحدد كل اسبوع بناء جز من الموقع مع ارفاق شرح للمطلوب ورسم ERD الرسم التخطيطي للمشروع. يعني في يوم معين من ايام الاسبوع نقوم بارفاق المشاريع قي الموضوع والمناقشة فيها مع طرح الاسئلة ان وجد. المظلوب من الخبراء تصيح لنا ان اخظانا مع التوضيح اذا سمحتم.

ملاحظة:

ليس شرطا ان يعمل الكود بشكل صحيح وليس عيبا. المطلوب هنا المحاولة المحاولة ثم المحاولة وبعد المحاولة تاتي الخبرة.

سوف نبدء ببناء الاجزاء السهل في الموقع ثم الاصعب فالاصعب.

سوف نقوم بستخدم

PHP

AJAX

JQuery

CSS

HTMLX

HTML

Javascript

MySql

ملاحظة:

في برامج كثير تساعد على رسم المخطط البياني للمشاريع مثل esyDraw و VSIO وغيرها كثير

المرحلة الاولى :

في البداية سوف نقوم ببناء الجزء الاول بستخدام PHP & MySql لتكون بشكل مبسط بدون اي تعقيدات (الا الي عندة الخبرة في اللغات الثانية)

المرحلة الثانية:

بناء نفس الجز بشكل احترافي وزيادة في تدقيق البيانات المرسلة لقاعدة البيانات + إضاقة مايلزم من اللغات الاخرى لتحسين الشكل وزيادة الكفاءة وتسهيل الاستخدام.

قال تعالى (وَقُلْ رَبِّ زِدْنِي عِلْمًا)

وقال الرسول صلى الله علية وسلم (من التمس طريقا يلتمس فيه علما سهل الله له طريقا إلى الجنة‏)

النَّبِيَّ صلى الله عليه وسلم، قَالَ : (إِنَّ اللَّهَ تَبَارَكَ وَتَعَالَى يُحِبُّ إِذَا عَمِلَ أَحَدُكُمْ عَمَلا أَنْ يُتْقِنَهُ)

يا شباب نبي نشوف منافسه اوبداع.

اذا فية احد متحمس يقول. ان شاء الله الفايدة للجميع.

في الختام اسف على الاطالة و اسف على الاخطاء الاملائية .

سلام

1
#2

حسنا ً ممكن ان اقول ان هدفك من هذا المشروع هو التطوير من مهارات المبتدئين في لغة PHP !!

1

M.B.O

Mohamed Bin Othman

إبن المكلا

يابني البشر ماذا فعلتم بالبشر !!

إسـألـنـي

#3

انا موافق تماما .

1

@My Twitter

[spacing]

EGYPT

[/spacing]

#4

وانا معكم لتطوير مهاراتي في الــ PHP

صورة
صورة

حسابي في الفيس بوك
http://goo.gl/XIzwL

حسابي في تويتر
http://goo.gl/6p4e3

 

 
 
#5

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

إن شاء الله بداية الدروس مساء هذا اليوم و شكرا لك من شارك قي الموضوع.

سلام :)

#6

بالتوفيق ان شاء الله

M.B.O

Mohamed Bin Othman

إبن المكلا

يابني البشر ماذا فعلتم بالبشر !!

إسـألـنـي

#7

وفقكم الله

انا معكم كتلميذ في سن ال47

ولا استطيع افادتكم

#8

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

اسف على التأخير

الدرس الاول:

المشروع هذي سوف نقوم ببنائة هو موقع اخبار فية مميزات كثيرة.

سوف نقوم بتقسم المشروع الى اقسام و سوف نقوم بوضع دروس على كل قسم الدروس ستساعد على الفهم و سوف تساعد على بناء الجزء المطلوب من الموقع.

مثال: اول قسم سوف نقوم ببنائة في هذا المشروع مقسم الى عدة اقسام :

القسم الاول:

1- تسجيل مستخدم جديد.

2- تسجيل دخول + تسجيل خروج.

القسم الثاني:

3- بناء ملف شخصي مع امكانية تعديل البيانات الشخصية.

القسم الثالث:

4- تغير الرقم السري.

5- استرجاع الرقم السري.

القسم الرابع:

6- اضفة خبر جدبد.

7- تعديل او حذف الخبر.

8- تعليق على الخبر.

القسم الخامس:

9- تقيم الخبر.

10- أضافة رد على التعليق.

11 - اضافة الخبر الى المفضلة.

إن شاء الله سوف نبداء بالقسم الرابع في البداية:

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

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

في هذه الدروس لانريد الا كتفاء بتجربة المثال ومشهادة الاكود.

المطلوب من الاعضاء هو اعادة كتابة المثال مع الاضافة وتحسين الاكواد تحسين المضهر الصفحات ان امكن ووضعها هنا في هذا الموضوع لمشاهدتها

إن شاء الله عند اكتمال دروس هذا القسم كل عضو سوف يقوم ببناء الجزء المطلوب كامل بنفسه

نقول بسم الله

اللهم لا سهلا الا ماجعلتة سهلا وانت تجعل الحزن إذا شأت سهلا

الجدول

CREATE TABLE phone
 (
 id int NOT NULL AUTO_INCREMENT, 
PRIMARY KEY(id),
 phone char(12),
 city varchar(15)

 )

index.php

صفحة المقدمة تحتوي على نموذج اضافة رقم جديد

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<title>Untitled 1</title>
</head>

<body bgcolor="silver">
<form action="checkCode.php" method="post">
<h1>من فضلك اكمل النموذج</h1>
<td>
<input name="id" id="id" type="hidden" style="width: 170px" />
</td>
<br/>

<td>
رقم الهاتف:
</td>
<br/>
<td>
<input name="phone" id="phone" type="text" style="width: 170px" /> <td><h3>format: 000-000-0000</h3></td>
</td>
<br/>
<br/>
<td>
المدينة:
</td>
<br/>
<td>
<select name="city" id="city" style="width: 170px">
				<option></option>
				<option value="Riyadh">Riyadh</option>
				<option value="Makkah">Makkah</option>
				<option value="Jeddah">Jeddah</option>

			</select>
</td>
<br/>
<br/>
<td>
<input name="Submit1" type="submit" value="اضافة" style="width: 170px" />
</td>
</form>
</body>

</html>

checkCode.php

هذة الصفحة يتم فيها التشيك على البيانات المدخلة في صفحة index.php

في على هذه الصفحة موجود الاتي

<?php

require_once("allFiles.php");

?>

هذا كود يوقم بستداعاء صفحة allfiles.php والتي تحتوي على صفحتين اخرى:

الصفحة الاولى db.php تحتوي على كود الربظ بقاعدة البيانات

الصفحة الثانية display.php تحتوي على كود اعادة توجية الصفحة الى صفحة العرض

<?php
require_once("allFiles.php");

	$id = $_POST['id'];
	$phone = $_POST['phone'];
	$city = $_POST['city'];

	// validate a phone number
	if( !preg_match("/^[0-9]{3}-[0-9]{3}-[0-9]{4}$/i", $phone) ) {
	die ("<h1>(*_*)</h1>من ÙØ¶Ù„Ùƒ ادخل رقم هات٠صحيح.<br/> رقم الهات٠يجب ان يكون 12 خانة. مثال: 8888-999-555");

	}

	//check length of the phone number 
	// it must be 10 digits

	//if ((strlen($phone) > 12) || (strlen($phone) <12))
	//{
	//	die ("رقم الهات٠يجب ان يكون 12 خانة. مثال: 8888-999-555");
	//}

	// if nothing selected, show an error message
	if($_POST['city'] =='')
	{
		die ("<h1>(*_*)</h1>من ÙØ¶Ù„Ùƒ اختر مدينة");

	}

	else	{
	// insert to this record into database

	$query = "INSERT INTO phone values ('$id','$phone', '$city')";
	$result = mysql_query($query);

	if(mysql_affected_rows($link)){
	die ("<h1>(^_^)</h1>تمت اضاÙÙ‡ رقم الهات٠بشكل صحيح");
    do_url('display.php');
	}
	else{
	die ("ÙØ´Ù„ت العملية. حاول مرة اخرى");

    }
}

?>

allfiles.php

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

<?php
  // We can include this file in all our files
  // this way, every file will contain all our functions and exceptions
  require_once('db.php'); 
  require_once('display.php');

 ?>

display.php

هذة الصفحة تحتوي على فنكشن تقوم بعرض رسائل التانجة من تنفيذ كود الاضافة + التعديل + الحذف

وتقوم بعرض رابظين:

الاول لاضافة رقم جديد

الثاني لعرض جميع الارقام

<?php

// this function to redierct you to the profile page
function do_URL($url) {
?>
  <br /><a href="<?php echo $url;?>"></a><br />
<?php
}
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>

<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<title>Thank you</title>
</head>

<body bgcolor="silver">
<h1><a href="index.php">اضغظ هنا لاضافة رقم جديد</a></h1>
<h1><a href="displayNum.php">اضغظ هنا لعرض جميع الارقام</a></h1>
</body>

</html>

displayNum.php

هذه الصفحة يتم فيها عرض جميع الارقام والمدن

<?php
  require_once('db.php'); 
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<title>Add New Phone Number</title>
</head>

<body bgcolor="silver">
<?php
// retirve records from phone table

$result = mysql_query("SELECT * FROM phone") 
or die(mysql_error()); 

// display data in table

echo "<table border='1' cellpadding='10'>";
echo "<tr> <th>ID</th> <th>Phone</th> <th>City</th><th>Update</th><th>Delete</th></tr>";

// loop through results of database query, displaying them in the table
while($row = mysql_fetch_array( $result )) {

// echo out the contents of each row into a table
echo "<tr>";
echo '<td>' . $row['id'] . '</td>';
echo '<td>' . $row['phone'] . '</td>';
echo '<td>' . $row['city'] . '</td>';

echo '<td><a href="update.php?id=' . $row['id'] . '">Edit</a></td>';
echo '<td><a href="delete.php?id=' . $row['id'] . '">Delete</a></td>';
echo "</tr>"; 
} 

// close table>
echo "</table>";
?>
<p><a href="index.php">Add a new record</a></p>



</body>

</html>

update.php

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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<title>Untitled 1</title>
</head>
<?php

require_once("allFiles.php");

?>

<?php

$id=$_GET["id"];

$query="select * from phone where id='$id'";
$result=mysql_query($query);

while ($row = mysql_fetch_array($result)) { 

?> 


<body bgcolor="silver">
<form action="updateRecord.php" method="post">
<h1>تعديل البيانات</h1>
<td>
<input name="id" id="id" type="hidden" value="<?php echo $row[0];?>" style="width: 170px" />
</td>
<br/>

<td>
رقم الهاتف:
</td>
<br/>
<td>
<input name="phone" id="phone" type="text" value="<?php echo $row[1];?>" style="width: 170px" /> <td><h3>format: 000-000-0000</h3></td>
</td>
<br/>
<br/>
<td>
المدينة:
</td>
<br/>
<td>
<select name="city" id="city" style="width: 170px">
				<option value="<?php echo $row[2];?>"><?php echo $row[2];?></option>
				<option value="Riyadh">Riyadh</option>
				<option value="Makkah">Makkah</option>
				<option value="Jeddah">Jeddah</option>

			</select>
</td>
<br/>
<br/>
<td>
<input name="Submit1" type="submit" value="تعديل" style="width: 170px" />
</td>
</form>
</body>
<?php
}
?>
</html>

updateRecord.php

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

<?php
require_once("allFiles.php");

	$id = $_POST['id'];
	$phone = $_POST['phone'];
	$city = $_POST['city'];

	// validate a phone number
	if( !preg_match("/^[0-9]{3}-[0-9]{3}-[0-9]{4}$/i", $phone) ) {
	die ("<h1>(*_*)</h1>من ÙØ¶Ù„Ùƒ ادخل رقم هات٠صحيح.<br/> رقم الهات٠يجب ان يكون 12 خانة. مثال: 8888-999-555");

	}


	// if nothing selected, show an error message
	if($_POST['city'] =='')
	{
		die ("<h1>(*_*)</h1>من ÙØ¶Ù„Ùƒ اختر مدينة");

	}

	else	{
	// insert to this record into database

	$query = "update phone set id='$id', phone='$phone', city='$city' where id=$id";
	$result = mysql_query($query);

	if(mysql_affected_rows($link)){
	die ("<h1>(^_^)</h1> تم تعديل البيانات بشكل صحيح­");
    do_url('display.php');
	}
	else{
	die ("ÙØ´Ù„ت العملية. حاول مرة اخرى");

    }
}

?>

delete.php

هذه الصفحة تحتوي على كود الحذف

<?php

require_once("allFiles.php");

$id=$_GET["id"];
$query="delete from phone where id=$id";
mysql_query($query);
	echo "<h1>(^_^)</h1> تم حذ٠الرقم بنجاح";
    do_url('display.php');
?>

هذا الموضوع مفتوح لاي واحد يريد الشرح او ارد او التعديل او المناقشة. نحن هنا لنتعلم

الكود مع قاعدة البيانات في المرفق

سلام

وربي يسهل امورنا

arab2.rar

تم تعديل هذه المشاركة بواسطة أبو نورة الأمورة في 24 نوفمبر 2011 في 02:58

1
#9

بداية موفقة اخي الكريم استمر

في الحقيقة وددت لو انك بدءت بتحليل لقاعدة البيانات سيكون افضل

هذا الامر سيساعد المتبدئين في عملية التخطيط للمشاريع سواء الكبيرة او الصغيرة

:happy:

تم تعديل هذه المشاركة بواسطة M.B.O في 24 نوفمبر 2011 في 21:27

M.B.O

Mohamed Bin Othman

إبن المكلا

يابني البشر ماذا فعلتم بالبشر !!

إسـألـنـي

#10

طيب لماذا لا تبدأ من النماذج أولا لتعرف مالذي تريد أن تخزنه في قاعدة البيانات

1

صورة
صورة

حسابي في الفيس بوك
http://goo.gl/XIzwL

حسابي في تويتر
http://goo.gl/6p4e3

 

 
 
#11
M.B.O كتب:

بداية موفقة اخي الكريم استمر

في الحقيقة وددت لو انك بدءت بتحليل لقاعدة البيانات سيكون افضل

هذا الامر سيساعد المتبدئين في عملية التخطيط للمشاريع سواء الكبيرة او الصغيرة

:happy:

@My Twitter

[spacing]

EGYPT

[/spacing]

#12

خارج الموضوع أنا أقترح عليكم استخدام نظام إدارة إصدارات مثل git على موقع مثل https://github.com/ فهو نظام إدارة إصدارات و ينظم العمل الجماعي و بشكل اجتماعي أرجو أن تقرأوا عنه .

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…