当USER点击取消$IsCanceled = "yes"
的值时,我在确认消息中遇到问题
然后当我点击OK时,$ $ IsCanceled =“no”的值......
问题是,当我点击OK时,$ IsCanceled的值仍为是......
<?php
else { ?>
<script>
var myVar = "<?php echo $bldg[$i]; ?> station is already full. Do you want to save the other networks?";
if (confirm(myVar)) {
<?php $IsCanceled = "no";?>
} else {
<?php
$IsCanceled = "yes";
?>
}
</script>
<?php
}
//and so on...
我已经追踪过了,但它仍然是“是”的价值......
由于
答案 0 :(得分:0)
php是服务器端脚本,没有页面刷新就无法分配。
使用javascript(客户端脚本)变量来指定是或否
else
{
?>
<script>
var myVar = "<?php echo $bldg[$i]; ?> station is already full. Do you want to save the other networks?";
if (confirm(myVar)) {
IsCanceled = "no";
} else {
IsCanceled = "yes";
}
alert(IsCanceled);
</script>
<?php
}
答案 1 :(得分:0)
如果你想在客户端做一些逻辑,你需要使用没有PHP的JS。 如果你需要做逻辑服务器端,那么你需要POST或GET到服务器。
只需在加载后立即打开您的页面作为源代码,您将会看到,在您放置PHP条件的位置将无效。
这是因为PHP已经完成了所有工作。检查$ IsCanceled并向您显示页面。
另请注意,如果您需要检查而不是分配,则需要使用双等号,而不是if($IsCanceled == 'no')
会检查变量IsCanceled
是否等于字符串'no'
。但是if($IsCanceled = 'no')
告诉php将字符串'no'
分配给变量IsCanceled
它将为TRUE,因为它的赋值和赋值结果为TRUE
答案 2 :(得分:0)
PHP和Javascript。
两种完全不同的语言用于各种不同的任务。
你上面写的内容试图混合两种语言,如果你在任何其他环境中写作,你甚至都不会考虑这样做。您编写的上述脚本将在服务器上运行其PHP ,并生成发送到浏览器的输出。
在您的情况下,这看起来像:
<script>
var myVar = "i station is already full. Do you want to save the other networks?";
if (confirm(myVar)) {
} else {
}
</script>
这是您目前代码的确切输出。如果您要导航用户“保存到其他网络”,则必须创建一个隐藏的HTML form
,其中<input type="hidden" ..
可以保留您需要的答案。然后,使用Javascript,您可以显示确认对话框并填充HTML表单,提交它,然后使用PHP再次处理它。
把它想象成网球。在将球发送给对手之后,你无法改变击球的方式。在这种情况下,您可以对双方进行编程并使其相应地处理网球。