我创建了一个后台工作脚本,它在条件下更新我的数据库表。
这是我的主脚本:
<?php
require_once('conn.php');
$query = "SELECT * FROM user WHERE id = '" . $_COOKIE['username'] . "'";
$data = mysqli_query($dbc, $query);
$row = mysqli_fetch_array($data);
if($row['ehp'] > $row['required_ehp']) {
// The 'ehp' column is greater than 'required_php'
$calc = $row['ehp'] % $row['required_ehp'];
$new = $row['required_ehp'] * 12;
$new_lvl = $row['level'] + 1;
$query2 = "UPDATE user set level = '$new_lvl', ehp = '$calc', required_ehp = '$new'";
mysqli_query($dbc, $query2);
echo 'query successful';
} else {
echo 'query unsuccessful' . mysql_error();
}
echo $row['ehp'] % $row['required_ehp'];
echo $row['required_ehp'];
?>
我从此脚本获取的错误消息是:
查询不成功
警告:在第21行的H:\ AppServ \ www \ sp \ userlevel.php中除以零
我不知道什么是错的。请帮我。
答案 0 :(得分:0)
由于您看到query unsuccessful
,这意味着该行if($row['ehp'] > $row['required_ehp'])
为false
。
在行echo 'query unsuccessful' . mysql_error();
中没有mysql错误,因此您只能看到行query unsuccessful
。
你也可以通过0警告获得。这是由行echo $row['ehp'] % $row['required_ehp'];
引起的。似乎$row['required_ehp']
是0
。
总结一下,或许您期望在$row
中的数据不是您所期望的。也许cookie数据不正确?
此外,将Cookie数据直接放入查询中是一个可怕的想法,很容易被黑客攻击。
答案 1 :(得分:0)
好的,我发现我的错误只是在我的数据库的Parent {
id: main
}
Repeater {
model: main.elements
delegate: Whatever { // will create one for each element
prop: something
prop2: myValue
}
}
中,我正在搜索id
列。对不起打扰你们。