ajax运行php文件

时间:2014-03-27 15:35:32

标签: php ajax

我在我的页面上的.html文件中有这个脚本,我试图从这里运行getip.php文件,而不是将文件重命名为.php。我尝试了这个ajax调用,但它没有工作,也没有在logfile.txt中记录ip。请让我知道我做错了什么。

.html文件头部的Ajax:

 <script>
    $(document).ready(function() {
         $.ajax({

                type: "GET",
                url: "getip.php",

            }); // Ajax Call
        }); //event handler
   </script>

来自getip.php的代码:

<?php
// location of the text file that will log all the ip adresses
$file = 'logfile.txt';

// ip address of the visitor
$ipadress = $_SERVER['REMOTE_ADDR'];

// date of the visit that will be formated this way: 29/May/2011 12:20:03
$date = date('d/F/Y h:i:s');

// name of the page that was visited
$webpage = $_SERVER['SCRIPT_NAME'];

// visitor's browser information
$browser = $_SERVER['HTTP_USER_AGENT'];

// Opening the text file and writing the visitor's data
$fp = fopen($file, 'a');

fwrite($fp, $ipadress.' - ['.$date.'] '.$webpage.' '.$browser."\r\n");

fclose($fp);
?>

2 个答案:

答案 0 :(得分:1)

您是否尝试过$.post()功能?例如:

<script>
    $(document).ready(function() {
         $.post('getip.php'); // Ajax Call
        }); //event handler
</script>

您还可以添加回调作为第二个参数。

答案 1 :(得分:0)

我会使用ajax调用的完整URL。根据您的框架,您可能无法访问预期的端点。您可以在php文件中尝试echo 'test';并在ajax调用中添加done处理程序,以确保您首先访问php文件:

.done(function( data ) {
  alert(data);
});