PHP echo 在 POST 中不起作用

标签 php jquery html twitter-bootstrap

我正在使用 bootstrap 和更多库创建一个输入字段(请参阅下面的 HTML,是的,它是荷兰语)。来自该字段的数据使用 jQuery 发送到我的 PHP(见下文)。我使用 jQuery 将 Markdown 输入转换为 HTML,使用摊牌。

PHP 生成一个文件,其中存储了正确的输入数据,并用“|”分隔。 “作者”输入是可选的。这一切都很好

出现的问题是我想给用户反馈,使用 echo 。只是,这似乎没有完成?! PHP 中的所有其他函数都会执行,它会在目标目录中创建一个文件,echo 除外。

我无法在 Stackoverflow 或其他任何地方找到答案。我做错了什么?

HTML

<div class="panel panel-default">
<div class="panel-heading">
    Nieuw artikel toevoegen
</div>
<div class="panel-body">
    <div class='edit'>
        <form action='' method='post'>
            <div class='input-group'>
                <span class='input-group-addon' id='basic-addon1'>Kop*</span>
                <input type='text' class='form-control' placeholder='Kop' aria-describedby='basic-addon1' id='title'>
            </div>
            <br>
            <div class='input-group'>
                <span class='input-group-addon' id='basic-addon1'>Datum*</span>
                <input type='text' class='form-control' placeholder='Datum' aria-describedby='basic-addon1' id='date'>
            </div>
            <br>
            <div class='input-group'>
                <span class='input-group-addon' id='basic-addon1'>Auteur (evt.)</span>
                <input type='text' class='form-control' placeholder='Auteur (evt.)' aria-describedby='basic-addon1' id='author'>
            </div>
            <br>
            <div>
                <h4>Inhoud van het artikel*</h4>
                <textarea name='textArt' data-provide='markdown' language='nl' rows='20' id='text'></textarea>
            </div>
            <!--<input type='file' id='filetag'>-->
            <br>
            <button name='save' class='btn btn-default' id='submit'>Opslaan</button><br>
        </form>
    </div>
</div>

jQuery
$(document).ready(function(){
        $("#submit").click(function(){
            //Request input
            var author = $("#author").val();
            var date = $("#date").val();
            var title = $("#title").val();
            var markdown = $("#text").val();

            //Convert Markdown to HTML
            var converter = new showdown.Converter(),
            html = converter.makeHtml(markdown);

            //Send input
            if($.post("edit.php?loc=nieuws", {text: html, title: title, date: date, author: author})){
                console.log("succes");
            }
        })
    })

PHP

if ($_POST['text'] != "") {
    $directory = "some_target_dir/";

    $articles = scandir($directory);

    $num_files = count($articles) - 2;

    $int = $num_files + 1;

    $dir = $directory.$int.".txt";

    $end = $_POST['date']."|".$_POST['title']."|".$_POST['text'];

    if(!$_POST['author'] == "") {

        $end = $end."|".$_POST['author'];

    }

    $file = fopen($dir, "w") or die("Oops a mistake");

    fwrite($file, $end);

    fclose($file);

    //This one doesn't work?!
    echo '<div class="alert alert-success">Succes!</div>';
}

最佳答案

也许您的 PHP 代码的一部分失败了,请调试返回的内容,如下所示:

$.post("url", {params}).done(function(result){
    console.log(result);
    // This will show you what the returning output is.
}); 

编辑:将您的代码更改为:

$(document).ready(function(){
        $("#submit").click(function(e){
            e.preventDefault();
            //Request input
            var author = $("#author").val();
            var date = $("#date").val();
            var title = $("#title").val();
            var markdown = $("#text").val();

            //Convert Markdown to HTML
            var converter = new showdown.Converter(),
            html = converter.makeHtml(markdown);

            //Send input
            if($.post("edit.php?loc=nieuws", {text: html, title: title, date: date, author: author})){
                console.log("succes");
            }
        })
    })

关于PHP echo 在 POST 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41790414/

相关文章:

javascript - 多看少看按钮

jquery - JQplot : blank chart when print IE

html - 带有 HTML 和 CSS 的无限滚动照片横幅在悬停时暂停动画

html - 尽管使用了溢出标签,但无法让 div 在页面内滚动

php - 使用 Telegram 的 API 创建群组

PHP CLI include() 没有找到文件

javascript - jQuery 无法在动态生成的按钮或 p 标签上运行 .click 事件

javascript - 如何激活单独文件夹中的JS文件

php - 在 Laravel 中检查整数值是否大于 0

php - 在 Yoast Wordpress SEO 插件中设置自定义规范 URL