Jump to content

need help with this php code willing to pay .


Recommended Posts

can some one explain to me how this code works or convert this code to dream weaver style.

i want to be able to bind date and and apply rpeat reagion behaviour .

this is the code:

<?php
//@ $mySQLConnection = mysql_connect("localhost", "ultratune", "u1tr@t00n3");
@ $mySQLConnection = mysql_connect('localhost', 'root', '');
mysql_select_db("ultratune");

$postcode = 3174; /* zipcode */
$suburb = @$_GET["suburb"];
$storename = @$_GET["storename"];
$SearchDistance = 10; /*  km */
$EarthRadius = 6365;

$pc = array();

// if we are searching by city then get the suburb
if (strlen($storename) != 0) {
//echo "by storename";
$qry = "select postcode from stores where storename = '$storename' limit 1";
$recordSetStore = mysql_query($qry);
if (mysql_num_rows($recordSetStore) > 0) {
$result = mysql_fetch_array($recordSetStore);

$pc[$result["state"]] = $result["postcode"];
}
}
else if (strlen($postcode) != 0 && strlen($suburb) != 0) {
//echo "by city";
$qry = "select Min(postcode) as postcode, state from postcodes where city = '$suburb' group by state";
$recordSetPC = mysql_query($qry);
if (mysql_num_rows($recordSetPC) > 0) {
if (mysql_num_rows($recordSetPC) > 1) {

for ($i = 0; $i < $toCount; $i++) {
$currentRow = mysql_fetch_array($recordSetPC);
$pc[$currentRow["state"]] = $currentRow["postcode"];
}
}
else {

$result = mysql_fetch_array($recordSetPC);
$pc[$result["state"]] = $result["postcode"];
}
}
}
else if (strlen($postcode) == 0 && strlen($suburb) != 0) {
//echo "by city 2";
$qry = "select Min(postcode) as postcode, state from postcodes where city = '$suburb' group by state";
$recordSetPC = mysql_query($qry);
if (mysql_num_rows($recordSetPC) > 0) {
if (mysql_num_rows($recordSetPC) > 1) {

for ($i = 0; $i < mysql_num_rows($recordSetPC); $i++) {
$currentRow = mysql_fetch_array($recordSetPC);
$pc[$currentRow["state"]] = $currentRow["postcode"];
}
}
else {

$result = mysql_fetch_array($recordSetPC);
$pc[$result["state"]] = $result["postcode"];
}
}
}
else if (strlen($postcode) != 0) {
//echo "by postcode";
$qry = "select postcode,state from postcodes where postcode = '$postcode' limit 1";
$recordSetStore = mysql_query($qry);
if (mysql_num_rows($recordSetStore) > 0) {
$result = mysql_fetch_array($recordSetStore);

$pc[$result["state"]] = $result["postcode"];
}
}
else {
echo "nothing";
echo "<br>storename = " .strlen($storename);
echo "<br>suburb = " .strlen($suburb);
echo "<br>postcode = " .strlen($postcode);

}


function getLongAndLat($pcode) {
$qry = "select longitude, latitude from postcodes where postcode = $pcode limit 1";
$recordSetLonLat = mysql_query($qry);
$result = mysql_fetch_array($recordSetLonLat);
return "<longitude>" .$result["longitude"] ."</longitude><latitude>" .abs($result["latitude"]) ."</latitude>";
}

if (count($pc) > 0) {

$xmlStr = "<stores>";

while ($item = each($pc) ) {
$xmlStr = "$xmlStr<state name=\"" .$item["key"] ."\">";


$itemPostCode = $item["value"];


$CenterLonQry = mysql_query("select longitude from postcodes WHERE PostCode = $itemPostCode LIMIT 1");
$CenterLonRecord = mysql_fetch_array($CenterLonQry);
$CenterLon = $CenterLonRecord[0];

$CenterLatQry = mysql_query("select latitude from postcodes WHERE PostCode = $itemPostCode LIMIT 1");
$CenterLatRecord = mysql_fetch_array($CenterLatQry);
$CenterLat = $CenterLatRecord[0];

$postCodes = "
SELECT DISTINCT postcodes.PostCode,
MIN($EarthRadius * acos((XAxis * (cos(RADIANS($CenterLat)) * cos(RADIANS($CenterLon)))) + (YAxis * (cos(RADIANS($CenterLat)) * sin(RADIANS($CenterLon)))) +(ZAxis * sin(RADIANS($CenterLat))))) AS ProxDistance,
stores.*
FROM postcodes, stores
WHERE (
$EarthRadius * acos( XAxis * (cos(RADIANS($CenterLat)) * cos(RADIANS($CenterLon))) + YAxis * (cos(RADIANS($CenterLat)) * sin(RADIANS($CenterLon))) + ZAxis * sin(RADIANS($CenterLat))) <= $SearchDistance
OR postcodes.PostCode = $itemPostCode
)
AND stores.PostCode = postcodes.PostCode
GROUP BY postcodes.PostCode
ORDER BY ProxDistance ASC
";



$recordSet = mysql_query($postCodes);
$records = mysql_num_rows($recordSet);


$toCount = min(50, $records-1);


for ($i = 0; $i <= $toCount; $i++) {
$currentRow = mysql_fetch_array($recordSet);
$thisLonLat = getLongAndLat($currentRow["Postcode"]);
$xmlStr = "$xmlStr<location>
<locationName>" .$currentRow["StoreName"] ."</locationName>
<franchisee>" .$currentRow["Franchisee"] ."</franchisee>
<manager>" .$currentRow["Manager"] ."</manager>
<address1>" .$currentRow["Address1"] ."</address1>
<address2>" .$currentRow["Address2"] ."</address2>
<suburb>" .$currentRow["Suburb"] ."</suburb>
<state>" .$currentRow["State"] ."</state>
<postcode>" .$currentRow["Postcode"] ."</postcode>
<phone>" .$currentRow["PhoneNumber"] ."</phone>
<fax>" .$currentRow["FaxNumber"] ."</fax>
<email>" .$currentRow["EmailAddress"] ."</email>
<image>" .$currentRow["Image"] ."</image>
" .$thisLonLat ."
</location>
";
}
$xmlStr = "$xmlStr</state>";
// loop again
}
$xmlStr = "$xmlStr</stores>";

}
else {
$xmlStr = "<stores></stores>";
}
echo "$xmlStr"; 
echo $currentRow["StoreName"];
?>
Link to comment
Share on other sites

  • 2 weeks later...
This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.