解析错误:语法错误,意外T_ENCAPSED_AND_WHITESPACE,期待T_STRING或T_VARIABLE或T_NUM_STRING
我认为这是一个sql问题,但它只是一个我正在运行的简单查询。任何帮助将不胜感激。
$connDB = mysql_connect($host, $user, $pass)
or die("Connect Error: ".mysql_error());
$sql = "SELECT * FROM `images` WHERE `iimageid` = '" . $iimageid . "'";
$runSQL = mysql_query($sql, $connDB);
echo $sql;
?>
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td valign="top">
<? while($display_info = mysql_fetch_array($runSQL)) { ?>
<a href="sfd/pimages/<? echo $display_info['vimage']; ?>" rel="lightbox[g]"><img src="sfd/pimages/thumb/"<? echo $display_info['vimage']; ?>">
<br>
<? } ?>
</td>
</tr>
</table>
</td>
答案 0 :(得分:1)
好吧,我提交这件事后很快就找到了它。 $ iimageid没有被拉,现在照顾。 :)
答案 1 :(得分:0)
试试这个(没有勾号)
$sql = "SELECT * FROM images WHERE iimageid = '" . $iimageid . "'";
或(类型转换为整数)
$sql = "SELECT * FROM images WHERE iimageid = ". (int)$iimageid;
如果它的整数值总是强制转换为整数,那么任何文本字符串都会自动设置为0“出于安全目的”
答案 2 :(得分:0)
看起来您的SQL语句对我无效,请尝试:
"SELECT * FROM images WHERE iimageid = '" . $iimageid . "'";
答案 3 :(得分:0)
对我来说看起来像PHP错误,而不是MySQL。这些错误代码通常由PHP解释器在代码中找到它不喜欢的内容。 您似乎还没有关闭&lt; a&gt;标签? 并且似乎还有一个额外的“在'&lt; img&gt;标记的'拇指/'部分之后。
我会重写这一部分;
<? while($display_info = mysql_fetch_array($runSQL)) { ?>
<a href="sfd/pimages/<? echo $display_info['vimage']; ?>" rel="lightbox[g]"><img src="sfd/pimages/thumb/"<? echo $display_info['vimage']; ?>">
<br>
<? } ?>
如下所示,看看是否有帮助。
<?
while ( $display_info = mysql_fetch_array($runSQL) ) {
print "<a href=\"sfd/pimages/{$display_info['vimage']}\" rel=\"lightbox[g]\">";
print "<img src=\"sfd/pimages/thumb/{$display_info['vimage']}\">";
print "</a><br>\n";
}
?>
答案 4 :(得分:0)
每当有人使用mysql_ *函数时,小猛禽耶稣就会吃掉一只猫头鹰。您应该开始使用PDO(http://fr.php.net/manual/en/book.pdo.php),对于混合html和php的部分,您可能更喜欢替代语法http://www.php.net/manual/en/control-structures.alternative-syntax.php