繁体   English   中英

通过同一页面上的 HTML 锚点调用 PHP

[英]Calling PHP via a HTML anchor on the same page

我目前正在阅读我的教师提供的一段代码,但我无法理解它是如何工作的。 具体来说,锚如何在没有 method="post" 或 method="get" 的情况下链接到 php。 如果有人可以解释或将我链接到相关材料以进行进一步阅读,请不胜感激。 非常感谢。

if (!isset($_SESSION['cart'])){
    $_SESSION['cart'] = array();
}
if (isset($_GET['buy'])) {
    $_SESSION['cart'][] = $_GET['buy'];
    header('location: ' . $_SERVER['PHP_SELF']. '?' . SID);
    exit();
}

for ($i=0; $i<count($items); $i++){
    echo "<tr>";
    echo "<td>" .$items[$i]. "</td>";
    echo "<td>$" .number_format($prices[$i], 2). "</td>";
    echo "<td><a href='" .$_SERVER['PHP_SELF']. '?buy=' .$i. "'>Buy</a></td>";
    echo "</tr>";
}

如果尚未在 session 中创建已购买项目索引的购物车,则

if (!isset($_SESSION['cart'])){
    $_SESSION['cart'] = array();
}

打开带有购买查询参数的链接时,购买值将添加到 session 购物车。 在该页面被重定向到没有购买参数的位置之后。

if (isset($_GET['buy'])) {
    $_SESSION['cart'][] = $_GET['buy'];
    header('location: ' . $_SERVER['PHP_SELF']. '?' . SID);
    exit();
}

要购买的物品清单打印在页面上(我的问题代码不完整)。

for ($i=0; $i<count($items); $i++){
    echo "<tr>";
    echo "<td>" .$items[$i]. "</td>";
    echo "<td>$" .number_format($prices[$i], 2). "</td>";
    echo "<td><a href='" .$_SERVER['PHP_SELF']. '?buy=' .$i. "'>Buy</a></td>";
    echo "</tr>";
}
  1. 使用 GET 方法链接打开页面。

  2. 链接查询参数可以通过特殊的 $_GET 变量访问

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM