2013-09-25 103 views
1

我有一個PDO/MySQL數據庫連接。我的數據庫包含各種着陸頁的內容。要查看這些着陸頁我進入*本地主機/ landing_page_wireframe.php *?LPS = X(其中X代表Thread_Segment)附加在瀏覽器中顯示特定頁面。我現在正在對這些頁面進行第二次迭代,並且需要添加一個輔助分類器來跟隨「Thread_Segment」來區分我試圖提取哪個版本。這是我當前工作查詢的一個片段。向PDO/MySql語句添加第二個WHERE語句

<?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"]; 
    } 
?> 

所以我現在需要改變這個在輔助分類器中添加以區分版本。在那裏我開始迷失在下面的PHP代碼

$result = "SELECT * FROM landing_page WHERE Thread_Segment = :lps AND Version = :vrsn"; 

如果這是正確的,到目前爲止,然後我會想象我的查詢將改變這樣的事情。

$stmt = $connection->prepare($result); 
    $stmt->bindParam(':lps', $_GET['lps']); 
    $stmt->execute(); 

我想我需要包括一些這方面的二次迭代在我的PHP交談的二級分類,但不能完全確定如何去一下,然後我會想象我的網址附屬物將從?LPS = X到這樣的事情?LPS = X & VRSN = Y(Y代表的版本)。

我應該說我對PHP/MySql有些新鮮,所以這裏的答案可能很簡單,甚至可能都不可能。也許我甚至不會用這種正確的方式去做。認爲你們都可以提供一些見解,或者指導我對這個問題的研究進行曲線擬合。感謝併爲任何不正確的術語道歉,因爲我絕對是這些技術的新手。

回答

1

URL的更改與您所描述的相同。只需添加另一個bindParam調用使用參數:

$stmt = $connection->prepare($result); 
$stmt->bindParam(':lps', $_GET['lps']); 
$stmt->bindParam(':vrsn', $_GET['vrsn']); 
$stmt->execute(); 
+0

優秀的,這工作像一個魅力!謝謝 – keithiopian

1

添加另一個bindParam()應該在這裏工作。

$stmt = $connection->prepare($result); 
$stmt->bindParam(':lps', $_GET['lps']); 
$stmt->bindParam(':vrsn', $_GET['vrsn']); 
$stmt->execute(); 

您可以通過?lps=X&vrsn=Y訪問它只是作爲一個警告,如果不請這些$_GET PARAMS查詢將失敗。我建議在發送之前將其默認爲:

$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(); 
+0

奇妙的是,我實際上最初嘗試bindParam()方法,但沒有放置在輔助$ _GET參數中,所以失敗了,我以爲我在錯誤的路徑上。感謝您的洞察力和代碼教育。我仍然在學習這一切意味着什麼。十分感謝! – keithiopian