繁体   English   中英

错误数组,我无法获取信息 - 在mysql查询中

[英]Error array, i cant get out the information - in mysql query

您好我遇到了一个无法解决的大问题,这是一个非常奇怪的问题:我使用下一个代码:

for( $m = 0; $m < sizeof( $jugadores ) ; $m++ )
{   
            $juga_q = "INSERT INTO jugadores VALUES($jugadores[$m][1],$nom_equipo,'',$jugadores[$m][4]);";
            $result = mysql_query( $juga_q );
            echo $juga_q."<br>";
}

我得到了数组中的信息,我想插入到我的数据库中,因为我将我的查询转储到我在插入中使用的$ juga_q变量中,但是查询没有执行,我做了一个回声来检查什么是失败的并得到了下一个:

 INSERT INTO jugadores VALUES(Array[1],Aston Villa,'',Array[4]);

当我从这个查询中回应数组时,我没有遇到任何问题,这就是为什么我对此感到疯狂并希望你能帮助我。

谢谢!

试着连接它,

$juga_q = "INSERT INTO jugadores VALUES(". $jugadores[$m][1].",$nom_equipo,'',".$jugadores[$m][4].");";

作为一个旁注,查询是脆弱的SQL Injection ,如果变量的值(一个或多个 )从外面走了进来。 请查看下面的文章,了解如何防止它。 通过使用PreparedStatements您可以摆脱使用值周围的单引号。

在字符串中使用数组访问器时,需要将它们包装在括号中。

而不是"VALUES ($jugadores[$m][1],..." ,尝试使用"VALUES ({$jugadores[$m][1]},..."

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM