有人可以帮助您使用此代码。代码基本上要求做两件事之一。如果输入了邮政编码,则代码执行半径搜索,并在数据库中搜索包含数组中邮政编码的任何行。但是,如果输入城市/街道,我希望代码绕过这个并只搜索包含它们的详细信息。守则如下。
$postcode = str_replace( '+', '%20', $postcode );
$conn = mysql_connect('127.0.0.1','user','pass') or die('db connect error:'.mysql_error());
mysql_select_db('database', $conn) or die('could not select database');
$sqlstring = "SELECT * FROM postcodelatlng WHERE postcode ='".$postcode."'";
$result = mysql_query($sqlstring);
$row = mysql_fetch_assoc($result);
$lng = $row["longitude"] / 180 * M_PI;
$lat = $row["latitude"] / 180 * M_PI;
mysql_free_result($result);
$sqlstring2 = "SELECT DISTINCT
postcodelatlng.postcode,
(
6367.41 * SQRT(
2 * (
1- COS(RADIANS(postcodelatlng.latitude)) * COS(".$lat.") * (
SIN(RADIANS(postcodelatlng.longitude)) * SIN(".$lng.") + COS(RADIANS(postcodelatlng.longitude)) * COS(".$lng.")
) - SIN(RADIANS(postcodelatlng.latitude)) * SIN(".$lat.")
)
)
) AS Distance
FROM
postcodelatlng AS postcodelatlng
HAVING Distance <= '".$radius."'
ORDER BY Distance ";
$result1 = mysql_query($sqlstring2) or die('query failed: ' . mysql_error());
while($row = mysql_fetch_array($result1)){
if ($row['postcode'] == 0){
$sqlstring3="SELECT * FROM property_details WHERE street = '".$postcode."' OR address3 = '".$postcode."' OR county = '".$postcode."' ";
$result2 = mysql_query($sqlstring3) or die('Query Failed: ' . mysql_error());
while($row2 = mysql_fetch_array($result2)) {
echo '
<div class="container">
<div class="row">
<a href="viewprop.php?id='.$row2[0].'">
<div class="col-md-12">
<div class="col-md-12 col-md-offset-0 inner col-xs-12" align="justify">
<div class="col-md-2 col-xs-12">
<img src="images/rentals/1.jpg" width="80%" height="80%" />
</div>
<div class="col-md-8 col-xs-12">
<h2>'. $row2[13]. '</h2>
</div>
<div class="col-md-2 col-xs-12">
<h4 class="rbgclr2">£'. $row2[2]. ' Per Month</h3>
<h5 class="rbgclr1">£'. $row2[3]. ' Deposit</h4>
<br />
<p>Bedrooms = '. $row2[4]. '</p>
</div>
</div>
</div>
</a>
</div>
</div>
<br />';
}
}
else {
$sqlstring4="SELECT * FROM property_details WHERE postcode = '".$row['postcode']."' ";
$result3 = mysql_query($sqlstring4) or die('Query Failed: ' . mysql_error());
while($row2 = mysql_fetch_array($result3)) {
echo '
<div class="container">
<div class="row">
<a href="viewprop.php?id='.$row2[0].'">
<div class="col-md-12">
<div class="col-md-12 col-md-offset-0 inner col-xs-12" align="justify">
<div class="col-md-2 col-xs-12">
<img src="images/rentals/1.jpg" width="80%" height="80%" />
</div>
<div class="col-md-8 col-xs-12">
<h2>'. $row2[13]. '</h2>
</div>
<div class="col-md-2 col-xs-12">
<h4 class="rbgclr2">£'. $row2[2]. ' Per Month</h3>
<h5 class="rbgclr1">£'. $row2[3]. ' Deposit</h4>
<br />
<p>Bedrooms = '. $row2[4]. '</p>
</div>
</div>
</div>
</a>
</div>
</div>
<br />';
}
}
}
mysqli_close($con);
?>