【发布时间】:2015-06-03 08:02:08
【问题描述】:
我正在尝试在文本字段中输入用户名并单击提交,然后这应该将我连接到我的数据库。 A) 下面的代码有什么问题:
<!DOCTYPE HTML>
<html>
<head>
<style>
.error {color: #FF0000;}
</style>
</head>
<body>
<?php
// define variables and set to empty values
$nameErr = $emailErr = "";
if ($_SERVER["REQUEST_METHOD"] == "POST")
{
if (empty($_POST["login"]))
{
$nameErr = "login is required";
}
else
{
$login = test_input($_POST["login"]);
// check if login only contains letters and whitespace
if (!preg_match("/^[a-zA-Z ]*$/",$login))
{
$nameErr = "Only letters and white space allowed";
}
}
}
function test_input($data)
{
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}
?>
<h2>Edge User Login</h2>
<p><span class="error">* required field.</span></p>
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
Login: <input type="text" name="name">
<span class="error">* <?php echo $nameErr;?></span>
<br><br>
<br><br>
<input type="submit" name="submit" value="Submit">
</form>
<?php
$mysqli_connection = new MySQLi('localhost', $login, 'secret', 'edgeserver');
if ($mysqli_connection->connect_error)
{
echo "Not connected, error: " . $mysqli_connection->connect_error;
}
?>
B) 我不希望用户每次运行 PHP 命令时都必须输入用户名。有没有办法使用可以回溯的母版表?
【问题讨论】:
-
A) 除了语法错误(如果有的话),我们不知道代码会有什么问题。您需要向我们简要说明您正在尝试做什么。 B)“我不希望用户每次运行 PHP 命令时都必须输入用户名”是什么意思?
标签: php authentication post mysqli