2017-04-17 82 views
-1

我有下面的代码,它非常适合存储单选按钮的值并写入数据库(HTML - > Javascript - > PHP)。数据库中的默认单选按钮值

现在我有一个更新的模式,并希望填充先前记录的单选按钮值。我不知道我做错了什么,但我无法获得用户点击更新时单选按钮的默认值。

HTML

<div class="form-group"> 
      <label for="update_flag">Update Flag:</label> 
      <br> 
      <label class="radio-inline"><input type="radio" name="update_flag" value="Yes">Yes</label> 
      <label class="radio-inline"><input type="radio" name="update_flag" value="Maybe">Maybe</label> 
      <label class="radio-inline"><input type="radio" name="update_flag" value="No">No</label> 
     </div> 

的Javascript:该JSON.Parse返回YES/NO /也许和我检查它是否正确返回它。

function GetUserDetails(id) { 

$("#hidden_user_id").val(id); 
$.post("ajax/readUserDetails.php", { 
     id: id 
    }, 
    function (data, status) { 
     // PARSE json data    
     var va = JSON.parse(data); 
     $("output[name=update_flag]:checked").val(va.flag); 
    } 
); 
// Open modal popup 
$("#update_user_modal").modal("show");} 

PHP:

<?php 
    // include Database connection file 
    include("db_connection.php"); 

    // check request 
    if(isset($_POST['id']) && isset($_POST['id']) != "") 
    { 
    // get ID 
    $id = $_POST['id']; 

    // Get Details 
    $query = "SELECT flag, 
    FROM list WHERE id = '$id'"; 
    if (!$result = mysql_query($query)) { 
     exit(mysql_error()); 
    } 
    $response = array(); 
    if(mysql_num_rows($result) > 0) { 
     while ($row = mysql_fetch_assoc($result)) { 
      $response = $row; 
     } 
    } 
    else 
    { 
     $response['status'] = 200; 
     $response['message'] = "Data not found!"; 
    } 
    // display JSON data 
    echo json_encode($response); 


    } 

     else 
    { 
     $response['status'] = 200; 
     $response['message'] = "Invalid Request!"; 
    } 
+0

为什么downvote? – Warlord

+0

你意识到这个声明(张贴)会失败'$查询=“选择标志, FROM list' - 除非你没有张贴完整的查询它 –

+0

你也开到了严重的SQL注入 –

回答

0

我觉得$("output[name=update_flag]:checked").val(va.flag);是哪里出了问题。你应该尝试这样的事:

$("input[name=update_flag][value=" + radioBtnValueToCheck + "]").prop('checked', true); 
+0

您的先生是天才,那正是我错了。 – Warlord