السلام عليكم
أببدا معكم اليوم درس بسيط كنت احتاجه و لقيت طريقة عمله وقلت يمكن حبايبنا في سوالف يبونهم :nice:
هو نظام تصويت بسيط مع ظهور صور تويضيحيه للنتائج :nice:
طبعا الدرس ملطوش من موقع اجنبي عشان كذا ابحط لكم الاكواد والاجر على الله
هذي هي الدالة الي نحتاجها في الموضوع كله
كود PHP:
function ratemenu($tut_id){
echo "<form name="rating" method="post" action="tutorials.php">
<font class="subfont">تقييم هذا الموضوع:</font>
<select name="rating">
<option value="5.0" selected>5 - ممتاز!</option>
<option value="4.0">4</option>
<option value="3.0">3 - جيد</option>
<option value="2.0">2</option>
<option value="1.0">1 - سيئ</option>
<option value="0.0">0 - فضيع!</option>
<input type="hidden" name="cmd" value="do_rating">
<input type="hidden" name="tut_id" value="$tut_id">
<input type="submit" value="Go!">
</select>
</form>";
}
الان هذي الدالة هي اللي تقوم بتسجيل التقييم في قاعد البيانات
كود PHP:
function do_rating($tut_id, $rating){
if (session_is_registered("rating$tut_id")){
echo "<center>لقد قمت بالتصويت لهذا الموضوع من قبل!";
} else {
$get_count = mysql_query("SELECT tut_rating, tut_num_votes FROM tutorials WHERE tut_id=$tut_id");
while(list($tut_rating, $tut_num_votes)=mysql_fetch_array($get_count)){
$new_count = ($tut_num_votes + 1);
$tut_rating2 = ($tut_rating * $tut_num_votes);
$new_rating = (($rating + $tut_rating2) / ($new_count));
$new_rating2 = number_format($new_rating, 2, '.', '');
$update_rating = mysql_query("UPDATE table SET tut_rating='$new_rating2',tut_num_votes='$new_count' WHERE tut_id=$tut_id");
$sessionvar = "tut$tut_id";
session_register($sessionvar);
echo "<div align="center"><b>
<p>شكرا لقد تم تسجيل صوتك</p>
<p>وضع الموضوع بعد التقييم:
$new_rating2 من 5</p>";
}
}
echo "<p align="center"><a href="javascript:history.back();"><<
Back</a> | <a href="/index.php">Main Page</a> | <a href="/tutorials.php">Tutorial
Index>></a></b>
</p>";
}
الان هذي الدالة لاستخراج النتائج من قاعدة البيانات وعرضها بالشكل المطلوب
كود PHP:
function tut_stars($tut_rating){
if((($tut_rating >= 0)or($tut_rating == 0)) && ($tut_rating <= 0.50)){
echo "<img src="/images/stars/0o5.gif" width="70" height="18">";
}
if((($tut_rating >= 0.50)or($tut_rating == 0.50)) && ($tut_rating <= .99)){
echo "<img src="/images/stars/05o5.gif" width="70" height="18">";
}
if((($tut_rating >= 1.00)or($tut_rating == 1.50)) && ($tut_rating <= 1.49)){
echo "<img src="/images/stars/1o5.gif" width="70" height="18">";
}
if((($tut_rating >= 1.50)or($tut_rating == 1.50)) && ($tut_rating <= 1.99)){
echo "<img src="/images/stars/15o5.gif" width="70" height="18">";
}
if((($tut_rating >= 2.00)or($tut_rating == 2.00)) && ($tut_rating <= 2.49)){
echo "<img src="/images/stars/2o5.gif" width="70" height="18">";
}
if((($tut_rating >= 2.50)or($tut_rating == 2.50)) && ($tut_rating <= 2.99)){
echo "<img src="/images/stars/25o5.gif" width="70" height="18">";
}
if((($tut_rating >= 3.00)or($tut_rating == 3.00)) && ($tut_rating <= 3.49)){
echo "<img src="/images/stars/3o5.gif" width="70" height="18">";
}
if((($tut_rating >= 3.50)or($tut_rating == 3.50)) && ($tut_rating <= 3.99)){
echo "<img src="/images/stars/35o5.gif" width="70" height="18">";
}
if((($tut_rating >= 4.00)or($tut_rating == 4.00)) && ($tut_rating <= 4.49)){
echo "<img src="/images/stars/4o5.gif" width="70" height="18">";
}
if((($tut_rating >= 4.50)or($tut_rating == 4.50)) && ($tut_rating <= 4.99)){
echo "<img src="/images/stars/45o5.gif" width="70" height="18">";
}
if($tut_rating == 5.0){
echo "<img src="/images/stars/5o5.gif" width="70" height="18">";
}
}
طبعا مع بعض التعديلات يصبح لديك برنامج تقييم خاص بك
وناسف على الشرح اللي مش حالك
في المرفقات الصور المطلوبة في البرنامج
ملاحظة للمشرفين : نرجو تصغير حجم خط الاكواد