1

因此,我有这段代码将添加到 lvl_log 表并在单击此页面时更改生物表中的百分比,当我单击该页面时,不会将任何数据添加到表中。

    //Add percentage if it hasn't been clicked yet
$ip = $_SERVER['REMOTE_ADDR'];

$cq = "SELECT ip FROM lvl_log WHERE ID = '$id' AND IP = '$ip'";
$cresults = mysql_query($cq);

if(mysql_num_rows($cresults) == 0)
{
    if($percent != 100)
    {
        $newpercent = $percent + 5;

                    mysql_query("UPDATE Creatures SET Percent='$newpercent' WHERE id='$id'");
            }

            $sql="INSERT INTO lvl_log (id, ip)
            VALUES('".$id."', '".$ip."')";


            mysql_query($sql,$con);
    }
4

1 回答 1

3

执行查询时,请始终检查结果。

出于调试目的,您可以在每个查询的末尾添加一条语句以获得即时反馈:

mysql_query( $query ) or die( mysql_error() );

这将揭示失败的确切原因。

在生产代码中,您应该考虑记录错误而不是在屏幕上显示它。你可以这样做:

$result = mysql_query( $query );

if ( false === $result ) {
    // Log the output of mysql_error() or send an email to an admin
}

最后,请注意这些mysql_*函数在当前版本的 PHP中已被弃用。考虑更新您的代码以使用mysqliPDO

于 2013-06-19T16:03:39.357 回答