【发布时间】:2014-01-23 08:27:09
【问题描述】:
我一直在尝试做最简单的事情,在我的服务器上创建一个登录页面,但由于某种原因它不起作用。我一遍又一遍地检查我的代码,但找不到解决方案。猜测这是相当简单的事情,但我对自己的代码视而不见。 :( 我有一个可以工作的 register.php 网站,只是登录部分(在 index.php 上)不起作用。:( 代码甚至没有注册我已经推送了“提交”,只是进入我的
if (!isset($_POST['submit']))
我正在使用 PHP 和 HTML5。这是我的代码如下(对不起,它很长,但只在一个文件中......而且很抱歉,那里有一些冰岛的 cmets ;)):
<div id="content">
<?php
if (!isset($_POST['submit']))
{
echo " ! isset( $ _POST [ ' submit ' ] ";
if(!isset($_SESSION['logged']))
{
echo " ! isset ( $ _SESSION [ ' logged ' ] ";
?>
<h1>Umsjónarsvæði - innskráning</h1>
<form action='' method='post'>
<div class='form_line'>
<div class='form_left_side'>Notandanafn:</div>
<div class='form_right_side'><input type='Text' name='user'></div>
</div>
<div class='form_line'>
<div class='form_left_side'>Lykilorð:</div>
<div class='form_right_side'><input type='Password' name='pass'></div>
</div>
<div class='clear'><hr /></div>
<div class='form_button'><input class='buttons' type="submit" name="submit" value='Skrá' /> <input class='buttons' type='reset' value='Hreinsa' /></div>
</form>
<?php
}
else
{
echo " isset ( $ _SESSION [ ' logged ' ] ";
?>
<h1>Umsjónarsvæði</h1>
<p>Á umsjónarsvæðinu er hægt að skoða mótteknar fyrirspurnir, virkar eignavaktir og nýskrá og sýsla með eignir á forsíðu.</p>
<p>Notið valmyndina hér til hliðar til að flakka um síðuna.</p>
<?php
}
}
else {
session_destroy();
$skuli = new SQL();
$user = $skuli->isSafe($_POST['user']);
$pa = $skuli->isSafe($_POST['pass']);
$db_users = $skuli->getUsers($user, $pa);
$count = mysqli_num_rows($db_users);
if($count > 0)
{
$_SESSION['valid_user'] = $user;
$_SESSION['logged'] = 1;
// og stillum það að session "lifi" í 5 tíma
ini_set("session.gc_maxlifetime", "18000");
echo "isLogged: ".$_SESSION['logged']."<br/>";
//session_write_close();
// förum loks aftur á þessa aðal síðu ...
header('Location: index.php');
exit();
}
else
{
$count = $skuli->checkUser($user);
echo "<h1>Umsjónarsvæði - innskráning - $count</h1>";
if($count < 1)
{
echo "<p>Notandinn <i>$user</i> finnst ekki á skrá. Vinsamlegast reynið aftur.</p><br/>";
}
else {
echo "<p>Notandinn <i>$user</i> með þessu lykilorði finnst ekki á skrá. Vinsamlegast reynið aftur.</p><br/>";
}
?>
<form action='' method='post'>
<div class='form_line'>
<div class='form_left_side'>Notandanafn:</div>
<div class='form_right_side'><input type='Text' name='user'></div>
</div>
<div class='form_line'>
<div class='form_left_side'>Lykilorð:</div>
<div class='form_right_side'><input type='Password' name='pass'></div>
</div>
<div class='clear'><hr /></div>
<div class='form_button'><input class='buttons' type='submit' name='submit' value='Skrá' /> <input class='buttons' type='reset' value='Hreinsa' /></div>
</form>
<?php
}
}
任何帮助将不胜感激,我迷失了(一直在寻找很长时间,只是看不到我缺少什么)。 :(
谢谢
没有cmets?我还是迷路了:(
【问题讨论】:
-
"my
if (!isset($_POST['submit']))-loop" --if语句不是循环。 -
print_r($_POST);看到问题了吗? -
对不起 Jonathon Reinhart,我知道这不是一个循环,一些语言问题(加上睡眠不足)。 :)
-
@Dagon,这只是打印出一个空数组。我迷路了:(