【问题标题】:Enter Database PHP connection with userform [closed]使用用户表单输入数据库 PHP 连接 [关闭]
【发布时间】: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


【解决方案1】:

A.) 您可能不希望您的用户通过您的服务器连接到 MySql

这些应该是您从 MySql 登录的详细信息,通常您在 MySql 中创建一个用户(可能是 phpmyadmin?)并在此处填写详细信息:

$mysqli_connection = new MySQLi('localhost', $login, 'secret', 'edgeserver');

然后,您将从您创建的包含您的用户的表中进行选择。

B.) 您可以在会话中存储用户名,但这会变得很复杂,我建议您在刚登录的地方使用它。

可能this(我刚刚在谷歌上搜索过)可能会对您有所帮助。

【讨论】:

  • 很好的链接。感谢您抽出宝贵时间提供帮助。
  • np。如果它为您解决了问题,请不要忘记将我的答案标记为正确。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-05-28
  • 1970-01-01
  • 2014-03-06
  • 2015-09-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多