Javascript iframe中的Php未显示

Javascript iframe中的Php未显示,javascript,php,html,Javascript,Php,Html,我已经构建了一个WYSIWYG编辑器作为我的管理面板的一部分,它工作得非常好,并发布到主页。但是,如果我想编辑这篇文章,我希望同样的内容显示在iframe中,这样我就可以在不丢失样式的情况下进行更新 以下是使用工作iframe创建帖子: <form action="actions/newDocAdd.php" method="post" id="rtf"> <input type="text" name="doc_title" id="doc_title" requir

我已经构建了一个WYSIWYG编辑器作为我的管理面板的一部分,它工作得非常好,并发布到主页。但是,如果我想编辑这篇文章,我希望同样的内容显示在iframe中,这样我就可以在不丢失样式的情况下进行更新

以下是使用工作iframe创建帖子:

<form action="actions/newDocAdd.php" method="post" id="rtf">
    <input type="text" name="doc_title" id="doc_title" required="required" placeholder="Document Title"/><br />



    <button class="postEditBtn" type="button" onclick="bold()" title="Bold Text"><i class="fa fa-bold"></i></button>
    <button class="postEditBtn" type="button" onclick="italic()" title="Italic Text"><i class="fa fa-italic"></i></button>
    <button class="postEditBtn" type="button" onclick="underline()" title="Underline Text"><i class="fa fa-underline"></i></button>
    <button class="postEditBtn" type="button" onclick="fontName()" title="Font Family"><i class="fa fa-font"></i></button>
    <button class="postEditBtn" type="button" onclick="fontsize()" title="Font Size"><i class="fa fa-text-height"></i></button>
    <button class="postEditBtn" type="button" onclick="fontcolor()" title="Font Colour"><i class="fa fa-eraser"></i></button>
    <button class="postEditBtn" type="button" nclick="highlight()" title="Highlight Text"><i class="fa fa-magic"></i></button>
    <button class="postEditBtn" type="button" onclick="link()" title="Add/Edit Link"><i class="fa fa-link"></i></button>
    <button class="postEditBtn" type="button" onclick="unlink()" title="Remove Link"><i class="fa fa-chain-broken"></i></button>
    <button class="postEditBtn" type="button" onclick="justifyLeft()" title="Text align-left"><i class="fa fa-align-left"></i></button>
    <button class="postEditBtn" type="button" onclick="justifyCenter()" title="Text align-center"><i class="fa fa-align-center"></i></button>
    <button class="postEditBtn" type="button" onclick="justifyRight()" title="Text align-right"><i class="fa fa-align-right"></i></button>

    <br><br>

    <textarea name="doc_content" id="doc_content" placeholder="Document Content" style="display: none;"></textarea>
    <iframe name="editor" id="editor" style="width:100%; height: auto;"></iframe>

    <br><br> 
    <input onclick="formsubmit()" type="submit" value="Create Document" name="submit"/><br />


</form>







以下是更新页面:

<?php require_once '../../db_con.php'; 

if(!empty($_GET['doc_id'])){
    $doc = intval($_GET['doc_id']);
try{
    $results = $db->prepare('select * from doc_list where doc_id = ?');
    $results->bindParam(1, $doc);
    $results->execute();

    } catch(Exception $e) {
    echo $e->getMessage();
    die();
    }

    $doc = $results->fetch(PDO::FETCH_ASSOC);    
    if($doc == FALSE){

        echo '<div class="container">';
        echo "<img src='../img/404.jpg' style='margin: 40px auto; display: block;' />";
        echo "<h1 style='margin: 40px auto; display: block; text-align: center;' />Oh Crumbs! You upset the bubba!</h1>";
        echo '<a href="userList.php"  style="margin: 40px auto; display: block; text-align: center;">Get me outta here!</a>';
        echo'</div>';
        die();
    }
}

?>



