从我的 php 文件提交表单后,它会检查它,然后应该调用 exec
函数,该函数将使用代码中列出的第二个文件执行二进制文件。如下图所示:
if (isset($_POST['admin']) && !empty($_POST['admin'])) {
echo exec('/home/mainshee/public_html/wp-content/themes/twentyseventeen/phantom/phantomjs-directory/bin/phantomjs /home/mainshee/public_html/wp-content/themes/twentyseventeen/phantom/phantomjs-directory/examples/bigdaddy.js');
}
这里的问题是前面的 JavaScript 文件 bigdaddy.js
必须采用自己的三个参数才能运行。为了解决这个问题,我尝试了以下方法:
echo exec('/home/mainshee/public_html/wp-content/themes/twentyseventeen/phantom/phantomjs-directory/bin/phantomjs /home/mainshee/public_html/wp-content/themes/twentyseventeen/phantom/phantomjs-directory/examples/bigdaddy.js' $_POST['admin'] $_POST['user'] $_POST['password']);
这让我的网站变砖了。 有人知道如何做到这一点吗?我找到了所有可能的解决方案,详细介绍了 PHP 到 PHP,而不是 PHP 到 Javascript。谢谢大家!
最佳答案
您必须先将 javascript 变量发回服务器,然后服务器才能处理该值。为此,您可以编写一个提交表单的 JavaScript 函数 - 或者您可以使用 ajax/jquery。 jQuery.post
也许对您来说最简单的方法是这样的
function myJavascriptFunction() {
var javascriptVariable = "John";
window.location.href = "myphpfile.php?name=" + javascriptVariable;
}
在 myphpfile.php 上,您可以在执行 JavaScript 后使用 $_GET['name']。
关于javascript - 如何从 PHP Exec 将参数传递给 Javascript 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42337253/