将PHP变量插入MySQL

时间:2014-04-11 10:58:47

标签: php mysql

我正在制作一款小游戏以便在PHP中消磨时间,为此,我在MySQL中使用了一个数据库。但是,每次我检查它是否将变量插入数据库时​​,它都不会显示出来。
这是我正在使用的查询:

$sql = "
INSERT INTO `Users`
    (
        Username, 
        Class, 
        Level, 
        Health, 
        Max_Health, 
        Mana, 
        Max_Mana, 
        Intelligence, 
        Strength, 
        Dexitery, 
        Endurance, 
        Vitality, 
        Experience, 
        Required_Experience, 
        Gold, 
        Equiped_Armor, 
        Equiped_Weapon, 
        Inventory_Slot1, 
        Amount1, 
        Inventory_Slot2, 
        Amount2, 
        Inventory_Slot3, 
        Amount3, 
        Inventory_Slot4, 
        Amount4, 
        Inventory_Slot5, 
        Amount5, 
        Inventory_Slot6, 
        Amount6, 
        Inventory_Slot7, 
        Amount7, 
        Inventory_Slot8, 
        Amount8, 
        Inventory_Slot9, 
        Amount9, 
        Inventory_Slot10, 
        Amount10, 
        Skill_1, 
        Skill_2, 
        Skill_3, 
        Skill_4, 
        Skill_5, 
        Skill_6, 
        Skill_7, 
        Location
    ) 
    VALUES 
    (
        ".$Username.", 
        ".$Class.", 
        ".$Level.", 
        ".$Health.", 
        ".$Max_Health.", 
        ".$Mana.", 
        ".$Max_Mana.", 
        ".$Intelligence.", 
        ".$Strength.", 
        ".$Dexitery.", 
        ".$Endurance.", 
        ".$Vitality.", 
        ".$Experience.", 
        ".$Req_Experience.", 
        ".$Gold.", 
        ".$Equiped_Armor.", 
        ".$Equiped_Weapon.", 
        ".$Inventory_Slot1.", 
        0, 
        ".$Inventory_Slot2.", 
        0, 
        ".$Inventory_Slot3.", 
        0, 
        ".$Inventory_Slot4.", 
        0, 
        ".$Inventory_Slot5.", 
        0, 
        ".$Inventory_Slot6.", 
        0, 
        ".$Inventory_Slot7.", 
        0, 
        ".$Inventory_Slot8.", 
        0, 
        ".$Inventory_Slot9.", 
        0, 
        ".$Inventory_Slot10.", 
        0, 
        ".$Skill_1.", 
        ".$Skill_2.", 
        ".$Skill_3.", 
        ".$Skill_4.", 
        ".$Skill_5.", 
        ".$Skill_6.", 
        ".$Skill_7.", 
        'Town'
    )";
mysql_query($sql, $link);

我完全不知道我做错了什么,所以非常感谢一些帮助。提前谢谢。

3 个答案:

答案 0 :(得分:1)

您可以在执行之前尝试在PHP中回显查询。

echo $query;

然后,您可以在mysql shell或phpmyadmin中运行回显的查询,看看为什么它没有被执行。

答案 1 :(得分:1)

您需要引用查询中的值  这样的事情:

$sql = "INSERT INTO `Users`(Username, Class, Level) VALUES ('$Username', '$Class', '$Level');

答案 2 :(得分:1)

'可能是因为大写的列名(例如 U sername)。在严重重音`

中键入这些名称
 $sql = "INSERT INTO `Users`(`Username`, `Class`, ...

除了数字之外的其他变量也应该用引号

$sql = "INSERT INTO `Users`(`Username`, `Class`, ..., `Map`) 
VALUES ('".$Username."', '".$Class."', ... , '".$Map."')";