<?php
    if(isset($doc)){
    ?>


<form action="actions/updateDoc.php" method="POST">
    <input type="hidden" value="<?php echo $doc['doc_id'] ?>" name="doc_id" />
    <input type="text" value="<?php echo $doc['doc_title'] ?>" name="doc_title" />
    <br />
    <input type="text" value="<?php echo $doc['doc_content'] ?>" name="doc_content" />
    <br />    


摆弄这个。jQuery非常棒,可以处理很多事情

当前脚本标记的放置位置:

使用以下内容创建名为loaddiv.php的页面:

<?php
echo['doc_content'];
?>

然后


$(文档).ready(函数(){
//$(“#editor1”).html(“”);
$(“#editor1”).load(“loaddiv.php”);
})

我找到了答案-下面是我用来让我在PHP中从数据库发布到iframe的JS:

<script>
var iframe = document.getElementById('editor'),
    iframedoc = iframe.contentDocument || iframe.contentWindow.document;

    iframedoc.body.innerHTML = '<?php echo $doc['doc_content']; ?> ';

</script>

var iframe=document.getElementById('editor'),
iframedoc=iframe.contentDocument | | iframe.contentWindow.document;
iframedoc.body.innerHTML='';

看起来您已经成功地在php、html和js之间建立了一种耦合。。。现在可能是完全重构的时候了。这里还有大约150行代码。一个好的问题通常提供一个孤立的问题。这意味着只发布与您所遇到的确切问题相关的代码。不知道这个问题是如何获得3张赞成票的,这意味着这是一个好问题。其他人不太可能从中受益。@naomik我知道这并不理想,但是直到现在它工作得很好,我只是想把数据库中的数据显示到iframe中,你有什么建议吗?评论不用于进一步讨论;这段对话已经结束。
<form action="actions/updateDoc.php" method="POST">

    <input type="hidden" value="46" name="doc_id" />
    <input type="text" value="new document biatch!" name="doc_title" />
    <br />


    <button class="postEditBtn" type="button" onclick="bold()" title="Bold Text"><i class="fa fa-bold"></i></button>
    <button class="postEditBtn" type="button" onclick="italic()" title="Italic Text"><i class="fa fa-italic"></i></button>
    <button class="postEditBtn" type="button" onclick="underline()" title="Underline Text"><i class="fa fa-underline"></i></button>
    <button class="postEditBtn" type="button" onclick="fontName()" title="Font Family"><i class="fa fa-font"></i></button>
    <button class="postEditBtn" type="button" onclick="fontsize()" title="Font Size"><i class="fa fa-text-height"></i></button>
    <button class="postEditBtn" type="button" onclick="fontcolor()" title="Font Colour"><i class="fa fa-eraser"></i></button>
    <button class="postEditBtn" type="button" onclick="hiliteColor()" title="Highlight Text"><i class="fa fa-magic"></i></button>
    <button class="postEditBtn" type="button" onclick="link()" title="Add/Edit Link"><i class="fa fa-link"></i></button>
    <button class="postEditBtn" type="button" onclick="unlink()" title="Remove Link"><i class="fa fa-chain-broken"></i></button>
    <button class="postEditBtn" type="button" onclick="justifyLeft()" title="Text align-left"><i class="fa fa-align-left"></i></button>
    <button class="postEditBtn" type="button" onclick="justifyCenter()" title="Text align-center"><i class="fa fa-align-center"></i></button>
    <button class="postEditBtn" type="button" onclick="justifyRight()" title="Text align-right"><i class="fa fa-align-right"></i></button>

    <br><br>

    <textarea name="doc_content" id="doc_content" placeholder="Document Content" style="display: none;"></textarea>


    <iframe name="editor" id="editor" style="width:100%; height: auto;"></iframe>

<div id="editor1"></div> // As you can see nothing posting in here?



    <br><br> 
    <input onclick="formsubmit()" type="submit" value="Update Document" name="submit"/><br />

</div>

<script>
$(document).ready(function (){
    $("#editor1").html("dgdgdfg g <u style="background-color: yellow;">dgdf</u> gg &nbsp;dgdfgd");
})
</script>
<?php
echo['doc_content'];
?>
<div id="editor1"></div>

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script>
$(document).ready(function (){
    //$("#editor1").html("<?php echo $doc['doc_content']; ?>");
    $("#editor1").load("loaddiv.php");
})
</script>
<script>
var iframe = document.getElementById('editor'),
    iframedoc = iframe.contentDocument || iframe.contentWindow.document;

    iframedoc.body.innerHTML = '<?php echo $doc['doc_content']; ?> ';

</script>