2013-10-05 32 views
-5

在我的示例中,for循環未執行和/或我的數據未被插入到數據庫中。我可以改變什麼?for循環未執行/出現錯誤,如循環不起作用

<?php 
    include('connection.php'); 
    { 
    if(isset($_POST['Submit'])) 
    { 
    date_default_timezone_set('Asia/Calcutta'); 
    $date = date('Y-m-d H:i:s', time()); 

    for ($i=1; $i<=$_POST["NUM_STUDENTS"]; $i++) { 

     $STD = "STUDENT_ID".$i; 
     $DS = "DISCOUNT".$i; 
     $LV = "LEAVE".$i; 
     $FN = "FINE".$i; 

$sql = "INSERT INTO ATTENDANCE"; 
$sql .= "(SESSION_ID,ORG_ID,GRADE_ID,MONTH,STUDENT_ID,DISCOUNT,LEAVE,FINE,SOURCE,CREATEDTTM,UPDDTTM,DELETE_FLAG)"; 

    $sql .= "VALUES "; 
    $sql .= "('".$_POST["SESSION_ID"]."','".$_POST["ORG_ID"]."','".$_POST["GRADE_ID"]."','".$_POST["MONTH"]."','".$_POST[$STD]."','".$_POST[$DS]."','".$_POST[$LV]."','".$_POST[$FN]."' "; 

    $sql .= ",'".$_SESSION['login_name']."','".$date."','".$date."','N')"; 
    $objQuery_2 = mysql_query($sql); 
    if($objQuery_2) 
    {              
    echo"<script>alert('Attendance Fine Added Successfully')</script>"; 
    header("refresh:0;url=attendance_srch.php"); 
    exit(); 
     } 
    else 
    { 
echo"<script>alert('Please Check Data')</script>"; 
    header("refresh:0;url=attendance_srch.php"); 
    exit(); 
    } 
    } 
} 
    mysql_close($bd); 
ob_flush(); 
} 
    ?> 
+0

永遠不要在查詢中直接使用GET數據。你要求sql注入! –

回答

0

你在這裏留下?>之間有很多的空間必須?>[這是錯誤之一]

<?=$objResult["OPERATOR_ID"];? >"> 
           ^^^ 

必須是

<?=$objResult["OPERATOR_ID"];?>"> 
+0

但我得到相同的錯誤和行是艾爾迪打開搜索頁 – user2842666

0

數組鍵是大小寫敏感的。如果輸入的實際名稱是OPERATOR_ID,則不能通過$_GET['operator_id']訪問它,您必須使用$_GET['OPERATOR_ID']

另一個問題是你有一套額外的大括號。因此,即使if (isset($_GET['OPERATOR_ID'])爲假,您也正在執行所有數據庫代碼。

+0

獲取但我得到相同的錯誤和行是艾爾雷特與打開搜索頁面 – user2842666