Php MySql和mysqli都不工作

Php MySql和mysqli都不工作,php,mysql,database,Php,Mysql,Database,我对插入db的一个小脚本有问题: $sql2 = "INSERT INTO players ( 'ign', 'level', 'str', 'dex', 'int', 'con', 'luck', 'datum', 'clasa' ) VALUES ( '$ign' , '$level' , '$str' , '$dex' , '$int' , '$con' , '$luck' , '

我对插入db的一个小脚本有问题:

$sql2 = "INSERT INTO players ( 
             'ign', 'level', 'str', 'dex', 'int', 'con', 'luck', 'datum', 'clasa' ) 
          VALUES 
             ( '$ign' , '$level' , '$str' , '$dex' , 
               '$int' , '$con' , '$luck' , '$date' , '$class' )";
if(mysql_query($sql2)) {
    $tmp = "Added player to DB";
} else {
    $tmp = mysql_error();
}
我在很多网站上使用这个,但在这里它不起作用。 我得到的错误是:您的SQL语法有错误;查看与您的MySQL服务器版本对应的手册,以获取可在附近使用的正确语法

然后我尝试了这种方法:

    $mysqli = new mysqli("localhost", "mirdel_wiki", "mirko77", "mirdel_wiki");
    if (mysqli_connect_errno()) {
        printf("Connect failed: %s\n", mysqli_connect_error());
        exit();
    } else {
        $tmp = 'Connection working';
    }

    if($result = $mysqli->query("INSERT INTO players ( ign, level, str, dex, int, con, luck, datum, clasa ) 
                    VALUES ( 'bwanana' , '333' , '333' , '555' , '444' , '666' , '555' , '12514' , 'warrior' )")) {
        $tmp = "Added player to DB";

    } else {
        $tmp = "ERROR";
    }   
连接是好的,但在插入时我总是得到错误。顺便说一句,值应该是vars,但使用这个数字也不好:/

哪里有错误,我遗漏了什么

$sql2 = "INSERT INTO players ( 'ign', 'level', 'str', 'dex', 'int', 'con', 'luck', 'datum', 'clasa' ) VALUES ( '{$ign}' , '{$level}' , '{$str}' , '{$dex}' , '{$int}' , '{$con}' , '{$luck}' , '{$date}' , '{$class}' )";

对第一个查询尝试此操作

wrap int in backticks它是一个保留字。在第一个查询中,您使用单引号作为列名,删除它们,只为INT添加反勾号。您使用单引号作为应该有反勾号的位置。这就是为什么使用描述性字段名是一个好主意。使用你能想到的最短的列名没有任何好处。thx对于所有的帮助,它是有效的。我删除了单引号并将列名改为非int,感谢您的快速帮助这是查询的最后一步:$sql2=INSERT-INTO-ign、level、str、dex、inte、con、luck、datum、clasa值“$ign”、“$level”、“$str”、“$dex”、“$int”、“$con”、“$luck”、“$date”、“$class”;