好吧显然我是初学者。
我在这里尝试做的可能很简单。 我正试图让我的数据库的所有字段在我的网站上回显。所以我用它来只显示基本的细节:
<?php
// Make a MySQL Connection
mysql_connect("localhost", "root", "") or die(mysql_error());
mysql_select_db("crnew") or die(mysql_error());
$result = mysql_query("SELECT * FROM releases")
or die(mysql_error());
while($row = mysql_fetch_array( $result )
) {
// Print out the contents of each row into a table
echo '<ul class="releaselist">';
echo '<li>';
echo $row['products_name'];
echo '</li>';
echo '<li>';
echo $row['products_title'];
echo '</li>';
echo '<li>';
echo '<a href="detailed.php?products_id="><img class="releaseimg" src="'.$row['products_image'].'"></a>';
echo '</li>';
echo '</ul>';
}
?>
到目前为止,eveything工作正常。 我想要做的就是当我点击一张图片时,让我的网址看起来像这样。
www.mywebsite.com/detailed.php?id=1
并显示表RELEASES
中的所有内容我完成它的方式不起作用是:
<?php
mysql_connect("localhost", "root", "") or die(mysql_error());
mysql_select_db("crnew") or die(mysql_error());
$result = mysql_query("SELECT * FROM releases
WHERE products_id=products_id")
or die(mysql_error());
if ($result){
$row = mysql_fetch_array($result);
echo $_GET['products_id'];
}
?>
答案 0 :(得分:2)
如果我理解正确,您的第一个脚本需要更新为:
echo '<a href="detailed.php?id=' . $row['products_id'] . '><img class="releaseimg" src="'.$row['products_image'].'"></a>';
这会将您的图片变成链接。此时,您的第二个脚本应该可以使用:
_GET['id']
检索此值并在查询中使用它。正是如此:
$result = mysql_query("SELECT * FROM releases
WHERE products_id=" . mysql_real_escape_string($_GET['id']));
现在,如果你真的想在URL而不是id中使用products_id,只需更改它&#39; id&#39;到第一个脚本的echo行中的products_id和第二个脚本中的所有$ _GET用法。
答案 1 :(得分:1)
尝试更改此行:
echo '<a href="detailed.php?products_id="><img class="releaseimg" src="'.$row['products_image'].'"></a>';
对此:
echo "<a href='detailed.php?products_id=".$row['products_id']."'><img class='releaseimg' src='".$row['products_image']."'></a>";
答案 2 :(得分:0)
嗯尝试使用$ row [&#39; products_id&#39;]代替$ _GET [&#39; products_id&#39;];访问网页时使用$ _GET,$ row [&#39; products_image&#39;]工作的原因是您访问了数据库结果。
答案 3 :(得分:-1)
你错误地使用了products_id ......
您的代码应该是这样的......
<?php
mysql_connect("localhost", "root", "") or die(mysql_error());
mysql_select_db("crnew") or die(mysql_error());
$result = mysql_query("SELECT * FROM releases
WHERE products_id='".intval($_GET['id'])."'")
or die(mysql_error());
if ($result){
$row = mysql_fetch_array($result);
echo $row['products_id'];
}
?>