2016-07-26 75 views
0

我怎麼能顯示更新消息,並刪除消息只有當我按下提交按鈕,因爲每次當我打開網頁或重新加載它,你可以看到消息欄沒有我按下提交按鈕顯示並隱藏php更新和刪除消息?

<?php require_once("header.php"); ?> 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" dir="RTL" lang="Ar"> 

<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> 


<link href="css/style.css" media="screen" rel="stylesheet" type="text/css" /> 

<meta name="viewport" content="width=device-width, initial-scale=1.0"> 

</head> 
<body> 



<?php 

if(isset($_GET['language_id']) && is_numeric($_GET['language_id']) && $_GET['language_id'] > 0){ 

$language_id = $_GET['language_id']; 

} 

?> 
<?php include ("connection.php"); ?> 
<?php 
    $msg = ""; 
    if (isset($_POST['update'])) { 
     if(is_numeric($_POST['language_id'])){ 

      $language_id = mysqli_real_escape_string($link,htmlspecialchars($_POST['language_id'])); 
      $language_name = mysqli_real_escape_string($link,htmlspecialchars($_POST['language_name'])); 



      if ($language_name == "") 
      { 
       $msg = "يرجى تعبيئة كافة الحقول" ; 
      } 
      else 
      {     
       $sql = mysqli_query ($link,"UPDATE `programming_language` SET `language_name`='".$language_name."' 
        WHERE `language_id`='".$language_id."' "); 
        if($sql){ 

         $msg = "تمت عملية التعديل بنجاح"; 
         // header ("location:edit_programming_language.php"); 
        }     


      } 

     } 
     else 
     { 
      echo "Error !"; 
     } 

    } 
    else 
    { 
     if(isset($_GET['language_id']) && is_numeric($_GET['language_id']) && $_GET['language_id'] > 0){ 

       $language_id = $_GET['language_id']; 

      $query = mysqli_query($link,"SELECT * FROM `programming_language` WHERE `language_id` ='".$language_id."' ") or die(mysqli_error($link)); 
      while($row = mysqli_fetch_assoc ($query)){ 
       $language_id = $row ['language_id']; 
       $language_name = $row['language_name']; 


      } 
     } 

    } 
?> 

<div class="page-container"> 
<div class="alert alert-success"> 
    <button type="button" class="close" > 
       &times; 
      </button> 
<p><?php echo $msg;  ?></p> 
</div> 
<div class="edit-programming-language"> 

<form method= "POST" action = "" > 





         <input type="hidden" name = "language_id" value="<?php echo $language_id ;?>" /> 

    <p>      

         <label>اسم اللغة</label> 
         <td><input type="text" name = "language_name" value="<?php echo $language_name ;?>" /></td> 
     </p> 
    <p>  

         <td><input type="submit" name = "update" class="button edit-programming-language-btn" value="تحديث البيانات" /></td> 

    </p> 

         <input type="hidden" name = "examinee_id" value="<?php echo $_GET['language_id']; ?>" /> 


       </form> 








</div> 
</div> 
</body> 
</html> 

我的CSS警報代碼

.alert { 
    padding: 15px; 
    margin-bottom: 20px; 
    height:25px; 
    border: 1px solid transparent; 
    -moz-border-radius: 4px; 
    -webkit-border-radius: 4px; 
    border-radius: 4px; 
    display: block; 
} 
.alert-success { 
    color: #3c763d; 
    background-color: #dff0d8; 
    border-color: #d6e9c6; 
    border-top-color: #c9e2b3; 
} 
.alert-danger { 
    color: #a94442; 
    background-color: #f2dede; 
    border-color: #ebccd1; 
    border-top-color: #e4b9c0; 
} 
.alert p { 
    text-align: center; 
    font-size:20px; 
    line-height:25px; 
    margin-bottom: 5px; 
    margin-top: 0px; 
} 
+1

我只想花一點時間提一下,你應該使用準備好的語句而不是使用mysqli_real_escape_string。準備好的語句比運行mysqli_query更安全,速度更快。 –

+0

這會更好,如果你分享一個活的鏈接或使JSFiddle – OverCoder

回答

1

檢查是否發佈數據,然後打印消息。

下面是代碼

<?php 
    if($_POST){ 

     <div class="alert alert-success"> 
      <button type="button" class="close" > 
       &times; 
      </button> 
     <p><?php echo $msg;  ?></p> 
     </div> 
    }  
?> 
+0

抱歉,但它不工作 – mohammed

+0

@mohammed檢查更新的答案 – geeksal

+0

完美的工作感謝您的努力 – mohammed

0
<div class="alert alert-success <?=isset($_POST['update']) ? '' : 'hidden' ?>"> 
    <button type="button" class="close" > 
       &times; 
    </button> 
<p><?php echo $msg;  ?></p> 
</div> 

這將hidden CSS類應用到你的警告框,如果一直沒有後調用。這看起來像bootstrap,所以這個類應該已經被定義了。

該片段未經測試,但它應該給你一個大致的想法。

+0

@尼古拉斯安德森抱歉,但它不工作 – mohammed