我花了一些时间在网上寻找答案而无济于事 - 阅读了一些帖子,但没有看到相同的内容。
以下行导致我出现以下错误:
Notice: Undefined index: username in C:\xampp\htdocs\newlogin\authorise.php on line 19
与之关联的行如下:
$stmt->bindValue(':username',strtolower($_POST['username']));
我已经包含了所有代码以防万一。我在数据库(MySQL)中设置了用户名列
任何建议都会很棒,对此我是相当新的,所以如果有简单的回复我会道歉
<title>authorise</title>
<?php
# FileName="Connection_php_mysql.htm"
# Type="MYSQL"
# HTTP="true"
try
{
$dbh = new PDO("mysql:host=localhost;dbname=login_site","root","black$23");
}
catch (PDOException $e){
echo $e->getMessage();
}
$query = "select * from 'users' where LOWER ('username')=:username";
$stmt=$dbh->prepare($query);
$stmt->bindValue(':username',strtolower($_POST['username']));<--- issue is on this line
$stmt->execute();
if ($stmt->rowCount()==1){
echo'user found';
}
答案 0 :(得分:2)
这意味着您的$ _POST数组没有用户名密钥。
您可以使用if
进行检查if(isset($_POST['username']))
{
$query = "select * from 'users' where LOWER ('username')=:username";
$stmt=$dbh->prepare($query);
$stmt->bindValue(':username',strtolower($_POST['username']));
$stmt->execute();
if ($stmt->rowCount()==1)
{
echo'user found';
}
}
Voila没有通知;)
当您发布表单检查输入名称是否设置为&#34;用户名&#34;而且不是空的。
答案 1 :(得分:0)
这意味着您在数据库表中没有用户名字段,或者您的表单中没有用户名字段名称。请仔细检查您的表格结构和表格。
答案 2 :(得分:0)
我发现我错过了登录脚本中的=符号。但是,我仍然是授权页面,不会输入if语句。我已将回声放入其中并在其周围显示,直到我将回声置于if语句
中