我的登录部分有以下代码:
<form method="post" action="loginprocess.php">
<div class="row">
<div class="6u 12u$(mobile)"><input type="text" name="username" placeholder="Usuario" /></div>
<div class="6u$ 12u$(mobile)"><input type="password" name="pass" placeholder="Contraseña" /></div>
<div class="12u$">
<input type="submit" value="Iniciar sesion" />
</div>
</div>
</form>
这里有我的注册码:
<?php
include"config.php";
$username = $_POST['username'];
$email = $_POST['email'];
$pass = md5($_POST['pass']);
$rpass = md5($_POST['rpass']);
$reqlen = strlen($username) * strlen($email) *strlen($pass) * strlen($rpass);
$insert = 'INSERT INTO registro (username, email, pass) VALUES ("'.$username.'", "'.$email.'", "'.$pass.'")';
$query = mysql_query("SELECT * FROM registro WHERE username='$username'");
$query2 = mysql_query("SELECT * FROM registro WHERE email='$email'");
if(mysql_num_rows($query) > 0)
{
header("Location: registrate.php?error1");
exit;
}
else
{
if(mysql_num_rows($query2) > 0)
{
header("Location: registrate.php?error2");
exit;
}
}
if ($reqlen > 0)
{
if ($pass === $rpass)
{
mysql_query($insert);
header("Location: index.php");
exit;
}
else
{
header("Location: registrate.php?error3");
}
}
else
{
header("Location: registrate.php?error4");
}
?>
这是我与服务器的连接:
<?php
$localhost = "localhost";
$dbuser = "root";
$dbpass = "admin";
$dbname = "vivejugando";
$connect = mysql_connect($localhost, $dbuser, $dbpass) or die("No se pudo conectar a la base de datos");
mysql_select_db("$dbname", $connect);
?>
我需要登录代码。我做了一些这样但不起作用:
<?php
include"config.php"
$username = $_POST ['username'];
$pass = md5($_POST['pass']);
$query = mysql_query("SELECT * FROM registro WHERE username='$username' AND pass='$pass'");
$data = mysql_fetch_assoc($query);
if(mysql_num_rows($query))
{
session_start();
$_SESSION['username'] = $data['username'];
header("Location: members.php");
exit;
}
header(""Location: regprocess.php"")
?>
如果某人改进了我的登录代码或使其优化为我的代码,我非常感激。
答案 0 :(得分:1)
试试吧
include"config.php";
$username = $_POST['username'];
$email = $_POST['email'];
$pass = md5($_POST['pass']);
$rpass = md5($_POST['rpass']);
if(isset($rpass) && $pass == $rpass)
{
$insert = 'INSERT INTO registro (username, email, pass) VALUES ("'.$username.'", "'.$email.'", "'.$pass.'")';
mysql_query($insert);
session_start();
$_SESSION['username'] = $username;
header("Location: index.php");
exit;
}
$check_login = mysql_query("SELECT * FROM registro WHERE username='$username' and email='$email'");
if(mysql_num_rows($check_login) > 0)
{
header("Location: index.php");
exit;
}
else
{
header("Location: registrate.php?error1");
exit;
}