在GET Special.php中发送POST HTTP请求不起作用?

我需要在GET Special.php中发送POST HTTP请求,但它不起作用。请告诉我这段代码有什么问题,谢谢,并纠正我的错误。

function getOnspecial(id)
        {   
            var d = <?php 
                        if(isset($_GET['d'])&&empty($_GET['d'])===false){
                            echo "'".$_GET['d']."'";
                        }else{
                            echo "\"\"";
                        }
                        ?>;  
            $.post("getspecial.php", 
                    { 
                        d:d,
                        id: id
                       // category:"onspecial"                
                    },
                   function(data) {

                     $('#ospecial_title').html(data.title);
                     $('#unmoved').html(data.title);    
                     $('#onspecial_description').html(data.description);
                     $('#onspecial_address').html(data.address);             
                     $('#onspecial_email').attr('href','mailto:'+data.email);
                     $('#onspecial_email').text(data.email);
                     $('#onspecial_phone').text(data.phone);
                     $('#onspecial_website_anchor').text(data.website);
                     $('#onspecial_website_anchor').attr('href','mailto:'+data.website);
                     var lat = data.lat;
                     var lng = data.long;

                //google map code   
                          var myLatLng = new google.maps.LatLng(lat,lng);
                        var mapOptions = {
                        center: myLatLng,
                        zoom: 15,
                        mapTypeId: google.maps.MapTypeId.ROADMAP
                    };
                        var map = new google.maps.Map(document.getElementById("map_canvas"),
                            mapOptions);


                        var marker = new google.maps.Marker({
                        position: myLatLng, 
                        map: map,
                        title: data.title,
                        clickable: true,

                  });
                    //google map code ends here     

            },"json");
        }

如果设置了$ _POST ['d'],它就会很好地工作,此$ _POST ['d']的目的是在数据库中选择一个表,并且每次$ _POST ['d']被设置为用户,它就无法正常工作。我不知道是否该将数据发送到getspecial.php......

ChatGPT尝试为您解答,仅供参考
看起来你正在尝试在getOnspecial函数中发送一个POST请求,并将请求发送到getspecial.php。这段代码似乎没有任何明显的错误,但是有几个地方可以检查:

  • 确保getspecial.php正在正确处理POST请求。您可以使用var_dump($_POST)来查看getspecial.php是否收到了您发送的数据。
  • 确保getspecial.php返回的数据是有效的JSON,并且是您期望的格式。您可以使用浏览器的开发人员工具来查看getspecial.php返回的数据。
  • 确保$.post方法的回调函数中的所有变量都是有效的。您可以在回调函数中使用console.log(data)来查看您收到的数据。