MySQL データベースに保存されている画像が取り込まれているリストに 8 つの製品画像がある製品ページがあります。すべての画像には ID が関連付けられており、価格、製品名、および説明も同じ ID に関連付けられています。
私がやろうとしていることの背後にある考え方は次のとおりです。ユーザーが 8 つの製品画像の 1 つをクリックすると、同じ画像と、その ID でデータベースに保存されているすべての情報を表示する「チェックアウト」ページにリダイレクトされます。
現時点では、画像の ID (url.com/checkout.php?id=1) を含むチェックアウト ページの URL があり、その ID の下に保存されているすべての情報を URL に取得する方法を見つけたいと考えていました。ページ上の呼び出された場所に表示されます。
製品ページのリストに画像を表示する私のphpコードは次のとおりです。
// Grab the data from our template table
$sql = "select * from templates";
$result = mysql_query($sql) or die ("Could not access DB: " . mysql_error());
while ($row = mysql_fetch_assoc($result))
{
echo "<li>";
echo "<a class=\"caption\" href=\"purchase.php?id=\"" . $row['id'] . ">";
// Note that we are building our src string using the ID from the database
echo "<img src=\"http://URL-REMOVED.com/file_display.php?id=" . $row['id'] . "\" />";
echo "<span>";
echo "<big>" . $row['name'] . "</big>";
echo $row['description'];
echo "</span>";
echo "</a>";
echo "</li>";
}
クリックされた製品の情報を収集するはずのphpコードを次に示します(収集しません)。
if (isset($_GET['id']))
$id=$_GET['id'];
else
$id=1;
if (isset($_GET['action']))
$action=$_GET['action'];
else
$action="empty";
switch($action){
case "add":
if($_SESSION['cart'][$id])
$_SESSION['cart'][$id]++;
else
$_SESSION['cart'][$id]=1;
break;
case "remove":
if($_SESSION['cart'][$id])
{
$_SESSION['cart'][$id]--;
if($_SESSION['cart'][$id]==0)
unset($_SESSION['cart'][$id]);
}
break;
case "empty":
unset($_SESSION['cart']);
break;
}
//Display Cart
if(isset($_SESSION['cart'])) {
$total=0;
foreach($_SESSION['cart'] as $id => $x) {
$result=mysql_query("select image,name,price,description from templates WHERE id=$id");
$myrow=mysql_fetch_array($result);
$image=$myrow['image'];
$name=$myrow['name'];
$price=$myrow['price'];
$description=$myrow['description'];
}
}
そして、ここに情報が表示されるはずの実際の HTML/PHP があります。
<a class="caption" href="checkout.php">
<img src="http://URL-REMOVED.com/file_display.php?id=<?php $myrow['id'] ?>"/>
<span>
<big>
<strong><?php $myrow['name'] ?></strong>
</big>
<div class="price"><?php $myrow['price'] ?></div>
</span>
</a>
</div>
<div id="info_form_container">
<div class="product_info">
<div class="control-group">
<strong>Template Name:</strong>
<?php $myrow['name'] ?>
</div>
<div class="control-group">
<strong>Template Description:</strong>
<?php $myrow['description'] ?>
</div>
<div class="control-group">
<strong>Template Price: </strong>
<?php $myrow['price'] ?>
</div>
</div>
これが最善の方法であるかどうかは本当にわかりませんか?しかし、私は間違いなく画像をデータベースに保存したいと思っており、IDを使用してそれらを呼び出したいと思っています...
どうすればこれを達成できますか?コードのどこが間違っていますか?