2016-10-21 29 views
0

我有这样的代码:使用弹出的Javascript语言,PHP

<html> 
<body> 
<script> 
    var x; 
if (confirm("Press a button!") == true) { 
    x = "You pressed OK!"; 
    <?php $kk="ok"; ?> 
} else { 
    x = "You pressed Cancel!"; 
    <?php $kk="not ok"; ?> 
} 
document.getElementById("demo").innerHTML = x; 
</script> 
<?php 
echo $kk; 
?> 
</body> 
</html> 

当我回声$kk,我获得总not ok

但我想打印OK或NOT OK。任何帮助吗?

+0

您将javascript和javascript混合使用 – Cristian

+0

PHP不知道Javascript if语句,因此首先将'''$ kk'''设置为“ok”,然后直接设置为“not okay”。 –

+0

php是在服务器上执行的服务器端语言,而javascript是在客户端执行的客户端语言......并且在此尝试根据您的javascript确认弹出框来设置变量 - 并且因为$ kk被分配了'不好'上次这就是为什么你每次都'不行' – sheetal

回答

0

你所要求的东西绝对是不可能的,因为是的,因为所有的PHP代码是完全执行之前的HTML被发送到浏览器,其中JavaScript是反过来后执行,因此

如果你需要http服务器上的结果,你必须在html页面中描述一个表单,并在表单动作的URL处创建一个服务器PHP脚本,然后PHP可以获得表单元素。

如果您在浏览器中需要结果(例如更改显示页面中的某些元素),则必须使用javascript编码。

如果你想在PHP和JavaScript之间进行交换,同时停留在同一页面,你可以使用Ajax,或者你可以直接使用javascript的对象,它可以从浏览器调用服务器脚本。请参阅some examples at w3schools.com

+0

谢谢,我明白这个问题,但我不知道阿贾克斯。如何解决我的问题? – mongoDB