2011-04-25 89 views
0

我想爲教育學院做一個CGPA信息系統。說,有6個文本框,我想找出第一個5個文本框數量的平均值,因爲我給出了輸入,但是如果我填充它們的第一個4個框,那麼也想要找出第一個4個文本框輸入的平均值編號和結果顯示在第6個文本框位置相同的form.i我試圖在另一個PHP文件,但它不工作。該代碼是在這裏問題找出平均

<?php 
     $q1 = $_GET['q_1']; 
     $q2 = $_GET['q_2']; 
     $q3 = $_GET['q_3']; 
     $q4 = $_GET['q_4']; 
     $q5 = $_GET['q_5']; 


      $x=array($q1,$q2,$q3,$q4,$q5); 
      $num=count($x); 


      if($num=4) 
      { 

      $sum= $q1+$q2+$q3+$q4; 
      $num=4; 
      $avg=$sum/$num; 
      echo "bestof(4):$avg"; 

      } 
      elseif($num=5) 
      { 

      $sum= $q1+$q2+$q3+$q4+$q5; 
      $num=5; 
      $avg=$sum/$num; 
      echo "bestof(5):$avg"; 
      } 

?> 

回答

1

,它總是大小5.如果問題5沒有填寫,您的數組$x將是("Answer1", "A2", "A3", "A4", Null)

嘗試使用isset(),以確定哪些假設從$_GET陣列填寫,然後相應地建立自己的陣列,例如:

if(!isset($_GET['q_5']){ 
    $x = array($_GET['q_1'],$_GET['q_2'],$_GET['q_3'],$_GET['q_4']); 
}else{ 
    $x = array($_GET['q_1'],$_GET['q_2'],$_GET['q_3'],$_GET['q_4'],$_GET['q_5']); 
} 
+0

,但它顯示名爲「解析錯誤:在第20行的C:\ wamp \ www \ tst \ tst2.php中解析錯誤」和「if(!isset($ _ GET ['q_5']){」是在20行....使用您的想法代碼如下所示 – webrider 2011-04-25 15:48:11

+0

<?php \t \t $ q1 = $ _GET ['q_1 ']; \t \t $ Q2 = $ _GET [' Q_2 ']; \t \t $ Q3 = $ _GET [' q_3 ']; \t \t $ Q4 = $ _GET [' C 1-4' ]; \t \t $ Q5 = $ _GET ['q_5']; \t \t \t \t \t \t if(!isset($ _ GET [ 'q_5']) \t \t \t \t \t \t { \t \t $ X =陣列($ _ GET [ 'Q_1'],$ _ GET [ 'Q_2'],$ _ GET [ 'q_3'] ,$ _ GET [ 'C 1-4']); \t \t \t $ num = count($ x); \t \t \t \t \t \t \t $總和= $ Q1 + Q2 $ + $ Q3 + Q4 $; \t \t \t $ num = 4; \t \t \t $ avg = $ sum/$ num; \t \t \t echo「bestof(4):$ avg」; \t \t \t} \t \t \t \t \t \t別的 \t \t \t \t \t \t { \t \t $ X =陣列($ _ GET [ 'Q_1'],$ _ GET [ 'Q_2'],$ _ GET [ 'q_3'],$ _ GET [ 'C 1-4'],$ _ GET [ 'q_5']); \t \t \t $ num = count($ x); \t \t \t \t \t \t $ sum = $ q1 + $ q2 + $ q3 + $ q4 + $ q5; $ num = 5; $ avg = $ sum/$ num; echo「bestof(5):$ avg」; \t \t \t} \t \t \t ?> – webrider 2011-04-25 15:48:26

+0

是的,我得到it.thank你格雷格 – webrider 2011-04-25 16:35:31

2
if($num=4) 

確實應該

if($num==4) 

,因爲你要測試的平等,而不是值4,當你初始化$x分配給NUM

+1

只是爲了澄清的區別,「=」是賦值,「== 「是你的答案varzan的thanx相等比較 – 2011-04-25 13:45:22

+0

,但它不起作用。實際上,elseif部分始終工作,我輸入的是4或5個輸入 – webrider 2011-04-25 15:02:49