我試圖爲CD集合創建一個搜索表單..我們有3個表格,所有鏈接都是通過ID號碼..但是對於開始我想要兩個表格先工作從不同的表中搜索表格
對於Search.php,我很努力地獲得Desc定義。我已經從這兩個表中定義了ID,但是如何讓ID鏈接到Desc?
我試圖爲CD集合創建一個搜索表單..我們有3個表格,所有鏈接都是通過ID號碼..但是對於開始我想要兩個表格先工作從不同的表中搜索表格
對於Search.php,我很努力地獲得Desc定義。我已經從這兩個表中定義了ID,但是如何讓ID鏈接到Desc?
因爲你沒有選擇的選擇查詢的catDesc
這會導致不確定的指數錯誤。重寫你的代碼如下
$sqlCD = "SELECT nmc_cd.CDID, nmc_cd.CDTitle, nmc_cd.CDYear, nmc_cd.CDPrice, nmc_cd.catID, nmc_category.catDesc
FROM nmc_cd
JOIN nmc_category on (nmc_cd.catID = nmc_category.catID)
WHERE nmc_cd.CDTitle = '$pCDTitle' OR nmc_cd.CDYear = '$pCDYear' OR
nmc_category.catDesc = '$pCDCategory'";
將根據需要顯示結果。如果你有任何進一步的錯誤讓我知道。
謝謝..它工作:) –
我認爲你正試圖將3張桌子連在一起,你幾乎都有。
您需要將第二個連接添加到描述表中,就像您對類別具有的一樣。然後在你的select語句中添加來自連接表的列。下面的例子,我對你的數據庫和列名作了假設,你需要糾正這些。
SELECT nmc_cd.CDID, nmc_cd.CDTitle, nmc_cd.CDYear, nmc_cd.CDPrice, nmc_cd.catID, nmc_description.description
FROM nmc_cd
JOIN nmc_category on (nmc_cd.catID = nmc_category.catID)
JOIN nmc_description on (nmc_cd.catID = nmc_description.catID)
WHERE nmc_cd.CDTitle = '$pCDTitle' OR nmc_cd.CDYear = '$pCDYear' OR
nmc_category.catDesc = '$pCDCategory'
謝謝,我故意沒有添加到第三個表中,因爲我已經出錯了。所以我認爲最好是一步一步做。只是想確保2張桌子先工作。這裏是它無法找到'catDesc'的錯誤 - >注意:未定義的索引:catDesc在C:\ xampp \ htdocs \ AssignmentPartA \ SearchBy.php上第21行 –
由於沒有對用戶提交的數據進行驗證,所以您對該代碼的SQL注入攻擊是一個喋喋不休,它甚至沒有逃脫! – SpacePhoenix
不用擔心,我現在正在學習php課程...我們還沒有開始在PHP的安全部分:) –