Php 我的SQL Select查询和IF语句不会返回任何结果
我希望有人能帮助我 我对PHP完全陌生,我发现我的Php 我的SQL Select查询和IF语句不会返回任何结果,php,css,select,if-statement,mysqli,Php,Css,Select,If Statement,Mysqli,我希望有人能帮助我 我对PHP完全陌生,我发现我的SELECTquery和/或IF语句没有从数据库中检索任何结果 这段代码的目的是从数据库中检索一个css皮肤,它可以应用于我网站的每个页面 代码如下: $dbc - mysqli_connect($servername, $username, $password, $databasename) or die ('Error connecting to MYSQL server'); $skin = $_POST['skin']; $query
SELECT
query和/或IF
语句没有从数据库中检索任何结果
这段代码的目的是从数据库中检索一个css皮肤,它可以应用于我网站的每个页面
代码如下:
$dbc - mysqli_connect($servername, $username, $password, $databasename) or die ('Error connecting to MYSQL server');
$skin = $_POST['skin'];
$query = "SELECT skin FROM skins WHERE id = '".$_SESSION['userid']."'";
$result = mysqli_query($dbc, $query) or die ('Error quering database');
if ($result) {
if ($skin=='blue') {
echo "<link rel='stylesheet' type='text/css' href='blue.css' />";
}
else if ($skin == "pink1") {
echo "<link rel='stylesheet' type='text/css' href='pink1.css' />";
}
else {
echo 'You do not have a skin preference';
}
}
$dbc-mysqli_connect($servername、$username、$password、$databasename)或die('Error connecting to MYSQL server');
$skin=$_POST['skin'];
$query=“从id=”的外观中选择外观”。$\u会话['userid']。”;
$result=mysqli_query($dbc,$query)或die('Error querying database');
如果($结果){
如果($skin=='blue'){
回声“;
}
如果($skin==“pink1”){
回声“;
}
否则{
echo“你没有皮肤偏好”;
}
}
当代码运行时,它会回显您没有皮肤首选项
我的想法是它没有正确连接到数据库/表;因此,它没有检索任何结果
我知道它应该从数据库中提取$skin=='blue'
任何帮助或建议都将不胜感激
谢谢。mysqli\u query()
仅在出现错误时返回false,这将触发您的或die()
子句
不返回数据的查询不是错误。它仍然是一个有效的结果集,恰好是空的。您需要检查是否返回了0行或非零行
例如
您正在设置
$skin=$\u POST['skin']
-您根本没有将其分配给数据库中的值。非常感谢您的帮助。多亏了你的建议,我已经确定了哪里出了问题。代码现在正在运行。
if (mysqli_num_rows($result) == 0) {
... there is no preference set
} else {
... there's at least one skin preference
}