我有一个PDO / MySQL数据库连接。我的数据库包含各种登录页面的内容。要查看这些目标网页,请输入 * localhost / landing_page_wireframe.php * 并附加 ?lps = X (其中X代表Thread_Segment)在浏览器中显示特定页面。我现在进入这些页面的第二次迭代,需要添加一个辅助分类器来跟随“Thread_Segment”来区分我试图提取的版本。这是我当前工作查询的片段。
<?php
$result = "SELECT * FROM landing_page WHERE Thread_Segment = :lps";
$stmt = $connection->prepare($result);
$stmt->bindParam(':lps', $_GET['lps']);
$stmt->execute();
$thread = "";
$threadSegment = "";
$version = "";
$categoryAssociation = "";
while($row = $stmt->fetch()) {
$thread = $row["Thread"];
$threadSegment = $row["Thread_Segment"];
$version = $row["Version"];
$categoryAssociation = $row["Category_Association"];
}
?>
所以我现在需要更改它以在辅助分类器中添加以区分版本。我想我的查询会变成这样的东西:
$result = "SELECT * FROM landing_page WHERE Thread_Segment = :lps AND Version = :vrsn";
如果到目前为止这是正确的,那么我开始迷失的地方是以下PHP代码。
$stmt = $connection->prepare($result);
$stmt->bindParam(':lps', $_GET['lps']);
$stmt->execute();
我想我需要在我的php中包含一些二次迭代来与二级分类器交谈,但不完全确定如何去做,然后我会想象我的网址附件会来自 ?lps = X 类似 ?lps = X&amp; vrsn = Y (Y代表版本)。
我应该声明我对PHP / MySql有些新手,所以这里的答案可能很简单,甚至可能都不可能。也许我甚至没有以正确的方式解决这个问题。认为你们所有人都可以为我提供一些见解,或指导我对此事进行研究。感谢并为任何不正确的术语道歉,因为我对这些技术肯定是新手。
答案 0 :(得分:1)
网址更改如您所述。只需添加另一个bindParam
调用即可使用该参数:
$stmt = $connection->prepare($result);
$stmt->bindParam(':lps', $_GET['lps']);
$stmt->bindParam(':vrsn', $_GET['vrsn']);
$stmt->execute();
答案 1 :(得分:1)
添加另一个bindParam()
应该可以在这里工作。
$stmt = $connection->prepare($result);
$stmt->bindParam(':lps', $_GET['lps']);
$stmt->bindParam(':vrsn', $_GET['vrsn']);
$stmt->execute();
您可以通过?lps=X&vrsn=Y
访问它,但作为警告,如果未请求$_GET
参数,则查询将失败。我建议在通过查询发送之前将其默认为某些内容:
$stmt = $connection->prepare($result);
$lps = isset($_GET['lps']) ? $_GET['lps'] : 'default lps value';
$vrsn = isset($_GET['vrsn ']) ? $_GET['vrsn '] : 'default vrsn value';
$stmt->bindParam(':lps', $lps);
$stmt->bindParam(':vrsn', $vrsn);
$stmt->execute();