Messy code .. Can somone help cut it down to minimal code?
Posted: Fri Nov 03, 2006 2:49 pm
Hi,
Im sure the following code can be writen better maybe cutting the amount of code in half?
Thanks
Im sure the following code can be writen better maybe cutting the amount of code in half?
Code: Select all
<?php
$manufacturer = addslashes($_REQUEST['manufacturer']);
$choice = addslashes($_REQUEST['choice']);
$search = addslashes($_REQUEST['search']);
$under = addslashes($_REQUEST['under']);
$over = addslashes($_REQUEST['over']);
?>
<table style="margin: 2px; border: 1px solid #000000;" width="99%" align="center" cellpadding="0" cellspacing="0">
<tr>
<th colspan="2">Search for vehicle</th>
</tr>
<tr><br />
<td align="center"><br />
<form name="manufacturer" action="../index.php?pages=sh_cars" method="post">Show
<select name="manufacturer" class="input-box"><?php $sql = mysql_query("SELECT * FROM manufacturer ORDER BY make ASC"); while ($row = mysql_fetch_array($sql)) { ?>
<option <?php echo $manufacturer==$row['make'] ? 'selected' : ''?>><?php echo $row['make'] ?></option><?php } ?>
</select>
<input type="submit" name="Submit" value="Submit" />
</form>
</td>
<td align="center"><br />
<form name="choice" action="../index.php?pages=sh_cars" method="post">Or search
<select name="choice" class="input-box"><?php if ($_SESSION['user_level'] == 3) { ?>
<option <?php echo $choice=='Code' ? 'selected' : ''?> value="Code">Number Plate</option><?php } ?>
<option <?php echo $choice=='Colour' ? 'selected' : ''?>>Colour</option>
<option <?php echo $choice=='Fuel' ? 'selected' : ''?>>Fuel</option>
<option <?php echo $choice=='Model' ? 'selected' : ''?>>Model</option>
<option <?php echo $choice=='Transmission' ? 'selected' : ''?>>Transmission</option>
<option <?php echo $choice=='Year' ? 'selected' : ''?>>Year</option>
</select>for
<input name="search" type="text" size="18" class="input-box" value="<?php echo $search; ?>" />
<input type="submit" name="Submit" value="Submit" />
</form>
</td>
</tr>
</table>
<?php
if ($_SESSION['user_level'] == 3) {
$availability = "('available' , 'sold')";
}else{
$availability = "('available')"; }
if (!isset($_GET['page'])) { $page = 1; }else{ $page = $_GET['page']; }
$max_results = 1;
$numcols = 4;
$numcolsprinted = 0;
$from = (($page * $max_results) - $max_results);
if (isset($_REQUEST['search']) && trim($search) !== "") {
$total_results = mysql_result(mysql_query("SELECT COUNT(*) as Num FROM cars WHERE availability IN $availability AND (".$choice." LIKE('".$search."'))"),0);
$total_pages = ceil($total_results / $max_results);
$sql = "SELECT c.id, c.year, c.manufacturer, c.model, c.availability, p.photo_filename, m.make
FROM cars as c
JOIN manufacturer as m ON m.id = c.manufacturer
LEFT JOIN car_images as p ON p.car_id = c.id
WHERE c.availability IN $availability AND (".$choice." LIKE('".$search."'))
GROUP BY c.id
LIMIT $from, $max_results";
}elseif (isset($_REQUEST['manufacturer']) && trim($manufacturer) !== "") {
$total_results = mysql_result(mysql_query("SELECT COUNT(*) as Num FROM cars as c JOIN manufacturer as m ON m.id = c.manufacturer WHERE availability IN $availability AND make ='".$manufacturer."'"),0);
$total_pages = ceil($total_results / $max_results);
$sql = "SELECT c.id, c.year, c.manufacturer, c.model, c.availability, p.photo_filename, m.make
FROM cars as c
JOIN manufacturer as m ON m.id = c.manufacturer
LEFT JOIN car_images as p ON p.car_id = c.id
WHERE c.availability IN $availability AND m.make='".$manufacturer."'
GROUP BY c.id
LIMIT $from, $max_results";
}elseif (isset($_REQUEST['under'])) {
$total_results = mysql_result(mysql_query("SELECT COUNT(*) as Num FROM cars WHERE availability IN $availability AND price <= '".$under."'"),0);
$total_pages = ceil($total_results / $max_results);
$sql = "SELECT c.id, c.year, c.manufacturer, c.model, c.availability, p.photo_filename, m.make
FROM cars as c
JOIN manufacturer as m ON m.id = c.manufacturer
LEFT JOIN car_images as p ON p.car_id = c.id
WHERE availability IN $availability AND price <= '".$under."'
GROUP BY c.id
LIMIT $from, $max_results";
}elseif (isset($_REQUEST['over'])) {
$total_results = mysql_result(mysql_query("SELECT COUNT(*) as Num FROM cars WHERE availability IN $availability AND price > '".$over."'"),0);
$total_pages = ceil($total_results / $max_results);
$sql = "SELECT c.id, c.year, c.manufacturer, c.model, c.availability, p.photo_filename, m.make
FROM cars as c
JOIN manufacturer as m ON m.id = c.manufacturer
LEFT JOIN car_images as p ON p.car_id = c.id
WHERE availability IN $availability AND price > '".$over."'
GROUP BY c.id
LIMIT $from, $max_results";
}else{
$total_results = mysql_result(mysql_query("SELECT COUNT(*) as Num FROM cars WHERE availability IN $availability"),0);
$total_pages = ceil($total_results / $max_results);
$sql = "SELECT c.id, c.year, c.manufacturer, c.model, c.availability, p.photo_filename, m.make
FROM cars as c
JOIN manufacturer as m ON m.id = c.manufacturer
LEFT JOIN car_images as p ON p.car_id = c.id
WHERE c.availability IN $availability
GROUP BY c.id ORDER BY c.id DESC
LIMIT $from, $max_results";
}
?>
<table style="margin: 2px; border: 1px solid #000000;" width="99%" align="center" cellpadding="0" cellspacing="0">
<tr>
<th>Listed Cars </th>
</tr>
<tr>
<td align="center">
<?php
if ($_SESSION['user_level'] == 3) {
echo '<br /><center><a href="../index.php?pages=add_cars">ADD NEW</a></center>';
}
echo '<br /><center><b>'.$total_results.'</b> cars matching your search | ';
echo 'Displaying Page <b>'.$page.'</b> of <b>'.$total_pages.'</b><br /><br />';
echo '<a href="../index.php?pages=sh_cars">SHOW ALL CARS</a><br /><br />';
$result = mysql_query($sql);
$num_rows = mysql_num_rows($result);
?>
<table border="1" bordercolor="FFFFFF" cellspacing="5" cellpadding="0" align="center">
<?php
if ($num_rows > 0 ) {
while($row = mysql_fetch_array($result)){
if($row['photo_filename'] == 0) {
$picture = 'No Images<br />';
} else {
$picture = '<a href="/index.php?pages=sh_car&id='.$row['id'].'"><img src="../'.$images_dir.'/tb_'.$row['photo_filename'].'" border="1"></a><br />';
}
if ($numcolsprinted == $numcols) {
?>
<tr>
<?php
$numcolsprinted = 0;
}
?>
<td style="border:1 dashed #999999;" width="130" height="130" align="center" valign="bottom"><br />
<?php echo $picture; ?><br />
<b><?php echo ValidateOutput($row['year']); ?></b><br />
<?php echo ValidateOutput($row['make']); ?> <?php echo ValidateOutput($row['model']); ?></b><br />
<br />
<a href="../index.php?pages=sh_car&id=<?php echo $row['id']; ?>">Read more...</a><br /><br />
<?php
if ($_SESSION['user_level'] == 3) {
echo '<a href="/index.php?pages=add_cars&id='.$row['id'].'&edit=edit">edit</a> - <a href="/index.php?pages=del_cars&del_all&id='.$row['id'].'">delete</a><br /><br />';
}
?>
</td>
<?php
$numcolsprinted++;
}
$colstobalance = $numcols - $numcolsprinted;
for ($i=1; $i<=$colstobalance; $i++) {
}
?>
</tr>
</table>
<?php
}else{
echo '<center>No results found</center>';
}
echo '<br /><center>';
if ($page > 1) {
$prev = ($page - 1);
echo "<a href=\"../index.php?pages=sh_cars&page=$prev&manufacturer=$manufacturer&choice=$choice&search=$search\">Previous</a> | ";
}
for ($i = 1; $i <= $total_pages; $i++) {
if (($page) == $i) {
echo "[$i] ";
}else{
echo "<a href=\"../index.php?pages=sh_cars&page=$i&manufacturer=$manufacturer&choice=$choice&search=$search\">$i</a> ";
}
}
if ($page < $total_pages) {
$next = ($page + 1);
echo " | <a href=\"../index.php?pages=sh_cars&page=$next&manufacturer=$manufacturer&choice=$choice&search=$search\">Next</a>";
}
echo "</center><br />";
?>
</td>
</tr>
</table>Thanks