gpt4 book ai didi

javascript - 如何使用 JS 在 iframe 中运行可编辑的 PHP?

转载 作者:行者123 更新时间:2023-11-28 00:24:26 25 4
gpt4 key购买 nike

我使用 this tool 创建了一个 HTML/JSS 编辑器,编辑时将结果显示在 <iframe> 中(预览)。

editor.getSession().addEventListener('change', function () {
iframe.contentWindow.document.body.innerHTML = editor.getSession().getValue(); // ex: '<div>Hi!</div>'
});

这很简单,问题出在 PHP 编辑器上......显然如果我在 innerHTML 中插入 PHP 代码这不能在客户端执行。

如果值为:

<?php 
$name= 'John Doe';
echo $name;
?>

这显示:

<!--?php $name= 'John Doe'; echo $name; ?-->

保存此临时代码并立即在 iframe(预览版)上运行的最佳方法是什么?

最佳答案

你说的是什么意思

run instantly on the iframe (preview)


如果您希望用户编辑的 php 代码在客户端浏览器中运行并完全显示输出,
那么就没有务实的方法来做到这一点。

因为,要运行 php 代码,
您首先需要一个 php 运行时。

现在,无论客户的系统(PC)上是否安装了php,
您无法通过浏览器访问该内容。

现在,如果您迫切希望运行代码(然后在您的服务器上)并将输出发送到客户端浏览器,
然后
警告::非常危险
从未知(因此不受信任)来源获取字符串并
在服务器上将它们作为 php 代码运行,您可以在短时间内轻松地让您的服务器被黑客攻击(和重击):p
因为,
你不知道他们正在编写什么代码(除非你在运行之前明确调整它:p)

(现在,如果你不知道自己在做什么)
您可以使用 eval 构造,如下所述:
http://php.net/manual/en/function.eval.php

eval("?> $str <?php ");

关于javascript - 如何使用 JS 在 iframe 中运行可编辑的 PHP?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29688594/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com