Ajax неопределенный идентификатор пост PHP - PullRequest
0 голосов
/ 30 июня 2018

Итак, у меня есть два файла index.php и edit.php

В основном я хочу отправить и получить переменную id из index.php и вывести echo в edit.php для изучения ajax, но я пробовал каждый учебник в интернете, я следую им, к сожалению, я не могу понять, почему я получаю эту ошибку, кстати, вот код:

Index.php

<?php  
 include ('connection.php');  
 $query ="SELECT * FROM buku ORDER BY id ASC";  
 $result = mysqli_query($con, $query);  
 ?> 
<!DOCTYPE html>
<html>
<head>
    <script type="text/javascript" src="jquery.js"></script>
    <title></title>
</head>
<body>
        <table>  
            <thead>  
             <tr>  
                <td>Id</td>
                <td>No Buku</td>  
                <td>Nama Buku</td>   
                <td>Tahun Terbit</td> 
                <td>Action</td>                                
            </tr>  
            </thead>                    
            <?php  
            while($row = mysqli_fetch_array($result))  
            { ?>  
                <tr>  
                    <td><?php echo $row['id'] ?></td> 
                    <td><?php echo $row['nobuku'] ?></td> 
                    <td><?php echo $row['namabuku'] ?></td> 
                    <td><?php echo $row['tahunterbit'] ?></td>  
                    <td><button type="buton" class="edit" id="<?php echo $row['id'] ?>">Edit</button>
                    </td>  
                </tr>
            <?php
            };
            ?>    
        </table> 

       <div class="tampil"></div>

        <script type="text/javascript">
        $(document).on('click', '.edit', function(){
           var id = $(this).attr("id");
            $.ajax({
             type:"post",
             url:"edit.php",    
             data:{id:id},
             success:function(data){
               $('.tampil').load("edit.php");
             }
            });
          });
        </script>

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

и вот edit.php

<?php  
 include ('connection.php');  
 $id = $_POST['id'];
 echo $id;
?> 

проблема в том, что когда я нажимал кнопку id = edit, в моем index.php всегда отправка неопределенного идентификатора, это означает, что переменная id не отправляет правильно, но когда я редактирую часть ajax в alert (id), он печатает переменная id, поэтому проблема в том, что я не знаю, почему он не может отправить Переменная id на страницу edit.php.

Спасибо за вашу помощь

Ответы [ 2 ]

0 голосов
/ 30 июня 2018

Проблема в том, что вы сначала загружаете файл edit.php с помощью ajax и отправляете ему идентификатор. Но затем, после загрузки запроса ajax, вы снова загружаете edit.php, на этот раз без идентификатора.

Вы уже получили ответ на запрос ajax, вам нужно только использовать его.

<script type="text/javascript">
    $(document).on('click', '.edit', function(){
       var id = $(this).attr("id");
        $.ajax({
            type:"post",
            url:"edit.php",    
            data:{id:id},
            success:function(data){
                $('.tampil').html(data);
            }
        });
    });
</script>
0 голосов
/ 30 июня 2018

изменить edit.php на этот

<?php  
    include ('connection.php');  
     if (isset($_POST['id'])){
       echo $_POST['id'];
   }
    ?> 

и

<Script type="text/javascript">
        $(document).on('click', '.edit', function(){
           var id = $(this).attr("id");
            $.ajax({
             type:"post",
             url:"edit.php",    
             data:{id:id},
             success:function(data){
               $('.tampil').html(data);
             }
            });
          });
        </script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...