我想搜索我的數據庫,我最初只用一個條件工作,但現在有四個,它只會刷新頁面,刪除字段輸入。MySQL多個條件
我試過只使用逗號,但這似乎也不起作用。我一直無法在Google上找到有關他們是極限的任何信息,但也沒有使用四種條件的示例。有沒有正確或更好的方法可以嘗試?
if(isset($_POST['search'])){
$lname = trim($_POST['lname']);
$address = trim($_POST['address']);
$street = trim($_POST['street']);
$city = trim($_POST['city']);
$county = trim($_POST['county']);
if($lname==""){
$error[] = "Provide Last Name.";
}elseif($address=""){
$error[] = "Provide House Number/Name.";
}elseif($street==""){
$error[] = "Provide Street.";
}elseif($city==""){
$error[] = "Provide City.";
}elseif($county==""){
$error[] = "Provide County.";
}else{
try{
$stmt = $conn->prepare("SELECT * FROM clients WHERE lname=lname AND address=address AND street=street AND city=city AND county=county");
$stmt->execute(array("lname"=>$lname, "address"=>$address, "street"=>$street, "city"=>$city, "county"=>$county));
$userRow=$stmt->fetch(PDO::FETCH_ASSOC);
if($userRow==''){
$user->redirect('./results.php?new='.$lname.$street);
}else{
if($userRow['rating'] == 'good'){
$user->redirect('./results.php?good='.$lname.$street);
}
if($userRow['rating'] == 'cautionextra'){
$user->redirect('./results.php?cautionextra='.$lname.$street);
}
if($userRow['rating'] == 'cautiondiscount'){
$user->redirect('./results.php?cautiondiscount='.$lname.$street);
}
if($userRow['rating'] == 'cautionlate'){
$user->redirect('./results.php?cautionlate='.$lname.$street);
}
if($userRow['rating'] == 'badnopay'){
$user->redirect('./results.php?badnopay='.$lname.$street);
}
if($userRow['rating'] == 'badabusive'){
$user->redirect('./results.php?badabusive='.$lname.$street);
}
}
}
catch(PDOException $e){
echo $e->getMessage();
}
}
}
在phpMyAdmin執行SELECT * FROM clients WHERE lname=lname AND address=address AND street=street AND city=city AND county=county
返回所有行的,偉大的,但我var_dump($userRow);
,它顯示的其中一個我試圖尋找不同行的結果。
否,所有這些列都需要得到結果。這是一個非常具體的搜索 –
最有可能大寫不匹配。你有沒有試過通過MySQL運行這個查詢? – Akshay
沒有我看到的,一切都是小寫排除條件,是的,我得到0錯誤。 –