Caiapfas
asked on
help adding a simple feature to a php script
I need to make it where I can name a villa, in a certian place and it will put it on top of the list. and then the sql query takes over for the rest.
So a certian place on top, I put the villa name and it goes on top of the list.
please help thanks
-=-=-=-=-=-=-=-=-=-=-=-=-= -=-=-=-=-= -=-=-=-=-= -=-
(script)
<?
//$description = str_replace("<br>", "\n", $description);
mysql_connect (localhost, UN, PW);
mysql_select_db (newsletter2);
$query="SELECT * FROM website_villas WHERE bedrooms_min < 4 AND bedrooms_min <> 0 OR bedrooms_max < 4 ORDER BY bedrooms_max DESC";
$result=mysql_query($query );
$num=mysql_numrows($result );
mysql_close();
$i=0;
while ($i < $num) {
$vid=mysql_result($result, $i,"vid");
$name=mysql_result($result ,$i,"name" );
$visible=mysql_result($res ult,$i,"vi sible");
if ($visible == "true") {
$feature_1=mysql_result($r esult,$i," feature_1" );
$type=mysql_result($result ,$i,"type" );
$description=mysql_result( $result,$i ,"descript ion");
$amenities=mysql_result($r esult,$i," amenities" );
$location=mysql_result($re sult,$i,"l ocation");
$bedrooms_min=mysql_result ($result,$ i,"bedroom s_min");
$bedrooms_max=mysql_result ($result,$ i,"bedroom s_max");
$bathrooms_min=mysql_resul t($result, $i,"bathro oms_min");
$bathrooms_max=mysql_resul t($result, $i,"bathro oms_max");
$accommodations=mysql_resu lt($result ,$i,"accom modations" );
$size_min=mysql_result($re sult,$i,"s ize_min");
$size_max=mysql_result($re sult,$i,"s ize_max");
$staff=mysql_result($resul t,$i,"staf f");
$price_min=mysql_result($r esult,$i," price_min" );
$price_max=mysql_result($r esult,$i," price_max" );
$image_folder=mysql_result ($result,$ i,"image_f older");
$main_image=mysql_result($ result,$i, "main_imag e");
$file_name=mysql_result($r esult,$i," file_name" );
$feat = null;
if ($feature_1 <> "none") {
$feat = " - <font color=#FF0000>" . $feature_1 . "</font>";
}
if ($size_min)
{
$size = $size_min . " - " . $size_max . " sq. ft.";
} else if ($size_max)
{
$size = $size_max . " sq. ft.";
} else {
$size = " ";
}
if ($price_min)
{
$price = "$" . $price_min . " - $" . $price_max . " per night";
} else if ($price_max)
{
$price = "$" . $price_max . " per night";
} else {
$price = " ";
}
if ($bedrooms_min)
{
$bedrooms = $bedrooms_min . " - " . $bedrooms_max;
} else if ($bedrooms_max)
{
$bedrooms = $bedrooms_max;
} else {
$bedrooms = " ";
}
$bathrooms_min = (float)$bathrooms_min;
$bathrooms_max = (float)$bathrooms_max;
if ($bathrooms_min > 0)
{
$bathrooms = $bathrooms_min . " - " . $bathrooms_max;
} else if ($bathrooms_max > 0)
{
$bathrooms = $bathrooms_max;
} else {
$bathrooms = " ";
}
if ($vid > 67) {
$file_name = "villas/" . $file_name;
}
$list_var = $list_var . "<tr><td align=center valign=middle><a href=../$file_name><img src=../images/$image_folde r/thumbnai ls/$main_i mage border=0></a></td><td nowrap><a href=../$file_name>$name</ font></a>$ feat</td>< td>$locati on</td><td align=center>$bedrooms</td ><td align=center>$bathrooms</t d><td>$siz e</td><td> $price</td ></tr>";
$feat = null;
}
++$i;
}
$html_var_1 = <<<EOD
<h3 align="center">1 to 3 Bedroom Villas and Condos</h3>
<table border="1" cellspacing="0" cellpadding="2" align="center" bordercolor="#000000" style="border-collapse: collapse;">
<tr bgcolor="teal"><td></td><t d><font color="#FFFFFF">Villa Name</font></td><td><font color="#FFFFFF">Location</ font></td> <td><font color="#FFFFFF">Bedrooms</ font></td> <td><font color="#FFFFFF">Bathrooms< /font></td ><td><font color="#FFFFFF">Size</font ></td><td> <font color="#FFFFFF">Price</fon t></td></t r>
$list_var
</table>
EOD;
$html_var_final = str_replace ("$", "$", $html_var_1);
require("classes/class_tpl sys.php");
$tplObj = new tplSys("./");
$tplObj->getFile( array(
'villas' => 'templates/villas.tpl' )
);
$tplObj->varRef( "villas", array(
"VILLAS" => $html_var_final )
);
$tplObj->varRef( "villas", array(
"TITLE" => 'Cabo San Lucas Villas - 1 - 3 Bedrooms' )
);
$tplObj->parseDynamic("vil las");
?>
So a certian place on top, I put the villa name and it goes on top of the list.
please help thanks
-=-=-=-=-=-=-=-=-=-=-=-=-=
(script)
<?
//$description = str_replace("<br>", "\n", $description);
mysql_connect (localhost, UN, PW);
mysql_select_db (newsletter2);
$query="SELECT * FROM website_villas WHERE bedrooms_min < 4 AND bedrooms_min <> 0 OR bedrooms_max < 4 ORDER BY bedrooms_max DESC";
$result=mysql_query($query
$num=mysql_numrows($result
mysql_close();
$i=0;
while ($i < $num) {
$vid=mysql_result($result,
$name=mysql_result($result
$visible=mysql_result($res
if ($visible == "true") {
$feature_1=mysql_result($r
$type=mysql_result($result
$description=mysql_result(
$amenities=mysql_result($r
$location=mysql_result($re
$bedrooms_min=mysql_result
$bedrooms_max=mysql_result
$bathrooms_min=mysql_resul
$bathrooms_max=mysql_resul
$accommodations=mysql_resu
$size_min=mysql_result($re
$size_max=mysql_result($re
$staff=mysql_result($resul
$price_min=mysql_result($r
$price_max=mysql_result($r
$image_folder=mysql_result
$main_image=mysql_result($
$file_name=mysql_result($r
$feat = null;
if ($feature_1 <> "none") {
$feat = " - <font color=#FF0000>" . $feature_1 . "</font>";
}
if ($size_min)
{
$size = $size_min . " - " . $size_max . " sq. ft.";
} else if ($size_max)
{
$size = $size_max . " sq. ft.";
} else {
$size = " ";
}
if ($price_min)
{
$price = "$" . $price_min . " - $" . $price_max . " per night";
} else if ($price_max)
{
$price = "$" . $price_max . " per night";
} else {
$price = " ";
}
if ($bedrooms_min)
{
$bedrooms = $bedrooms_min . " - " . $bedrooms_max;
} else if ($bedrooms_max)
{
$bedrooms = $bedrooms_max;
} else {
$bedrooms = " ";
}
$bathrooms_min = (float)$bathrooms_min;
$bathrooms_max = (float)$bathrooms_max;
if ($bathrooms_min > 0)
{
$bathrooms = $bathrooms_min . " - " . $bathrooms_max;
} else if ($bathrooms_max > 0)
{
$bathrooms = $bathrooms_max;
} else {
$bathrooms = " ";
}
if ($vid > 67) {
$file_name = "villas/" . $file_name;
}
$list_var = $list_var . "<tr><td align=center valign=middle><a href=../$file_name><img src=../images/$image_folde
$feat = null;
}
++$i;
}
$html_var_1 = <<<EOD
<h3 align="center">1 to 3 Bedroom Villas and Condos</h3>
<table border="1" cellspacing="0" cellpadding="2" align="center" bordercolor="#000000" style="border-collapse: collapse;">
<tr bgcolor="teal"><td></td><t
$list_var
</table>
EOD;
$html_var_final = str_replace ("$", "$", $html_var_1);
require("classes/class_tpl
$tplObj = new tplSys("./");
$tplObj->getFile( array(
'villas' => 'templates/villas.tpl' )
);
$tplObj->varRef( "villas", array(
"VILLAS" => $html_var_final )
);
$tplObj->varRef( "villas", array(
"TITLE" => 'Cabo San Lucas Villas - 1 - 3 Bedrooms' )
);
$tplObj->parseDynamic("vil
?>
SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
how do i add sticky to the table , it wont add for me and went it does , i dont see it listed?
SQL-query:
ALTER TABLE website_villas ADD sticky ENUM not null
but dont see it?
SQL-query:
ALTER TABLE website_villas ADD sticky ENUM not null
but dont see it?
ASKER
ok got it to add, but i cant get it changed to ENUM?
ASKER
ok got it to work!
but now i have 2 more files i need "sticky" to work with
view_4_br.php
$query="SELECT * FROM website_villas WHERE bedrooms_min = 4 OR bedrooms_max = 4 ORDER BY price_max DESC";
view_over_4_br.php
$query="SELECT * FROM website_villas WHERE bedrooms_max > 4 ORDER BY bedrooms_max DESC";
but now i have 2 more files i need "sticky" to work with
view_4_br.php
$query="SELECT * FROM website_villas WHERE bedrooms_min = 4 OR bedrooms_max = 4 ORDER BY price_max DESC";
view_over_4_br.php
$query="SELECT * FROM website_villas WHERE bedrooms_max > 4 ORDER BY bedrooms_max DESC";
SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
I would add a new ROW in 'website_villas' named 'sticky'. Make it an 'enum' with the value '0','1'.
Then, for those to be listed at the top, give them the value of 1 and the normal listings as 0.
Then, add a second query, this:
$query="SELECT * FROM website_villas WHERE sticky != 0 AND bedrooms_min < 4 AND bedrooms_min <> 0 OR bedrooms_max < 4 ORDER BY bedrooms_max DESC";
That is the easiest solution I can think of. This second query's results should be shown first, of course.