我正在为手机开发一个 php 网站。它的主页上有几部手机的图片,都有一个唯一的 ID。(1,2,3,...)。所以当我点击一个图片时,页面应该被重定向到另一个页面(Details.php)和显示与我刚刚单击的图像相关的图像和信息。我尝试使用会话变量来执行此操作,但如果是这样,我将不得不对每部手机使用单独的会话变量。我该如何解决这个问题。请帮忙。
提前致谢。
您可以在每个链接的末尾details.php
添加类似于$phoneId = $_GET["id"]
并附加?id=#
(#
电话 ID 在哪里)的代码。
$phones
列出电话,这假设您有一个包含数据的数组
foreach ($phones as $phone) {
echo "<a href='details.php?id=" . $phone["id"] . "'><img src='images/phone" . $phone["id"] . ".png'></a>";
}
确定用户选择的电话(在 中details.php
),还假设您有一个$phones
数组
// Check if an ID was sent
if (empty($_GET["id"])) {
// The user didn't select a phone
} else {
// Get the phone ID
$phoneID = $_GET["id"];
// Check if the ID is valid
if (array_key_exists($phoneID, $phones)) {
// Select the phone
$phone = $phones[$phoneID];
} else {
// The ID is invalid
}
}
您可以使用 GET 变量来传递这些信息。
index.php 或列出电话的任何位置
<a href="details.php?phoneid=1"><img src="phone01.jpg"></a>
<a href="details.php?phoneid=2"><img src="phone02.jpg"></a>
<a href="details.php?phoneid=3"><img src="phone03.jpg"></a>
在 details.php 中。你可以用这个
if(isset($_GET['phoneid'])) {
$phoneid = $_GET['phoneid'];
switch ($phoneid) {
case '1':
echo 'Phone 1';
break;
case '2':
echo 'Phone 2';
break;
case '3':
echo 'Phone 3';
break;
}
} else {
// no value of phoneid
}
另一种更简单的方法是使用 mySQL 列出所有电话。