我正在为我的网站创建一个登录页面。我花了一天时间学习php并写了一些有用的东西。但是,我无法设置输出样式。我怎么能这样做(可能是一个非常无趣的问题)?
基本上这是我登录页面的代码:
<?php
session_start();
// dBase file
include "dbConfig.php";
if ($_GET["op"] == "login")
{
if (!$_POST["username"] || !$_POST["password"])
{
die("You need to provide a username and password.");
}
// Create query
$q = "SELECT * FROM `dbusers` "
."WHERE `username`='".$_POST["username"]."' "
."AND `password`=PASSWORD('".$_POST["password"]."') "
."LIMIT 1";
// Run query
$r = mysql_query($q);
if ( $obj = @mysql_fetch_object($r) )
{
// Login good, create session variables
$_SESSION["valid_id"] = $obj->id;
$_SESSION["valid_user"] = $_POST["username"];
$_SESSION["valid_time"] = time();
// Redirect to member page
Header("Location: members.php");
}
else
{
// Login not successful
die("Sorry, could not log you in. Wrong login information.");
}
}
else
{
//If all went right the Web form appears and users can log in
echo "<form action=\"?op=login\" method=\"POST\">";
echo "Username: <input name=\"username\" size=\"15\"><br />";
echo "Password: <input type=\"password\" name=\"password\" size=\"8\"><br />";
echo "<input type=\"submit\" value=\"Login\">";
echo "</form>";
}
?>
现在,一切正常。我只需要让它看起来更好一些。我想知道怎么做?我有一个CSS文件,它标题标题,菜单,背景等。这样的样式工作正常。 谢谢你的帮助
答案 0 :(得分:1)
您还需要改进此脚本。对不起,这是真正的垃圾。你没有转义字符串,所以你很容易受到SQL注入的攻击,你使用的是不推荐使用的'mysql_query'而不是'PDO',你压缩错误('@')等等。我知道你已经在一天内学会了,但最好从一开始就学好它,然后即使它“适合你”也要搞乱。
答案 1 :(得分:1)
使用CSS并在代码中添加类/ ID,例如:
echo "<form class="red" action=\"?op=login\" method=\"POST\">";
echo "Username: <input name=\"username\" size=\"15\"><br />";
echo "Password: <input type=\"password\" name=\"password\" size=\"8\"><br />";
echo "<input type=\"submit\" value=\"Login\">";
echo "</form>";
并在您的CSS文件中,例如:
.red{
background-color:red;
}
有关一些想法,请参阅here。 正如@GuyT所提到的,您需要更改使用POST变量的方式,您的代码存在SQL注入的风险,这可能允许用户非常轻松地访问/删除/更改您的数据库。请参阅here以获取帮助。