PHP未在iFrame中运行

PHP未在iFrame中运行,php,html,forms,iframe,textarea,Php,Html,Forms,Iframe,Textarea,嗨,我想做一个个人密码游戏。。。我正在使用代码镜像使其看起来像一个IDE(我也计划稍后添加IDE的功能,但…)。我目前的代码基本上是 HTML(index.HTML) var htmlCodeMirror=CodeMirror(函数(elt){ htmlWindow.parentNode.replaceChild(elt,htmlWindow); },{值:“”, 行号:对, 模式:“文本”}; var cssCodeMirror=代码镜像(函数(elt){ cssWindow.parentN

嗨,我想做一个个人密码游戏。。。我正在使用代码镜像使其看起来像一个IDE(我也计划稍后添加IDE的功能,但…)。我目前的代码基本上是

HTML(index.HTML)


var htmlCodeMirror=CodeMirror(函数(elt){
htmlWindow.parentNode.replaceChild(elt,htmlWindow);
},{值:“”,
行号:对,
模式:“文本”};
var cssCodeMirror=代码镜像(函数(elt){
cssWindow.parentNode.replaceChild(elt,cssWindow);
},{值:“/*CSS在这里。*/”,
行号:对,
模式:“css”};
var jsCodeMirror=CodeMirror(函数(elt){
jsWindow.parentNode.replaceChild(elt,jsWindow);
},{value://JavaScript在这里,
行号:对,
模式:“javascript”};

PHP(codePush.PHP)


我已经确保了iFrame的链接可以正常工作,因为在主体部分的PHP文件中添加文本时,它会在按下submit时显示出来

我希望我已经说清楚了,并将感谢任何帮助。。。
仅供参考,在PHP方面我有点不在行

我不太确定您提供的所有代码想要实现什么,但这里有一个简化版本,它将解决codePush.PHP中未处理代码的主要问题:

<div class="codewindow">
<form id="codePush" action="codePush.php" method="POST" target="codeResults">
    HTML:<textarea id="htmlWindow" name="htmlWindow"></textarea>
    CSS:<textarea id="cssWindow" name="cssWindow"></textarea>
    JS:<textarea id="jsWindow" name="jsWindow"></textarea>
    <input type="submit" />
</form>
</div>
<div class="output">
    <iframe id="codeResults" name="codeResults" target="codePush.php" width="100%" height="100%" frameBorder="0.5" scrolling="yes"></iframe>
</div>

HTML:
CSS:
JS:
CodePush.php

<!DOCTYPE html>
<html>
<head>
    <style>
        <?php
        echo $_GET['cssWindow'];
        ?>
    </style>
    <script type="text/javascript">
        <?php
        echo $_GET['jsWindow'];
        ?>
    </script>
</head>
<body>
    <?php
    echo $_GET['htmlWindow'];
    ?>
</body>
</html>
<!DOCTYPE html>
<html>
    <head>
        <style>
            <?php
            echo $_POST['cssWindow'];
            ?>
        </style>
        <script type="text/javascript">
        <?php
            echo $_POST['jsWindow'];
        ?>
        </script>
    </head>
    <body>
        <?php
        echo $_POST['htmlWindow'];
        ?>
    </body>
</html>

请注意,CodePush.php使用“POST”而不是“GET”,因此它与表单一致。您还缺少文本区域中的“name”属性,这是帖子中使用的属性(而不是id)。
您可能需要考虑在一些检查中添加字段是否不完整,以避免错误等。

这是如何工作的?请注意,html中的
id
不会创建匹配的javascsript对象。您尚未定义
htmlWindow
cssWindow
等。。在JS代码中的任何地方,如果您检查javascript控制台,几乎可以肯定的是,您将被未定义的对象错误淹没。iFrame几乎总是一个坏主意。PHP在服务器上运行,它不关心输出将显示在哪里。您没有在iFrame请求中设置任何参数,因此PHP不知道
$\u get['htmlWindow']
etc实际上您在
iframe
中也没有
src
属性。您有
target
,但这不是设置iframe URL的方法。
<!DOCTYPE html>
<html>
    <head>
        <style>
            <?php
            echo $_POST['cssWindow'];
            ?>
        </style>
        <script type="text/javascript">
        <?php
            echo $_POST['jsWindow'];
        ?>
        </script>
    </head>
    <body>
        <?php
        echo $_POST['htmlWindow'];
        ?>
    </body>
</html>