我真的被一些非常烦人的东西困住了。经过几个小时的尝试,我知道我已经到了这里,看看是否有人可以提供帮助。这是一般的想法。
我希望通过表单发送密码可以使用某个页面。没有用户,密码也不会改变。这应该很简单,对吧!
我有一个表单,提交方法设置为post,操作设置为$_SERVER['PHP_SELF']
。计划是,当我预先定义的密码变量与表单中输入的内容匹配时,页面上会显示一组内容,如果没有,则会得到一组不同的内容(表单)。
这就是奇怪的。在查看print_r
时,我会看到我在数组中的表单中提交的内容,但是当我在数组中填入正确的密码时,会快速清空。我在页面重新加载时看到了这一点。它完全清空了自己。更奇怪的是,我第二次这样做,它的确有效。我在这里错过了什么?我很想知道!
非常感谢,圣诞快乐。
----一些代码----
表格
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<label for="pass" id="pass">Password:</label>
<input type="text" name="pass" id="pass" />
<input type="submit" name="submit" value="Yes" />
</form>
文件顶部的一些PHP;
$pass = '12846565488374';
if($_POST['pass']){ $login = $_POST['pass']; } else { $login = 'empty'; }
if($login != $pass) { $show = 0; } elseif($login == $pass){ $show = 1; }
-----解决了------
原来这是一个在我不知情的情况下重新加载页面的JS插件。
答案 0 :(得分:1)
尝试:
if(isset($_POST['pass']) AND $_POST['pass'] == $pass) {
$show = 1;
} else {
$show = 0;
}
从下面的评论中复制:
从服务器加载页面后,PHP无法更新任何内容...您只能使用refresh或JS / AJAX来更改内容。如果你把整个页面上传到某个地方会容易得多。
答案 1 :(得分:0)
<?php
if (isset($_POST['pass']))
{
if ($_POST['pass'] == $pass)
{
$show = 1;
echo $show;
}
else
{
$show = 0;
echo $show;
}
?>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<label for="pass" id="pass">Password:</label>
<input type="text" name="pass" id="pass" />
<input type="submit" name="submit" value="Yes" />
</form>
也许是这样的?
echo
的目的是显示何时输入正确的密码,$ show更改为1,错误时更改为0
编辑:
您的参数正在检查$show
<?php
if (isset($show) AND $show === 1)
{
echo "The Variable Is Set To 1";
}
elseif (isset($show) AND $show === 0)
{
echo "The Variable Is Set To 0";
}
?>
经过测试并使用您的代码。
答案 2 :(得分:0)
尝试:
<?PHP
if(isset($_POST['pass'])
{
$pass = '12846565488374';
($_POST['pass'] == $pass)? $show = 1 : $show = 0;
echo $show;
}
else
{
?>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<label for="pass" id="pass">Password:</label>
<input type="text" name="pass" id="pass" />
<input type="submit" name="submit" value="Yes" />
</form>
<?PHP
}
?>
答案 3 :(得分:0)
感谢大家的帮助 - 正如Matanya所说,这确实是一个重装页面的Javascript问题。它是一个音乐播放器,它被置于IF声明的“真实”部分。我不明白为什么它有这种效果,但至少我知道。我以为错误会在我的PHP中。这是有问题的玩家:SCM音乐播放器http://scmplayer.net
再次感谢。