2017-06-04 95 views
0

我不明白爲什麼單選按鈕在向數據庫提交正確的值後沒有保持檢查狀態。 我可以在數據庫中看到正在更新的值,但相應的單選按鈕是空的。 你能幫我嗎?提交正確的值後單選按鈕不會保留檢查

<?php 

session_start(); 

include 'connect_to_database.php'; 
$tbl_name="members"; // Table name 
$db = connect_to_database(); 

$email = $_SESSION['email']; 

// To protect MySQL injection (more detail about MySQL injection) 

function add_value_to_members($db, $email, $key, $value) 
{ 
    $new_name=$_POST[$value]; 
    $new_name = stripslashes($new_name); 
    $new_name = mysqli_real_escape_string($db, $new_name); 
    if (strlen($new_name) > 0){ 
     $new_name_sql="UPDATE members SET $key='$new_name' WHERE email='$email'"; 
     $result=mysqli_query($db, $new_name_sql); 
     echo $result; 
    } 
} 

add_value_to_members($db, $email, "gender", "new_gender"); 

header("Location: ../edit_user.php"); 
exit(); 

// html 

<div class="form-group"> 
    <label class="col-lg-3 control-label">Gender</label> 
    <div class="col-lg-8"> 
     <div class="radio"> 
      <label> 
       <input type="radio" name="new_gender" value="male" <?php if (isset($_POST['gender']) && $_POST['gender'] == "male") echo "checked"; ?>> Male 
      </label> 
     </div> 
     <div class="radio"> 
      <label> 
       <input type="radio" name="new_gender" value="female" <?php if(isset($_POST['gender']) && $_POST['gender']=="female") echo "checked"; ?>> Female 
      </label> 
     </div> 
    </div> 
</div> 
+0

值只顯示在SELECT,那是什麼?並且我沒有看到帶有Post方法的表單標籤 –

+0

您還發布了[單選按鈕沒有保持檢查狀態](https://stackoverflow.com/q/44230576/1415724)編輯:您剛剛刪除了哪個表單。 –

+0

所以你拿起我的第二條評論,但不是第一條,所以......?對此需要回應。或者你想讓我們爲你寫嗎? –

回答

1

您的表單標籤在哪裏?無論如何,我認爲它與發送重定向頭並且不發送帖子有關,如果這是您需要的,可以在更新到數據庫之後立即將單選按鈕值放入會話變量中,並檢查您的單選按鈕標記對於會話的價值,或者你可以使用一個獲取參數,這將得到sended頭文件url