Hulp nodig met Enum....

Status
Niet open voor verdere reacties.

kritinet

Gebruiker
Lid geworden
25 nov 2007
Berichten
118
Hoi
ik heb op mijn website http://www.estero-travel.com/nl/Bestemmingen/index.php een lijst van accommodaties die op een database teruggrijpt.

Ik heb in de database een nieuw veld toegevoegt Enum 'Zomer', 'Wintersport', 'Winterzon'. Nu kan ik wel bij iedere accommodatie een van de drie mogelijkheden aangeven. Dat werkt ook. Maar ik wil graag bij sommige accommodaties 'Zomer' en 'Winterzon' aangeven. Hoe moet ik dat doen `??

Behalve dat heb ik ook nog het probleem dat nu op de pagina http://www.estero-travel.com/nl/Bestemmingen/index.php een lijst is met alle accommodaties die in de Database staan, gegroepeerd bij land, maar daarvan is de bedoeling dat als ik bv "Zomer' aanklik de lijst (van de Landen) ook alleen die van de 'Zomer' komen te staan.

Wie kan me er mee helpen ??
de PHP code is als volgt
PHP:
<?php 
$query_aanbiedingen = "SELECT * FROM aanbiedingen ORDER BY RAND() LIMIT 5"; 
$result_aanbiedingen = mysql_query($query_aanbiedingen) or die(mysql_error());

$result = mysql_query ( "SELECT * FROM accos WHERE name LIKE '%" . $_POST[ 'search' ] . "%' OR type LIKE '%" . $_POST[ 'search' ] . "%' OR description LIKE '%" . $_POST[ 'search' ]. "%' OR village LIKE '%" . $_POST[ 'search' ]. "%' OR streek LIKE '%" . $_POST[ 'search' ] . "%' OR country LIKE '%" . $_POST[ 'search' ] . "%'" ) ;  
 
$query = "SELECT country, COUNT(name) AS total FROM accos GROUP BY country";
$result = mysql_query ( $query ) or die ( mysql_error () );


$maxRows_accos = 10;
$pageNum_accos = 0;
if (isset($_GET['pageNum_accos'])) {
  $pageNum_accos = $_GET['pageNum_accos'];
}
$startRow_accos = $pageNum_accos * $maxRows_accos;
 
mysql_select_db($database_db, $db);
$sort_by = "";
    if(isset($_GET['sort'])){
        $sort = $_GET['sort'];
        if($sort == "price_from" or $sort == "name" or $sort == "village" or $sort == "regio" or $sort == "country"){
            $sort_by = " ORDER BY `".$sort."`";
        }
    }
	$filter = "";
 
if (isset($_GET["filter"]) && $_GET["filter"] == "Villa") {
    $filter = 'WHERE type = "Villa"';
}
if (isset($_GET["filter"]) && $_GET["filter"] == "Cruise") {
    $filter = 'WHERE type = "Cruise"';
}
if (isset($_GET["filter"]) && $_GET["filter"] == "Finca") {
    $filter = 'WHERE type = "Finca"';
}
if (isset($_GET["filter"]) && $_GET["filter"] == "Hotel") {
    $filter = 'WHERE type = "Hotel"';
}
if (isset($_GET["filter"]) && $_GET["filter"] == "Appartementen") {
    $filter ='WHERE type = "Appartementen"';
}
if (isset($_GET["filter"]) && $_GET["filter"] == "Zomer") {
    $filter ='WHERE seizoen = "Zomer"';
}
if (isset($_GET["filter"]) && $_GET["filter"] == "Wintersport") {
    $filter ='WHERE seizoen = "Wintersport"';
}
if (isset($_GET["filter"]) && $_GET["filter"] == "Winterzon") {
    $filter ='WHERE seizoen = "Winterzon"';
}
$query_accos = "SELECT * FROM accos ".$filter .$sort_by  ; 
$query_limit_accos = sprintf("%s LIMIT %d, %d", $query_accos, $startRow_accos, $maxRows_accos);
$accos = mysql_query($query_limit_accos, $db) or die(mysql_error());
$row_accos = mysql_fetch_assoc($accos);
 
 
if (isset($_GET['totalRows_accos'])) {
  $totalRows_accos = $_GET['totalRows_accos'];
} else {
  $all_accos = mysql_query($query_accos);
  $totalRows_accos = mysql_num_rows($all_accos);
}
$totalPages_accos = ceil($totalRows_accos/$maxRows_accos)-1;
 
$queryString_accos = "";
if (!empty($_SERVER['QUERY_STRING'])) {
   $params = explode("&", $_SERVER['QUERY_STRING']);
  $newParams = array();
  foreach ($params as $param) {
    if (stristr($param, "pageNum_accos") == false && 
        stristr($param, "totalRows_accos") == false) {
      array_push($newParams, $param);
    }
  }
  if (count($newParams) != 0) {
    $queryString_accos = "&amp;" . htmlentities(implode("&amp;", $newParams));
  }
}
$queryString_accos = sprintf("&amp;totalRows_accos=%d%s", $totalRows_accos, $queryString_accos);



?>
en
HTML:
&laquo;&laquo;&nbsp;</a> Accommodaties <u><?php echo ($startRow_accos + 1) ?>-<?php echo min($startRow_accos + $maxRows_accos, $totalRows_accos) ?></u> van totaal&nbsp;<u><?php echo $totalRows_accos ?></u> <a href="<?php printf("%s?pageNum_accos=%d%s", $currentPage, min($totalPages_accos, $pageNum_accos + 1), $queryString_accos); ?>">&nbsp;&raquo;&raquo;</a></strong></p>
  <span class="styleextra2">Verfijn uw keuze:</span><br />
   <br />
  <a href="http://www.estero-travel.com/nl/Bestemmingen/index.php?filter=Zomer" class="zomerwinterzon" >Zomer</a>
  <a href="http://www.estero-travel.com/nl/Bestemmingen/index.php?filter=Wintersport" class="zomerwinterzon"  >Wintersport</a>
 <a href="http://www.estero-travel.com/nl/Bestemmingen/index.php?filter=Winterzon" class="zomerwinterzon"  >Winterzon</a><br />
  <br /><?php 
    mysql_data_seek ( $result, 0 );
 
while ( $row = mysql_fetch_array ( $result ) ) {
echo '<a style="text-decoration:underline" href="http://www.estero-travel.com/nl/Bestemmingen/' . $row[ 'country' ] . '">'.'&laquo;' . $row[ 'country' ] . ' (' . $row[ 'total' ]  . ')' .'&raquo;' .'</a> ';
 
}
 
?>
  <br />
  <br />
 

  <select name="select" onchange="sort('index.php?sort=', this)">
    <option value="" selected="selected">Sorteren op...</option>
    <option value="name">Naam (A-Z)</option>
    <option value="village">Plaats (A-Z)</option>
  </select>
  <select name="select" onchange="filter('index.php?filter=', this)">
    <option value="" selected="selected">Filter op...</option>
    <option value="Hotel">Hotel</option>
    <option value="Appartementen">Appartementen</option>
    <option value="Villa">Villa</option>
     <option value="Finca">Finca</option>
       <option value="Cruise">Cruise</option>
</select>
  <br />
  <br />
  <?php do { ?>
    <?php echo $row_accos['image']; ?><h4><?php echo $row_accos['name']; ?>  <?php echo $row_accos['type']; ?><?php echo $row_accos['stars']; ?></h4> 
 in<strong> <?php echo $row_accos['village']; ?> (<?php echo $row_accos['streek']; ?> - <?php echo $row_accos['country']; ?>)</strong><span class="info"><?php echo $row_accos['vervoer']; ?></span><br />
 <?php echo $row_accos['description']; ?>...
    <p class="info"><?php echo $row_accos['url']; ?></p>
  
<a   onmouseover="Tip('&lt;iframe src=http://www.estero-travel.com/legendeNL2.php width=468 height=337&gt;&lt;/iframe&gt;')" onmouseout="UnTip()"><?php echo $row_accos['icon']; ?></a><br />
<br />
  <img src="http://www.estero-travel.com/images/graphics/---.gif" alt="||  Estero || Travel, Events &amp; more !"       width="100%" height="8"  /><br />
      <br />
<?php } while ($row_accos = mysql_fetch_assoc($accos)); ?>
  
  <p align="center"><a href="<?php printf("%s?pageNum_accos=%d%s", $currentPage, max(0, $pageNum_accos - 1), $queryString_accos); ?>"><strong>&lt;&lt;&lt;&lt;</strong></a> Accommodaties <?php echo ($startRow_accos + 1) ?>-<?php echo min($startRow_accos + $maxRows_accos, $totalRows_accos) ?> van totaal <?php echo $totalRows_accos ?> <a href="<?php printf("%s?pageNum_accos=%d%s", $currentPage, min($totalPages_accos, $pageNum_accos + 1), $queryString_accos); ?>"><strong>&gt;&gt;&gt;&gt;</strong></a></p>
</div>
 
Je kan in je tabel 3 colomen aanmaken genaamd Zomer', 'Wintersport', 'Winterzon' je vult deze dan b.v. met een 1 of 0 1 is ja 0 is nee.
Als je dan b.v. wintersport en zomer uit je database wilt halen krijgje: SELECT * FROM locatie WHERE Zomer = '1' AND wintersport = '1'

suc6 :D
 
Je kan in je tabel 3 colomen aanmaken genaamd Zomer', 'Wintersport', 'Winterzon' je vult deze dan b.v. met een 1 of 0 1 is ja 0 is nee.
Als je dan b.v. wintersport en zomer uit je database wilt halen krijgje: SELECT * FROM locatie WHERE Zomer = '1' AND wintersport = '1'

suc6 :D

Dat is niet serieus hoop ik toch?

De oplossing hier is normaliseren.
http://www.yapf.net/index.php/Database_ontwerp_101

Lees dit eens aandacht door en het maken van ontwerpfouten wordt schier onmogelijk.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan