使用两个参数

时间:2016-12-07 23:02:43

标签: php mysql

我在一个相当冗长的更新查询结束时使用以下代码(为了便于阅读,我删除了其余的代码):

WHERE username = '$username' AND charname = '$charname'"

此函数检查角色是否属于用户,并且该函数正在更新正确的角色。

当我尝试在页面上使用更新功能时,我会收到以下文字:

  

您的SQL语法有错误;检查与您的MySQL服务器版本相对应的手册,以便在' Myusername'附近使用正确的语法。 AND charname =' Mycharacter''在第1行

一些快速说明:

Myusername是创建此角色的帐户的用户名。代码在用户登录后通过会话变量检索。

Mycharacter是用户尝试更新的字符的名称。当用户单击激活此功能的按钮时,将从同一页面上的文本框中检索它。

我已经彻底梳理了WHERE之前的MySQL更新查询,并且语法都很好,所以我很难理解为什么这不起作用!

编辑:仅供参考,这是整个查询。公平的警告,它很长......如果你是一个辐射粉丝,你或许可以弄清楚我想做什么;)

$update = "UPDATE Publicchars 
            SET chargender = '$chargender',
                ruleset = '$ruleset', level = '$level',
                hp = '$hp', ap = '$ap',
                carryweight = '$carryweight', defenses = '$defenses',
                strength = '$strength', perception = '$perception',
                endurance = '$endurance', charisma = '$charisma',
                intelligence = '$intelligence', agility = '$agility',
                luck = '$luck', skills = '$skills',
                perks = '$perks', traits = '$traits',
                implants = '$implants', abilities = '$abilities',
                weapons = '$weapons', armor = '$armor',
                ammo = '$ammo', drugs = '$drugs',
                food = '$food', alcohol = '$alcohol',
                meds = '$meds', items = '$items',
                karma = '$karma', reputation = '$reputation',
                accomplishments = '$accomplishments',
                backstory = '$backstory', notes = '$notes'  
            WHERE username = '".$username."' 
              AND charname = '".$charname."'";

1 个答案:

答案 0 :(得分:0)

您在声誉后错过了'

然后尝试:

WHERE username = '$username' AND charname = '$charname'";

这似乎让我的语法至少保持高兴......