我正在尝试学习PHP / MySql并创建一个简单的“网站”。
我尝试从Select打印行时遇到问题。我用表“ Utenti”创建了一个数据库,我想从中选择一个用户名。
.as-console-wrapper { max-height: 100% !important; top: 0; }
使用实际代码,结果为“否”,但是如果我写:
$username='Prova';
// In my database there is a record with username "Prova"
require 'connessione_db.php';
// I connect Php to the Database in another file
mysqli_select_db ($conn, $dbname);
$checkusername= "SELECT username FROM utenti WHERE username= '$username' ";
// when i write "Where username='Prova' " there aren't problem.
$username_result=mysqli_query($conn,$checkusername);
if (mysqli_num_rows($username_result) > 0) {
while($rows=mysqli_fetch_array($username_result)) {
echo $rows['username'];
}
} else {
echo "no";
}
结果是“ Prova”。
我试图更改读取用户解决方案的代码,但未成功。我尝试过:
... where username='Prova'";
或
" ... Where username='" .$username. "'";
和其他无用的建议。
答案 0 :(得分:-1)
在访问sql服务器时,您正在使用字符串,因此jsut需要合并两个字符串,因此username='" .$username. "'"
应该可以正常工作。可能有效的类似"...username='{$username}"
。您应该使用error.log($checkusername)
调试该字符串,这是怎么回事。您当前使用的是哪个版本的php?最佳稳定版本是5.6
或7.3.4
,尽管7+以上版本并不受欢迎。