2013-10-01 36 views
0

我在确认消息的问题的价值,当用户单击取消的$IsCanceled = "yes" 则值当我点击OK的`$ IsCanceled =“无”的值..PHP:在不改变的变量

问题是,当我点击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... 

我已跟踪的寄托都,但它仍然“是”价值..

感谢

+1

您不能混合使用苹果和橙子,或客户端和服务器端脚本。 Javascript是客户端,而PHP是服务器端。 – sskoko

+0

你不能这样混用php和js。 PHP是服务器端语言,而JS是端点语言。 – sectus

+0

什么是确认方法? –

回答

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重新处理。

想想它就像网球。在发送给对手之后,你不能改变你击球的方式。在这种情况下,您可以编程双方并相应地处理网球。

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 
} 
+0

@Salim ....它已经在工作......但我怎样才能将varibale的值传递给php?因为我需要在PHP端创建一个if ...谢谢回复 – user2826499

+0

这是可行的使用ajax – Salim

0

如果你想要做的客户端的一些逻辑,你需要在它使用JS没有PHP。 如果你需要做逻辑服务器端,所以你需要POST或GET到服务器。

只要打开你的页面作为源代码加载后,你会看到,在你把PHP条件放在哪里就什么都没有。

这是因为PHP已经完成了所有工作。检查$ IsCanceled并向您显示页面。

还请注意,如果您需要检查而不是分配,则需要使用双等号而不是一个例如if($IsCanceled == 'no')将检查变量IsCanceled是否等于字符串'no'。但if($IsCanceled = 'no')告诉php分配字符串'no'到变量IsCanceled这将是真实的,因为它的分配和赋值结果为TRUE