【发布时间】:2015-08-31 13:52:57
【问题描述】:
我正在努力学习如何创建函数,但我不知道我在这里做错了什么。谁能给我解释一下?
我没有使用 strip_tags(),为什么会出现这个错误?
我不需要它返回,我只需要更新数据库,如果
$xp is bigger than $row['basenumber']
谢谢!
$xp = $row['userxp'];
$lvl = $row['userlevel'];
contXP($xp, $lvl);
功能:
function contXP ($xp, $lvl) {
$query = "SELECT
number, basenumber
FROM levels
WHERE number = '$lvl'";
$result = $conn ->query($query);
if (!$result) die ($conn->error);
$rows = $result->num_rows;
while ($row = $result->fetch_array (MYSQLI_ASSOC));
if ($xp >= $row['basenumber'])
{
// up level
$level = "UPDATE users
SET userlevel = userlevel + 1
WHERE idusers = '$iduser';";
$re_level = $conn ->query($level);
if (!$re_level) die ($conn->error);
$re_rows = $re_level->num_rows;
$re_row = $re_level->fetch_array (MYSQLI_ASSOC);
$re_level->close(); //close query
}
$result->close(); //close query
}
结果:
Warning: strip_tags() expects parameter 1 to be string, array given in on line 32
【问题讨论】:
-
strip_tags()不在您的问题代码中。它在某个地方,可能在一个包含的文件中;谁知道呢。 -
@Bibiana
$conn未在contXP函数中定义。我不确定你在这里跑什么?但绝对不是您发布的代码。 -
没错,我忘记定义全局(我知道这不好,但我还没有学会如何制作类)。我正在尝试从一个查询中获取 $xp 和 $lvl 变量,并将它们发送到一个函数,并在该函数上使用它们。我可以这样做吗?
-
我丢了3分因为我问了一个问题?!!你可以说这段代码没有显示这个错误。如果我的函数没有显示任何错误但仍然不起作用,我怎么知道这个错误来自另一个代码?!我想我会在另一个地方问问题。谢谢。
标签: php mysql string function mysqli