0
我有一個頁面index.php
,它有三個關鍵字,用戶可以在其中搜索數據庫。此頁面代碼在php中使用多個關鍵字搜索數據庫
<section id="services" class="emerald">
<div class="container">
<form class="form-horizontal" role="form" action="search.php" enctype="multipart/form-data" method="post">
<div class="row">
<div class="col-md-4 col-sm-6">
<div class="media">
<div class="media-body">
<?php
$servername = "xyz.com";
$username = "xyz";
$password = "xyz123";
$dbname = "xyz";
// Create connection
$con = mysqli_connect($servername, $username, $password, $dbname);
// Check connection
if (!$con) {
die("Connection failed: " . mysqli_connect_error());
}
$sql = "SELECT treatment_type FROM treatment_type";
$result = $con->query($sql);
echo "<label for='treatment_type'>Treatment Type: </label>";
echo "<select name='treatment_type' id='treatment_type' class='form-control'>";
while($row = $result->fetch_assoc()) {
echo "<option value='" . $row['treatment_type'] . "'>" . $row['treatment_type'] . "</option>";
}
echo "</select>";
?>
</div>
</div>
</div>
<div class="col-md-4 col-sm-6">
<div class="media">
<div class="media-body">
<?php
$servername = "xyz.com";
$username = "xyz";
$password = "xyz123";
$dbname = "xyz";
// Create connection
$con = mysqli_connect($servername, $username, $password, $dbname);
// Check connection
if (!$con) {
die("Connection failed: " . mysqli_connect_error());
}
$sql = "SELECT course FROM course";
$result = $con->query($sql);
echo "<label for='course'>Course/Conference Type: </label>";
echo "<select name='course' id='course' class='form-control'>";
while($row = $result->fetch_assoc()) {
echo "<option value='" . $row['course'] . "'>" . $row['course'] . "</option>";
}
echo "</select>";
?>
</div>
</div>
</div><!--/.col-md-4-->
<div class="col-md-4 col-sm-6">
<div class="media-body">
<?php
$servername = "xyz.com";
$username = "xyz";
$password = "xyz123";
$dbname = "xyz";
// Create connection
$con = mysqli_connect($servername, $username, $password, $dbname);
// Check connection
if (!$con) {
die("Connection failed: " . mysqli_connect_error());
}
$sql = "SELECT facilities FROM facilities";
$result = $con->query($sql);
echo "<label for='facilities'>Facilities: </label>";
echo "<select name='facilities' id='facilities' class='form-control'>";
while($row = $result->fetch_assoc()) {
echo "<option value='" . $row['facilities'] . "'>" . $row['facilities'] . "</option>";
}
echo "</select>";
?>
</div>
</div>
<div class="col-md-4 col-sm-6">
<div class="media-body">
<div class="col-md-8">
<input class="btn btn-primary" value="Search" type="submit" name="submit">
</div>
</div>
</div>
</div>
</form>
</div>
</section>
代碼的search.php
<?php
error_reporting(0);
$con=mysqli_connect("xyz.com","xyz","xyz123","xyz");
// Check connection
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$treatment_type = mysqli_real_escape_string($con, $_POST['treatment_type']);
$course = mysqli_real_escape_string($con, $_POST['course']);
$facilities = mysqli_real_escape_string($con, $_POST['facilities']);
$sql1 = "SELECT * FROM office WHERE keywords LIKE '%$treatment_type' and '%$course' and '%$facilities'";
$result = mysqli_query($con, $sql1);
if (mysqli_num_rows($result) > 0)
{
while($row = mysqli_fetch_assoc($result)) {
echo "Office name: " . $row["office_name"]. " - Location: " . $row["office_address"]. " " . $row["office_city"]. "<br>";
}
} else {
echo "0 results";
}
mysqli_close($con);
?>
什麼,我試圖做的是,當用戶點擊搜索鏈接,用戶被重定向到另一個searchresult.php
頁面,其中一個顯示所有可用詳細信息的列表。但是當我運行腳本時,即使值存在於數據庫中,我也會得到值爲0的結果。
也許需要使用' '%$ VAR%'''因爲'%$ var''說,尋找一些與$ var的結束。你需要使用關鍵字LIKE'%$ var%'和關鍵詞LIKE'%var%'...' – Class 2014-11-06 06:26:47
我建議你打印搜索查詢並運行在db/phpmyadmin – 2014-11-06 06:29:09
@Ram Sharma有一個錯誤,但我不是能夠識別它 – Sam 2014-11-06 06:36:19