Php 插入、更新、创建表、查询不在wampserver中工作

Php 插入、更新、创建表、查询不在wampserver中工作,php,mysql,sql,Php,Mysql,Sql,我一直在为一个php项目使用wampserver,但DML查询对我来说不起作用。下面是我一直在使用的一些测试代码 $query='insert into register(first_name) values("swagmaster")'; echo($query); $query = mysqli_real_escape_string($connection,$query); echo"<br>$query"; if(mysqli_real_query($connectio

我一直在为一个php项目使用wampserver,但DML查询对我来说不起作用。下面是我一直在使用的一些测试代码

$query='insert into register(first_name) values("swagmaster")';

echo($query);

$query = mysqli_real_escape_string($connection,$query);

echo"<br>$query";

if(mysqli_real_query($connection,"'".$query."'")===TRUE)
{
    echo"woohoo!";
}
else
{
    echo"query failed";
}
echo(mysqli_error($connection));
$query='insert-into register(first_name)值(“swagmaster”);
echo($query);
$query=mysqli\u real\u escape\u字符串($connection,$query);
回显“
$query”; if(mysqli_real_query($connection,“''.$query.”“)==TRUE) { 回声“呜呼!”; } 其他的 { 回显“查询失败”; } echo(mysqli_错误($connection));
运行此操作时,我得到以下输出:

在寄存器(名字)中插入值(“swagmaster”)
插入寄存器(名字)值(\“swagmaster\”)查询失败

您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以了解第1行“插入寄存器(名字)值(\“swagmaster\”)附近使用的正确语法

但是,select语句可以正常工作。我怀疑问题出在mysql设置中。有什么建议吗

更新:

使用您的提示组合,查询现在开始工作。谢谢大家!

请尝试此查询

$query = "INSERT INTO `register` SET `fieldname`='{$vaue}',`field2`='{$value2}'";
将查询从

$query='insert into register(first_name) values("swagmaster")';

正如弗雷德二世所说,你不需要在这里添加

if(mysqli_real_query($connection,"'".$query."'")===TRUE)
改为

if(mysqli_real_query($connection,$query)===TRUE)
你曾经

$query=mysqli\u real\u escape\u字符串($connection,$query)

但这在查询中避开了所有引号。这是不正确的。对于受保护的fro SQL注入,您应该只使用转义函数来查询值,而不是查询

对于您的示例,您不需要此字符串

但是如果你使用变量,那么你应该使用它

$value = "swagmaster";
$value =  mysqli_real_escape_string($value);
$query='insert into register(first_name) values("' . $value . '")';
在$query中已经是正确的查询。加引号是不正确的。只用


if(mysqli\u real\u query($connection,$query)==TRUE)

然后尝试
$query=“插入寄存器(名字)值('swagmaster')”使用反引号。然后
if(mysqli\u real\u query($connection,$query)==TRUE)
谢谢你的插件;-)很抱歉,我尝试了一些随机的东西,希望它们能起作用。我以前有上面的代码,但它不起作用。如果你想玩,那么就玩逻辑,而不是语法。谢谢你关于转义的建议,但它没有解决问题
$value = "swagmaster";
$value =  mysqli_real_escape_string($value);
$query='insert into register(first_name) values("' . $value . '")';