好的。我有這樣的代碼,應該使用html表單中的文本和布爾字段來搜索mysql數據庫。這是一個學習項目,所以不要急於求成。針對mysql的PHP搜索引擎
這個想法是它應該檢查輸入的文本字段,然後查看複選框是否有任何內容。該複選框工作正常,但是當我添加文本框郵編的代碼時,我得到了可怕的。在C:\ Program Files \ Apache Software Foundation \中爲用戶ODBC'@ localhost'(使用密碼:NO)拒絕訪問mysql_real_escape_string()[function.mysql-real-escape-string]第36行的Apache2.2 \ htdocs \ criteriasearch.php「
我無法弄清楚這一點。這是複選框的代碼。這在它自己的工作很好。
if(isset($_POST['search']) && !empty($_POST['search'])){
foreach($_POST['search'] as $key=>$value){
if($value==1) $search[] = "$key";
$searchstring = implode(' AND ', $search);
}
當我添加以下代碼:
$post_map = array(
'postcode'=>'candidate_contact_details.postcode'
);
if(isset($_POST['postcode']) && !empty($_POST['postcode'])) {
foreach ($_POST['postcode'] as $key) {
if (array_key_exists($key, $post_map));
$search[] = $post_map[$key] . '=' . mysql_real_escape_string($value);
}
這給了我訪問被拒絕就這一節,但首節的作品。我很確定我的括號或類似的東西有問題,但不能在我的生活中解決,任何援助將不勝感激。
在此先感謝
我猜不應該有一個;在這條線上嗎? 「if(array_key_exists($ key,$ post_map));」 – Bing
謝謝。分號正在阻止它。我只需要弄清楚如何讓它現在搜索。複選框部分工作正常,但文本框稱爲郵政編碼不是。我要檢查一些事情。 –