整个查询会跳过我的第一个if语句 - “NEVRNENIČ”......这是我的 链接数据库结构:http://ibin.co/1j1bFYAswzXI
PS:$ slug与$ naslov相同,但它在整个功能中得到修改。
$id = "SELECT id FROM novica
where slug = '$slug'";
$result = $conn->query($id);
if ($result->num_rows > 0)
{
while($row = $result->fetch_assoc())
{
$idat = $row["id"];
}
}
else //IT SKIPS DIRECTLY TO THE ELSE - SO IT HAS TO BE WITH QUERY $id
{
echo "NE VRNE NIČ!";
}
$sql = "UPDATE novica
SET naslov = '$naslov', podnaslov = '$podnaslov', vsebina = '$vsebina', slug = '$slug', posodobljeno = '$posodobljeno'
where id = '$idat'";
if($conn->query($sql) === true)
{
echo "POSODOBO SI";
}
else
{
$conn->error;
}
$conn->close();
提前感谢您的程序员。
链接到数据库结构:http://ibin.co/1j1bFYAswzXI
答案 0 :(得分:0)
您在if范围内设置$idat
,修复它,在if语句之外声明变量,然后重试。
$id = "SELECT id FROM novica
where slug = '$slug'";
$result = $conn->query($id);
if ($result->num_rows > 0)
{
while($row = $result->fetch_assoc())
{
$idat = $row["id"];
}
}
将...在带有大括号的查询中包装变量。请立即查看结果。
$id = "SELECT id FROM novica
where slug = '{$slug}'";
$result = $conn->query($id);
$idat = 0;
if ($result->num_rows > 0)
{
while($row = $result->fetch_assoc())
{
$idat = $row["id"];
}
}
答案 1 :(得分:0)
问题是,我没有得到一个正确的slug值,我没有在我的其他php文件中定义一个好的变量$ slug。谢谢大家的时间。