0

我一直在寻找如何做到这一点的堆栈,但是对我来说它只是不想工作而且我开始变得一无所知。

我想要实现的是将文本字段(ckeditor)中的数据保存在html文件中。我试图通过处理将文件保存在edit_docInc.php中来实现这一点。

我所做的是尝试运行 JQuery 以将数据从 edit_doc.php 获取到 edit_docInc.php,完成后我想用名为 show_doc.php 的文件刷新 edit_doc.php 中的 DIV 并在滑块中滑动到它。

这是我到目前为止得到的:edit_doc.php

$docfile = "./documents/" . $cursus['name'] . "/" . $docfilename . ".html";
echo("<h1>Editing Document: " . $rows['name'] . "</h1>
<a id='slider-editbtn'>Edit</a> | <a id='slider-viewbtn'>Preview</a>");
echo("<div id='slider'>
    <div id='slider-content'>
        <div id='left'>
            <form name='editdoc' id='editdoc' action='" . $_SERVER['REQUEST_URI'] . "' method='post'>
            <input type='hidden' name='docid' value='" . $docfile . "' />
            <textarea name='mainEditor' id='mainEditor'>");
                include($docfile);
            echo("</textarea>
            <a class='button save' id='save'>SAVE DOCUMENT</a>
            <script>
                CKEDITOR.replace('mainEditor');

                $('#save').click(function (e) {
                    $.ajax ({
                        type: 'POST',
                        url: 'edit_docInc.php',
                        data: { 'form' : $('#editdoc').serialize()},
                        success: function(ex) {
                            $('right').load('show_doc.php');
                            $('#slider-viewbtn').addClass('active');
                            $('#slider-editbtn').removeClass('active');
                            $('#slider-content').animate({left:'-=940px'}, 400);
                            sliderPos = 2;
                            alert('loaded!');
                        }
                    })
                });
            </script>

        </div>
        <div id='right'>");
            include('show_doc.php');
        echo("</div>
    </div>
</div>");

edit_docInc.php

echo("<script>alert('got into script!');</script>");
$docfile = mysqli_real_escape_string($con, $_POST['docfile']);
$data = $_POST['mainEditor'];
$handle = fopen($docfile, 'w') or die("Can't open the file, please contact an administrator.");
fwrite($handle, $data);
fclose($handle);
echo("<div id='alert success'><span>Success:</span> File has been successfully saved!</div>");

show_doc 太简单而无法真正显示。顺便说一句 edit_docInc.php 没有提醒我,所以它甚至没有进入 edit_docInc.php

如果有人知道答案,不胜感激。

4

1 回答 1

0

我是个白痴,似乎我试图进入的页面位于edit_doc.php(inc)的同一个映射中,但是edit_doc.php是documents.php中的一个包含在inc映射之外,因此是URL我需要使用的是 inc/edit_docInc.php 而不仅仅是 edit_docInc.php。

于 2013-06-11T10:27:56.737 回答