很抱歉这个问题是“你可以解决它”吗,但这一点代码让我困惑了一段时间。
我基本上是用一堆行和列创建一个表,并且在每一个表中我都有一个稍微改变的SQL查询。为了让它变得更容易而不是输入所有内容,我制作了一些脚本,但它开始变得有点复杂,所以你们中的任何人都能设法让它变得正确吗?
echo '<td background="images/map/';
$tile = mysql_fetch_array(mysql_query("SELECT image FROM map WHERE horizontal = ${'mapPiece' . $mapPieceCount . [0]} AND verticle = ${'mapPiece' . $mapPieceCount . [0]}"));
echo $tile[0];
echo '.png"></td>';
谢谢Stanni
答案 0 :(得分:5)
假设我解释了这一点,[0]需要超出花括号:
echo '<td background="images/map/';
$tile = mysql_fetch_array(
mysql_query(
"SELECT image FROM map WHERE horizontal = ".
${'mapPiece' . $mapPieceCount}[0].
" AND verticle = ".
${'mapPiece' . $mapPieceCount}[0]
)
);
echo $tile[0];
echo '.png"></td>';
答案 1 :(得分:4)
首先,你不能像这样连接数组索引[0]
,就像你在字符串上连接一样。总的来说,如果你只是添加一些额外的线条以使整洁的东西更容易:
$currentPiece = 'mapPiece' . $mapPieceCount;
echo '<td background="images/map/';
$query = 'SELECT image '.
'FROM map '.
'WHERE horizontal = '.${$currentPiece}[0].' '.
'AND verticle = '.${$currentPiece}[0];
$result = mysql_query($query);
$tile = mysql_fetch_array($result);
echo $tile[0];
echo '.png"></td>';