javascript - Why does json_encode return empty variable? -


i trying create edit modal dialog using ajax , php question-answer table. clicking edit, modal dialog display to-be-edited data particular row tracing id of question in database. tried tutorial script worked, when applied it, edit dialog empty. seems json_encode returning null. why that? , how fix it? i'm totally new ajax, appreciate if help.

i'm using php 7.

dbconnect.php

<?php  $con = mysqli_connect("localhost","root","","register"); mysqli_set_charset($con, 'utf8'); // check connection if (mysqli_connect_errno())   {   echo "failed connect mysql: " . mysqli_connect_error();   } ?> 

index.php

    <div id="add_data_modal" class="modal fade">         <div class="modal-dialog">              <div class="modal-content">                   <div class="modal-header">                        <button type="button" class="close" data-dismiss="modal">&times;</button>                        <h4 class="modal-title">php ajax update mysql data through bootstrap modal</h4>                   </div>                   <div class="modal-body">                        <form method="post" id="insert_form">                             <label>enter question here</label>                             <textarea name="question" id="question" class="form-control"></textarea>                             <br />                             <label>enter first answer</label>                             <input name="answer1" id="answer1" class="form-control"></input>                             <br />                             <label>enter first answer</label>                             <input name="answer2" id="answer2" class="form-control"></input>                             <br />                           <label>enter first answer</label>                             <input name="answer3" id="answer3" class="form-control"></input>                             <br />                           <label>enter first answer</label>                             <input name="answer4" id="answer4" class="form-control"></input>                             <br />                            <input type="hidden" name="question_id" id="question_id" />                             <input type="submit" name="insert" id="insert" value="insert" class="btn btn-success" />                        </form>                   </div>                   <div class="modal-footer">                        <button type="button" class="btn btn-default" data-dismiss="modal">close</button>                   </div>              </div>         </div>    </div>    <script>    $(document).ready(function(){         $('#add').click(function(){              $('#insert').val("insert");              $('#insert_form')[0].reset();         });         $(document).on('click', '.edit_data', function(){              var question_id = $(this).attr("id");              $.ajax({                   url:"fetchquestion.php",                   method:"post",                   data:{question_id:question_id},                   datatype:"json",                   success:function(data){                        $('#question').val(data.question);                        $('#answer1').val(data.answer1);                        $('#answer2').val(data.answer2);                        $('#answer3').val(data.answer3);                        $('#answer4').val(data.answer4);                        $('#question_id').val(data.id);                        $('#insert').val("update");                        $('#add_data_modal').modal('show');                   }              });         });         $('#insert_form').on("submit", function(event){              event.preventdefault();              if($('#question').val() == "")              {                   alert("answer 1 required");              }              else if($('#answer1').val() == '')              {                   alert("answer 2 required");              }              else if($('#answer2').val() == '')              {                   alert("answer 3 required");              }              else if($('#answer3').val() == '')              {                   alert("answer 4 required");              }              else              {                   $.ajax({                        url:"insertquestion.php",                        method:"post",                        data:$('#insert_form').serialize(),                        beforesend:function(){                             $('#insert').val("inserting");                        },                        success:function(data){                             $('#insert_form')[0].reset();                             $('#add_data_modal').modal('hide');                             $('#question_table').html(data);                        }                   });              }         });   

fetchquestion.php

<?php    require('dbconnect.php');    if(isset($_post["question_id"]))    {         $query = "select * questions id = '".$_post["question_id"]."'";         $result = mysqli_query($con, $query);          $row = mysqli_fetch_array($result);        echo json_encode($row);    } ?> 

insertquestion.php

<?php   require('dbconnect.php');  if(!empty($_post))    {         $output = '';         $message = '';         $question = mysqli_real_escape_string($con, $_post["question"]);         $answer1 = mysqli_real_escape_string($con, $_post["answer1"]);         $answer2 = mysqli_real_escape_string($con, $_post["answer2"]);         $answer3 = mysqli_real_escape_string($con, $_post["answer3"]);         $answer4 = mysqli_real_escape_string($con, $_post["answer4"]);         if($_post["question_id"] != '')         {              $query = "              update questions               set quest_desc ='$question',               ans1 ='$answer1',               ans2 ='$answer2',               ans3 = '$answer3',               ans4 = '$answer4'               id='".$_post["question_id"]."'";              $message = 'question updated';         }         else         {              $query = "              insert questions(quest_desc, ans1, ans2, ans3, ans4)              values('$question', '$answer1', '$answer2', '$answer3', '$answer4');              ";              $message = 'data inserted';         }         if(mysqli_query($con, $query))         {              $output .= '<label class="text-success">' . $message . '</label>';              $select_query = "select * questions order id desc";              $result = mysqli_query($con, $select_query);              $output .= '                   <table class="table table-bordered">                           <tr> <th width="5">no. </th>                           <th width="45%">questions</th>                             <th width="10%">answer</th>                             <th width="10%">answer</th>                            <th width="10%">answer</th>                             <th width="10%">answer</th>                             <th width="5">edit</th>                           <th width="5">view</th>                         </tr>              ';             while($row = mysqli_fetch_array($result))              {                   $output .= '                         <tr>                          <td> <strong><?php $count++; ?> </strong></td>                          <td>' . $row["quest_desc"] . '</td>                         <td>' . $row["ans1"] . '</td>                         <td>' . $row["ans2"] . '</td>                          <td>' . $row["ans3"] . '</td>                          <td>' . $row["ans4"] . '</td>                            <td><input type="button" name="edit" value="edit" id="' . $row["id"] . '" class="btn btn-info btn-xs edit_data" /></td>                           <td><input type="button" name="view" value="view" id="' . $row["id"] . '" class="btn btn-info btn-xs view_data" /></td>                         </tr>                     ';               }              $output .= '</table>';         }         echo $output;    }    ?> 


Comments

Popular posts from this blog

angular - Ionic slides - dynamically add slides before and after -

minify - Minimizing css files -

Add a dynamic header in angular 2 http provider -