0

我正在为手机开发一个 php 网站。它的主页上有几部手机的图片,都有一个唯一的 ID。(1,2,3,...)。所以当我点击一个图片时,页面应该被重定向到另一个页面(Details.php)和显示与我刚刚单击的图像相关的图像和信息。我尝试使用会话变量来执行此操作,但如果是这样,我将不得不对每部手机使用单独的会话变量。我该如何解决这个问题。请帮忙。

提前致谢。

4

2 回答 2

2

您可以在每个链接的末尾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
    }
}
于 2012-06-07T06:32:53.840 回答
1

您可以使用 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 列出所有电话。

于 2012-06-07T06:52:09.677 回答