0
嗨,我不知道为什么这不会工作......这似乎并不想拿起POST值....我无法弄清楚PHP Smarty的真正需要帮助的
这是loginbox
<div class="loginbox">
<form action="processlogin.php" method="post">
<table width="100%" border="0" cellspacing="0" cellpadding="5">
<tr>
<td>Username</td>
<td><input type="text" name="UserName" /></td>
</tr>
<tr>
<td>Password</td>
<td><input type="text" name="Password" /></td>
</tr>
<tr>
<td> </td>
<td><input type="submit" value="Login" /></td>
</tr>
<tr>
<td> </td>
<td><span style="font-size:12px;"><a href="adduser.php">Click here to register</a></span></td>
</tr>
</table>
</form>
这只是一个盒子我嵌入我的索引模板。 submited当
<div class="header">
{if loggedin == false}
<h1>welcome</h1>
{else}
{include file="loginbox.tpl"}
{/if}
</div>
Loginbox去processlogin.php这是本
<?php
include '/usr/local/Smarty/libs/Smarty.class.php';
require "includes/defs.php";
$smarty = new Smarty;
if ($_SERVER['REQUEST_METHOD'] == 'GET') {
// Get any error message
$error = @$_GET['error'];
} else
{
$UserName = @$_POST['UserName'];
$Password = @$_POST['Password'];
echo $UserName;
}
processlogin($UserName, $Password);
?>
这调用该函数processlogin ......但即使在此之前,我在测试,看看我甚至可以获取用户名和我不能...
function processlogin($UserName, $Password){
echo $UserName;
session_start();
$UserName = mysql_escape_string($UserName);
$Password = md5($Password);
echo $UserName;
$connection = mysql_open();
$SQL = "SELECT * FROM tblUsers WHERE UserName = '$UserName' AND UserPass = '$Password'";
$Result = @ mysql_query($SQL)
or showerror();
if(mysql_num_rows($Result) > 0)
{
$DATA = mysql_fetch_assoc($Result);
$_SESSION['userID'] = $DATA['ID'];
$_SESSION['Loggedin'] = "true";
echo 'true';
//header("Location:index.php");
}
else
{
$_SESSION['Loggedin'] = "false";
echo 'trdddde';
//header("Location:index.php");
}
}
这是功能...你会看到我只是随机测试,其中没有任何意义。我只是试图让它显示一路上的事情,所以我可以找出发生了什么问题
对不起,我的编码能力差。我现在只学了2个月左右。
实际上,关于SQL注入攻击的一点是错误的 - 对不起! – Robin 2011-05-21 20:20:11
它仍然无法正常工作。我认为它有问题在某处从表单中获取变量。因为甚至在进程登录运行之前,它应该显示UserName的回显...我删除了错误检查,并且回显仍然不起作用。 出现什么是“traddde”这是我的方式说如果登录== false。 – 2011-05-22 02:24:09
我修好了......但我不知道如何......它刚刚开始工作......我什么也没改变,突然它工作。 – 2011-05-22 11:21:07