XAMPP PHP文件有效,但没有结果?

时间:2013-09-22 17:45:21

标签: php jquery xampp

我已安装XAMPP在我的计算机上运行PHP文件,这是我试图执行的PHP文件

<?php 
if(isset($_GET['input']))
{
    $string = $_GET['input'];
    echo strrev($string);
}
?>

这是我的基本HTML文件

<html land="en">
<head>
    <meta carset="utf-8">
    <link rel="stylesheet" type="text/css" href="style.css";
</head>

<body>
<!-- Document Ready Event -->
<input id="text" type="text" /><input id="submit" type="button" value="Submit" />

<div id="feedback"></div>
    <script src="../jquery-1.10.2.min.js"></script>
    <script src="script.js"></script>
</body>
</html>

这是我的JS文件

//将值传递给PHP文件并获取内容并显示内容

$('#submit').click( function()
{
var text = $('#text').val();
$.get( 'C:/xampp/htdocs/amit/reverse.php', { 'input': text }, function( data )
    {
        $('#feedback').text( data );
    });
});

点击按钮时,Chrome会告诉我这个。

标题是

Request URL:file:///C:/xampp/htdocs/amit/reverse.php?input=Hello
Query String Parametersview sourceview URL encoded
input:Hello

,响应是

<?php 
if(isset($_GET['input']))
{
    $string = $_GET['input'];
    echo strrev($string);
}
?>

现在我在我的XAMPP PHP端放了一个不同的文件,它工作正常,但是这个没有响应,有人能看到我做错了吗?

3 个答案:

答案 0 :(得分:3)

您需要将文件传递到您的网络服务器 - 向您的网络服务器上的URI发出GET请求,而不是向您计算机上的文件发出请求。

所以,改变一下:

C:/xampp/htdocs/amit/reverse.php

http://localhost/amit/reverse.php

或者,如果所有文件都在同一目录中,结构如下:

-- htdocs
    - amit
        - <somefile>.html
        - script.js
        - style.css
        - reverse.php

然后,您只需使用reverse.php而不是指定完整路径。

完整代码作为示例:

$('#submit').click( function()
{
var text = $('#text').val();
$.get( 'http://localhost/amit/reverse.php', { 'input': text }, function( data )
    {
        $('#feedback').text( data );
    });
});

答案 1 :(得分:0)

您需要通过请求获取文件到您的XAMPP服务器。尝试像

这样的东西
$.get( 'http://localhost/amit/reverse.php', { 'input': text }, function( data )
{
    $('#feedback').text( data );
});

答案 2 :(得分:0)

在驱动器上使用相对路径而不是本地路径。只需输入文件名(如果filename在root目录中)。尽量不要使用绝对路径(如http://localhost/reverse.php),因为在上传/更改它到另一台服务器时你必须改变它,这不是一个可持续的解决方案。

$.get( '/reverse.php', { 'input': text }, function( data )
{
    $('#feedback').text( data );
});

其次,我建议使用其他变量名称。我认为你在使用text变量时遇到问题,因为text()在jQuery中是函数。

<强>尝试:

var textOfElement = $('#text').val();
$.get( '/reverse.php', { 'input': textOfElement }, function( data )
{
    $('#feedback').text( data );
});

在某些情况下,关于命名是通用的很好,但输入和文本远非一般。这些名字并没有说明实际情况。