如何在php中使用if语句在javascript中使用提示符

如何在php中使用if语句在javascript中使用提示符,javascript,php,Javascript,Php,我希望当用户从提示文本框输入“我”时,它将直接进入config.php,否则打印“您没有访问权”。下面是到目前为止我所拥有的代码,但我没有调用提示符。在如何克服这个问题上需要帮助。提前谢谢 <?php if(isset($insert)){ echo "<script>"; echo $ms="prompt('Please enter your name', 'Enter name here');"; if($ms=="me"){ header("Loc

我希望当用户从提示文本框输入“我”时,它将直接进入config.php,否则打印“您没有访问权”。下面是到目前为止我所拥有的代码,但我没有调用提示符。在如何克服这个问题上需要帮助。提前谢谢

<?php 
if(isset($insert)){ 
  echo "<script>"; 
  echo $ms="prompt('Please enter your name', 'Enter name here');"; 
    if($ms=="me"){ header("Location: config.php"); 
    } else { 
  echo "you dont have access"; } 
  echo "</script>"; }
?>

你不能像那样混合使用PHP和JavaScript。首先处理PHP代码,然后将HTML和JavaScript发送到浏览器。一旦发生这种情况,在服务器的下一次完整往返之前,无法返回PHP脚本

您必须在页面上创建登录表单,例如:

<form method="POST">
    <input type="text" name="input" />
    <input type="submit" />
</form>

用户填写并发送后,您可以使用用户的输入:

<?
if($_POST['input'] == "me") {
    // user is authenticated
} else {
    // or not
}

您所做的是错误的,您无法将javascript提示值分配给php变量。您需要从提示中收集值,然后使用表单或ajax将值发送到服务器端,然后将消息显示给用户。

“以下是我迄今为止的代码”-没有代码。
请将其放在您的问题中,而不是评论中,然后从评论区域中删除,谢谢,这永远不会起作用——PHP无法访问JavaScript变量。它们存在于两种不同的环境中:服务器上的PHP和浏览器上的JavaScript。但是,您可以使用AJAX调用运行PHP脚本的web服务,该脚本评估用户输入并将某种类型的数据返回到触发事件的浏览器。在将网页发送到浏览器之前,PHP在服务器上运行。不能从浏览器中的用户操作运行嵌入式PHP。您可以使用Javascript在页面中插入DOM元素。登录需要执行ajax调用或表单提交到服务器以验证凭据。当然可以-好吧,只是不像“那样”;)@Fred ii-是的,当然您可以根据PHP脚本中的条件生成警报,但是您无法按照OP的建议从
prompt()
访问值——或者我在这里遗漏了什么?@Fred ii-,OP试图做的是不可能的,他试图将javascript prompt变量分配给PHP变量:)不,您是对的,这就是为什么我说他们不能像现在这样做。我给他们的链接是一个起点。不过服务器端更好。这两个php之间的区别在于先从服务器执行其功能,然后在php功能之后将javascript发送到浏览器。