<?php
ob_start();
session_start();
?>
<div align="center" class="aa">
<div align="center">
<?
/* هذا الكود حاولت عن طريقة استخراج النتيجة */
if($_GET["do"] == "Save")
{
for($i=1;$i<=$_POST["hdnLine"];$i++)
{
$a = array($_POST["answer$i"]);
if($_POST["answer$i"] == $_POST["A$i"]){
$_POST["A$i"] = 1;
}else{
$_POST["A$i"] = 0;
}
$my_count = array_sum($_POST["A$i"]);
echo $my_count;
}}
?>
<!-- فورم لارسال الاجابات عدد الاجابات غير محدد قد يكون 10 او 20 او 30 حسب رغبة المستخدم-->
<form method="POST" action="a.php?do=Save">
<h3>موسوعة التحصيلي للأحياء</h3><br /><br /><br /><br />
<h4>قريباً الاختبارات المحاكية</h4><br /><br /><br /><br />
<br /><br />
<?
/* استعلام لاستخراج الاسئلة مع دالة while */
/* في كل مرة تختلف نتيجة الاستعلام وليس لها عدد محدد */
$sql = mysqli_query($coo,"SELECT * FROM `question`
WHERE `id_lesson` = '1' AND `id_teaching` = '1'
ORDER BY rand()
LIMIT 3"); <-- رقم 3 سيتم استبدالة ببوست وعن طريقة المستخدم يحدد كم سؤال يحتاج
$sql_num = mysqli_num_rows($sql);
if($sql_num > 0){
$i =0;
while($sql_raw = mysqli_fetch_array($sql))
{
$i++;
?>
<!-- جدول لطباعة الاسئلة -->
<table cellpadding="0" width="100%" cellspacing="1" style="border: 1px solid;border-collapse: collapse;min-width: 20em;">
<tr>
<td style="border: 1px solid;background-color: #f1f1f1;" width="28%" colspan="1">السؤال <?=$i;?></td>
<td style="background-color: #fff;" width="auto"></td>
</tr>
</table>
<table width="100%" cellspacing="1" style="border: 1px solid;border-collapse: collapse;min-width: 20em;">
<tr>
</tr>
<?
/* كود ضبط حجم الصورة مع المتصفح */
if (!empty($sql_raw['img'])){
if($sql_raw['H'] >= 900){
$WW = '50%';
}else{
$WW = '80%';
}
?>
<tr>
<td style="text-align: center;background-color: #fff;" colspan="2"><img colspan="2" border="0" src="<?=$sql_raw['img'];?>" width="<?=$WW;?>" height="auto"></td>
</tr>
<?
}else{}
?>
<tr>
<td style="background-color: #fff;" colspan="2"> </td>
</tr>
<tr>
<td style="text-align: right;background-color: #fff;" colspan="2"><img border="0" src="./images/55.png" width="32" height="32"> <?=$sql_raw['question'];?> :</td>
</tr>
<tr>
<td style="background-color: #fff;" colspan="2"> </td>
</tr>
<tr align="right">
<!-- حقول الاختيارات -->
<td style="background-color: #fff;" width="90"><input type="radio" value="A" name="A<?=$i;?>"></td>
<td style="text-align: right;background-color: #fff;" colspan="2"><?=$sql_raw['A'];?></td>
</tr>
<tr align="right">
<td style="background-color: #fff;" width="90"><input type="radio" value="B" name="A<?=$i;?>"></td>
<td style="text-align: right;background-color: #fff;" colspan="2"><?=$sql_raw['B'];?></td>
</tr>
<tr align="right">
<td style="background-color: #fff;" width="90"><input type="radio" value="C" name="A<?=$i;?>"></td>
<td style="text-align: right;background-color: #fff;" colspan="2"><?=$sql_raw['C'];?></td>
</tr>
<tr align="right">
<td style="background-color: #fff;" width="90"><input type="radio" value="D" name="A<?=$i;?>"></td>
<td style="text-align: right;background-color: #fff;" colspan="2"><?=$sql_raw['D'];?></td>
</tr>
<tr>
<?
/* كود استبدال حرف العربي بحرف انجليزي للاجابة */
if($sql_raw['answer'] == 'أ'){
$ans = 'A';
}elseif($sql_raw['answer'] == 'ب'){
$ans = 'B';
}elseif($sql_raw['answer'] == 'ج'){
$ans = 'C';
}elseif($sql_raw['answer'] == 'د'){
$ans = 'D';
}else{
$ans = 'error';
}
?>
<!-- حقل الاجابة الصحيحة حقل مخفي -->
<td style="background-color: #fff;" colspan="2"><input type="hidden" name="answer<?=$i;?>" value="<?=$ans;?>" /></td>
</tr>
</table><br />
<!-- end -->
<?
}}
?>
<div align="center">
<input type="submit" name="submit" value="تعديل البيانات">
<input type="hidden" name="hdnLine" value="<?=$i;?>"> </div>
<br />
</form>
</div>
</div>
</div>
<br />
<?
mysqli_close($coo);
ob_end_flush();
?>
</body>
</html>
هذا كود الصفحة اللي استخدمته
المشكله في هذا السطر :
'q1' => 'a',
'q2' => 'b',
انت حطيت سطرين ... المشكلة اللي عندي عدد POST غير معروف قد يكون اكثر من 2
لان النموذج قد يعرض لمستخدم 10 اسئلة لذلك بيكون هناك 10 POST
ومستخدم اخر قد يعرض له 20 سؤال لذلك بيكون لدي 20 POST