2017-05-14 208 views
0

我想在for循环中运行MySQL更新查询后显示验证消息。我在下面写了源代码,但验证消息没有显示出来。我不知道什么是问题。PHP代码正常工作,但验证消息未显示

这是我的PHP代码显示的任何输出前

<?php 
    // Update All rows start 
    for ($i=0; $i<$setTotalRows ; $i++) 
    { 
     $GetChecked = isset($_POST['txtChecked'.$i]); 
     $GetTransCode = $_POST['txttransCode'.$i]; 
     $GetTransType = $_POST['txttransSetType'.$i]; 
     $GetTransMethod = $_POST['txtPaymentMethod'.$i]; 
     $SetEncodedDate = date("Y-m-d H:i:s"); 
     if (empty($GetChecked)) { //Start Else 
      continue; 
     } else if (!empty($GetChecked) && $GetTransType == "ErrorType") { 
      continue; 
     } else { 
      if($GetTransType == "Debit") { //Check For Cashin Cashout Start 
       $SetTableName = "tblbank_cashin"; 
      } else { 
       $SetTableName = "tblbank_cashout"; 
      } //Check For Cashin Cashout End 

      //Method Start 
      switch ($GetTransMethod) { 
       case "1": 
        $SetPayMode = "Cash Deposit"; 
        break; 
       case "2": 
        $SetPayMode = "Online Transfer"; 
        break; 
       case "3": 
        $SetPayMode = "Cheque Transfer"; 
        break; 
       case "4": 
        $SetPayMode = "Cash Withdrawal"; 
        break; 
       case "5": 
        $SetPayMode = "Cheque Withdrawal"; 
        break; 
       default: 
        $SetPayMode = "Cash Deposit"; 
      } 
// Method End 

      $sql_update = "UPDATE ". $SetTableName. " SET "; 
      $sql_update .= "transRecon='1'"; 
      $sql_update .= ", transReconDate='$SetEncodedDate'"; 
      $sql_update .= ", transType='$SetPayMode'"; 
      $sql_update .= " WHERE transCode='$GetTransCode'"; 
      $result_reconcile = mysqli_query($conn,$sql_update); 
      if(!$result_reconcile){ 
       die("SQL Error: " . mysqli_error($conn)); 
      //echo $result_reconcile; 
      } 
     } //End Else 

    } //End For i loop 

    if(isset($result_reconcile)){ 
     $sucess = "<div class='alert alert-success'><strong><i class='fa fa-check' aria-hidden='true'></i> Perfect!</strong> payment(s) has been reconciled</div>"; 
     header('Refresh: 3;url=banks?P=All&E='.$view_bankid); 
    } else { 
     $error_display = "<div class='alert alert-warning'><strong>ERROR!</strong> An error occured. Please Try Again Here</div>"; 
    } 
//Update All rows End 
?> 
+0

那不是你如何做一个重定向以'头()' –

+0

并请学会用[准备好的语句(https://www.youtube.com/watch?v=nLinqtCfhKY)。 –

+0

验证消息在哪里? –

回答

0

PHP头必须发送,你也永远不会显示$success,因为你只设置变量,从来没有呼应它。

如果你能够使用Javascript,然后在php本身回显你的$success,那么我会建议使用jQuery进行以下操作,并在php $success消息后回显。

<script>$(document).ready(function(){ 
    setTimeout(function(){ 
    window.location.replace("some webpage here"); 
    }, 3000); 
});</script> 
+0

在主页上我已经显示$成功消息,它可以在其他窗体上工作,但在此代码它不会显示 – Rtra

+0

它没有显示,因为你永远不会回显它,如果你这样做,那么你的头()将无法工作... –

+0

好吧我评论头()语句,但仍然不显示 – Rtra