为什么表单提交发送获取请求而不发布请求?

时间:2018-08-29 00:05:54

标签: php html post get

有很多相同的文章,但没有一篇对我有用。 这是PHP代码。

<?php
        if($_SERVER['REQUEST_METHOD'] === 'POST' && !empty($_POST['preview-form-comment'])){
            echo $_POST['preview-form-comment'];
            $_SESSION['currentcode']=$_POST['preview-form-comment'];
          }
    ?>

这是html代码的形式。

<form id="preview-form" method="POST">
            <textarea required class="codemirror-textarea" rows="100" name="preview-form-comment" id="preview-form-comment"><?php echo $comment ?></textarea>
            <br>
            <button type="button" id="preview-form-submit">Submit</button>
            <!-- <input type="submit" onclick="savedata();" id="preview-form-submit" value="Submit"> -->
          </form>

这是脚本。

<script>
      $('#preview-form-submit').on('click',function(){
        savedata();
        $('#preview-form').submit();
      });
    </script>

1 个答案:

答案 0 :(得分:1)

只需尝试此代码,它就可以工作。

<?php
if($_SERVER['REQUEST_METHOD'] == 'POST' && !empty($_POST['preview-form-comment'])){
    echo $_POST['preview-form-comment'];
    $_SESSION['currentcode']=$_POST['preview-form-comment'];
}
?>
<!DOCTYPE html>
<html lang="en" dir="ltr">
<head>
    <meta charset="utf-8">
    <title></title>
</head>
<body>
<form id="preview-form" method="POST">
    <textarea required class="codemirror-textarea" rows="3" name="preview-form-comment" id="preview-form-comment"></textarea>
    <br>
    <button type="button" id="preview-form-submit">Submit</button>
    <!-- <input type="submit" onclick="savedata();" id="preview-form-submit" value="Submit"> -->
</form>
</body>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js" integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8=" crossorigin="anonymous"></script>
<script>
    $('#preview-form-submit').on('click',function(){
        $('#preview-form').submit();
    });
</script>
</html>

请尝试将其放入一个简单的.php文件中。

注意:由于您没有发布savedata();函数,因此我将其删除了。但是请随时将其添加到这篇文章中,我将更改代码