Доступ к получению данных и публикации данных на одной странице

#php #ajax #post #get

#php #ajax #Публикация #получить

Вопрос:

Я довольно новичок в публикации, получении и тому подобном, но пытаюсь изучить это, и теперь у меня есть эта проблема. Я использую PHP для сбора данных из текстового файла, отправляя их через URL с помощью Ajax в Javascript. Таким образом, это делается без обновления страницы (и работает). Но затем на той же странице я также размещаю данные формы с помощью Javascript при нажатии переключателей (которые также отправляют форму), чтобы они были как-то доступны для меня (например, сохранены в базе данных или отражены на странице). Поскольку страница обновляется при отправке формы, я думаю, что это не должно быть такой проблемой?

До сих пор я только пытался добавить приведенный ниже код в post, но это не работает, потому что, как только я добавляю больше PHP-кода в свой документ, страница вылетает (становится пустой). Я предполагаю echo , что часть не работает из-за предыдущего echo в коде PHP, но как мне это решить?

Я также могу добавить, что PHP-код, который у меня был до того, как я попытался добавить этот фрагмент ниже, должен заканчиваться символом a die , чтобы страница функционировала должным образом. Поэтому мне трудно понять, куда и как поместить еще какой-либо PHP-код.

Отправка данных формы, похоже, работает, потому что страница обновляется при нажатии переключателей.

 <?php
    if ( isset($_POST['image'])
    {
        $image = $_POST[ 'image' ]; // 'image' is the name of the radio buttons
        echo "$image<br>";
        //Will result in "image1" or "image2", etc - whatever "value" you assigned to the radio buttons
    }
?>

<script>
$(document).ready(function(){
    // Bind to change event for all radio buttons
    $('input[type="radio"]').on('change', function() {
        // Submit the form ("this" refers to the radio button)
        $(this).closest('form').submit();
    });
});
</script>
  

Это PHP-код, к которому я хочу что-то добавить, чтобы получить доступ к опубликованным данным формы.

 <?php
    if ( isset($_GET['firstItem']) amp;amp; isset($_GET['numItems']) )
    {
        $firstItem = $_GET['firstItem'];
        $numItems = $_GET['numItems'];

        $subtestNumber = 7;
        $filename = sprintf("subtests/%d.txt", $subtestNumber);

        $fileHandle = fopen($filename, "rt");

        for ($numLinesToSkip=0; $numLinesToSkip<$firstItem; $numLinesToSkip  )
            fgets($fileHandle);

        $results = array();
        for ($itemCount=0; $itemCount<$numItems; $itemCount  )
        {
            $curLine = fgets($fileHandle);
            $curLine = trim($curLine);
            array_push($results, $curLine);
        }
        fclose($fileHandle);

        echo json_encode($results);
        die;   // stop execution now - dont output the html below

    }
?>
  

Комментарии:

1. я думаю, что вам нужно добавить сюда больше кода

2. @devpro Ок, спасибо, теперь добавил остальную часть моего PHP-кода. Подумал, что это может быть слишком много для всего моего Javascript, но могу добавить часть Ajax, если это уместно.