繁体   English   中英

单击按钮时在 javascript 中执行 php 代码

[英]executing php code within javascript on button click

我正在尝试使用按钮 onclick 事件在 javascript 中执行 php 代码。 我有两个页面test.phpdemo.php ,每个页面都有按钮。 现在我想做的是。 当我点击test.php 中的按钮时,它应该禁用demo.php 中的按钮,当test.php重新加载时,它应该检查demo.php中按钮的状态,并根据它应该显示它。

现在我已经尝试了一些可以根据要求正常工作的东西。 问题是两个页面上的按钮都不起作用。 代码仅在页面刷新时执行。

这是我尝试过的代码。

首先测试.php

<?php
session_start();
?>
<html>
<head>
<script type="text/javascript">
function enable(){
var a='<?php

$_SESSION['demo']='enable';
if($_SESSION['btn_demo']=='enabled'){

$_SESSION['btn_test']='disable';
unset($_SESSION['demo']);
}
else {
    $_SESSION['btn_test']='enable';
}
?>';

}

</script>
</head>
<body>

<input type="button" value="<?php echo $_SESSION['btn_test']; ?>" name="submit" id="submit" onclick="enable()" >

</body>
</html>

当我点击test.php 中的启用按钮时,它应该启用demo.php 中的按钮。

第二个演示.php

<?php 
session_start();
error_reporting(0);


?>
<html>
<head>
<script type="text/javascript">
function enable(){
    <?php 
$_SESSION['test']=$_SESSION['demo'];
if($_SESSION['test']=='enable'){
$_SESSION['btn_demo']='enabled';    
} else
{
    $_SESSION['btn_demo']='disabled';
}   

?>}
</script>
</head>
<body>
<style>

</style>

<input type="button" value="<?php echo $_SESSION['btn_demo']; ?>" name="submit" id="submit" onclick="enable()" >

 </body>
  </html>

当单击test.php 中的按钮时,应启用/禁用此处的按钮。 当我刷新时,这两个页面都可以正常工作。 单击任一按钮时不起作用。 如何解决这个问题? 需要帮忙。

PHP在javascript之前执行,所以不能这样使用,可以用AJAX调用文件

尝试这样的事情:

<script>
    function enable(){
        $.ajax({
            type: "POST",
            url: "setSession.php",
            success: function(res) {
                if(res==="Success"){
                    alert("Success!!!");
                }
            }
        });      
    }
</script>

设置会话文件

<?php
$_SESSION['demo']='enable';
if($_SESSION['btn_demo']=='enabled'){
    $_SESSION['btn_test']='disable';
    unset($_SESSION['demo']);
}
else {
    $_SESSION['btn_test']='enable';
}
echo "Success";
?>

停止 PHP 执行<!--? within javascript</div--><div id="text_translate"><p> 我正在尝试实现 TinyMCE,它在我的测试平台上运行良好,但在生产服务器上,PHP 正在尝试执行一些'&lt;?' tiny_mce.js文件中的标签。</p><p> 我有一个名为html_editor.php的文件,它被引入到需要使用include_once的每个表单中。 在html_editor内,我有以下内容:</p><pre> &lt;script type="text/javascript" src="/Public/TinyMCE/tiny_mce.js"&gt;&lt;/script&gt;</pre><p> 随后是 Tiny MCE 初始化,但它在该行上因unexpected T_CONSTANT_ENCAPSED_STRING 。 我用tiny_mce_src.js替换了脚本文件,以找到导致问题的确切代码,它是:</p><pre> html.push('&lt;?', name, ' ', text, '?&gt;');</pre><p> 我在tiny_mce_src.js中用双引号交换了单引号,这确实解决了问题,但在缩小的代码中,它们已经是双引号了。</p><p> 这显然是我的测试服务器和生产服务器之间与 PHP 的配置差异,但我无法追踪是什么。 我正在使用 PHP 5.3 进行测试,并且服务器正在运行 5.2。</p></div>

[英]Stop PHP executing <? within javascript

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 单击按钮时执行 PHP 在PHP中执行javascript JavaScript执行PHP代码 停止 PHP 执行<!--? within javascript</div--><div id="text_translate"><p> 我正在尝试实现 TinyMCE,它在我的测试平台上运行良好,但在生产服务器上,PHP 正在尝试执行一些'&lt;?' tiny_mce.js文件中的标签。</p><p> 我有一个名为html_editor.php的文件,它被引入到需要使用include_once的每个表单中。 在html_editor内,我有以下内容:</p><pre> &lt;script type="text/javascript" src="/Public/TinyMCE/tiny_mce.js"&gt;&lt;/script&gt;</pre><p> 随后是 Tiny MCE 初始化,但它在该行上因unexpected T_CONSTANT_ENCAPSED_STRING 。 我用tiny_mce_src.js替换了脚本文件,以找到导致问题的确切代码,它是:</p><pre> html.push('&lt;?', name, ' ', text, '?&gt;');</pre><p> 我在tiny_mce_src.js中用双引号交换了单引号,这确实解决了问题,但在缩小的代码中,它们已经是双引号了。</p><p> 这显然是我的测试服务器和生产服务器之间与 PHP 的配置差异,但我无法追踪是什么。 我正在使用 PHP 5.3 进行测试,并且服务器正在运行 5.2。</p></div> 使用Javascript中的按钮执行PHP脚本 用PHP或javascript单击按钮? 在通过Jade生成的HTML页面中单击按钮时执行服务器端代码(node.js) JavaScript代码未使用php codeigniter执行 从javascript执行PHP代码 使用Confirm()在Javascript中执行PHP代码
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM