XAMPP PHP файл работает, но нет результата?

0

Я установил 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, и он отлично работает, но этот ответ просто не отвечает, может ли кто-нибудь увидеть, что я делаю неправильно?

Теги:
xampp

3 ответа

2
Лучший ответ

Вам необходимо передать файлы на ваш веб-сервер - сделать запрос GET на URI на вашем веб-сервере вместо того, чтобы делать запрос на файл на вашем компьютере.

Итак, измените строку:

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 );
    });
});
0

Используйте относительный путь вместо локального пути на вашем диске. Просто введите имя файла (если имя файла находится в корневой директории). Старайтесь не использовать абсолютные пути (например, http://localhost/reverse.php), потому что тогда вам придется изменить его при загрузке/изменении его на другой сервер, и это не является устойчивым решением.

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

Во-вторых, я бы рекомендовал использовать другие имена переменных. Я думаю, что у вас возникают проблемы с использованием текстовой переменной, потому что text() является функцией в jQuery.

Пытаться:

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

В некоторых случаях это хорошо, чтобы быть общим по поводу именования, но ввод и текст далеки от жанровых. Эти имена не говорят немного о реальном контексте.

0

Вам нужно получить файл через запрос на ваш сервер XAMPP. Попробуйте что-нибудь вроде

$.get( 'http://localhost/amit/reverse.php', { 'input': text }, function( data )
{
    $('#feedback').text( data );
});
  • 0
    Теперь я получаю XMLHttpRequest не может загрузить localhost / amit / reverse.php? Input = . Нулевой источник не разрешен Access-Control-Allow-Origin.
  • 0
    @Canvas: перепроверьте, есть ли у вас http:// .

Ещё вопросы

Сообщество Overcoder
Наверх
Меню