我正在尝试添加一名玩家以及给他一些统计数据。
但问题是1.不添加统计数据,2。我需要先添加游戏玩家才能让游戏玩家返回。
$sqlPlayer = "INSERT INTO players (`gender`, `username`, `email`, `password`) VALUES('$gender','$username','$email','$password')";
echo $sqlPlayer."</br>";
if ($db->query($sqlPlayer))
{
echo "Player added. </br>";
$GamerId = $db -> lastInsertId();
echo "Gamer id added:".$GamerId." </br>";
$_SESSION['GamerId'] = $GamerId;
echo "Gamer session added:".$_SESSION['GamerId']." </br>";
$sqlStats = "INSERT INTO stats (`GamerId`,`Health`,`Stamina`,`Food`,`Coins`,`SuperCoin`) VALUES(`$GamerId`,`100`,`250`,`4`,`500`,`0`)";
echo $sqlStats."</br>";
if ($db->query($sqlStats))
{
echo "Stats for player added.</br>";
return true;
}
}
else
{
return false;
}
如上所示,我添加了一些回声,看看哪些有效,哪些无法直观了解发生的事情。
到目前为止,我总是得到:
INSERT INTO players (`gender`, `username`, `email`, `password`) VALUES('*gender*','*username*','*email*','*password*')
Player added.
Gamer id added:25
Gamer session added:25
INSERT INTO stats (`GamerId`,`Health`,`Stamina`,`Food`,`Coins`,`SuperCoin`) VALUES(`7`,`100`,`250`,`4`,`500`,`0`)
Health
,Stamina
,Food
,Coins
,SuperCoin
在数据库中有标准值,因此我也尝试过:< / p>
INSERT INTO stats (`GamerId`,`Health`,`Stamina`,`Food`,`Coins`,`SuperCoin`) VALUES(`25`,` `,` `,` `,` `,` `)
INSERT INTO stats (`GamerId`) VALUES(`25`)
答案 0 :(得分:2)
正如@Saty指出的那样,.style
子句包含反引号而不是撇号。所以,你可以这样做:
VALUES
根据您的数据库架构,使用数字字段的数字也可能很有用。即:
$sqlStats = "INSERT INTO stats (`GamerId`,`Health`,`Stamina`,`Food`,`Coins`,`SuperCoin`) VALUES('$GamerId','100','250','4','500','0')";
^^^ ^^^