Hallo,
ich habe eine DB, die Ausgabe der Webseite und die einzelnen Felder der DB alles auf UTF8 - Einträge in die DB mit Umlauten & die Ausgabe der Umlaute auf der Webseite funktioniert super als in der DB steht zB:
Schönbrunn = in der DB: Schönbrunn = Ausgabe wieder Schönbrunn
Dänemark = in der DB: Dänemark = Ausgabe wieder Dänemark
Aber wie baue ich das in meiner Suchcode ein, so dass jetzt auch die Einträge mit Schönbrunn etc. berücksichtigt werden ?
Hier hab ich mal meinen completten Code, welchen ich Einsetze:
PHP-Code:
<?php
session_start();
if (array_key_exists('formularSent', $_POST)) {
$_SESSION = $_POST;
}
// Nur bei: Formular wird abgeschickt (Suche)
if ($_SESSION['formularSent'] == 1)
{
extract($_SESSION, EXTR_OVERWRITE);
if($aURL[2]=='Bundesland'){ $Bundesland=$aURL[3];}
if($aURL[2]=='bundesland'){ $Bundesland=$aURL[3];}
if($aURL[2]=='Land'){ $Land=$aURL[3];}
if($aURL[2]=='land'){ $Land=$aURL[3];}
$Land = str_replace("ä", "ae", $Land );
$Land = str_replace("ü", "ue", $Land );
$Land = str_replace("ö", "oe", $Land );
$Land = str_replace("ß", "ss", $Land );
$Kontinent = str_replace("ä", "ae", $Kontinent );
$Kontinent = str_replace("ü", "ue", $Kontinent );
$Kontinent = str_replace("ö", "oe", $Kontinent );
$Kontinent = str_replace("ß", "ss", $Kontinent );
$Region = str_replace("ä", "ae", $Region );
$Region = str_replace("ü", "ue", $Region );
$Region = str_replace("ö", "oe", $Region );
$Region = str_replace("ß", "ss", $Region );
$Bundesland = str_replace("ä", "ae", $Bundesland );
$Bundesland = str_replace("ü", "ue", $Bundesland );
$Bundesland = str_replace("ö", "oe", $Bundesland );
$Bundesland = str_replace("ß", "ss", $Bundesland );
$Reiseziel = str_replace("ä", "ae", $Reiseziel );
$Reiseziel = str_replace("ü", "ue", $Reiseziel );
$Reiseziel = str_replace("ö", "oe", $Reiseziel );
$Reiseziel = str_replace("ß", "ss", $Reiseziel );
$Ort = str_replace("ä", "ae", $Ort );
$Ort = str_replace("ü", "ue", $Ort );
$Ort = str_replace("ö", "oe", $Ort );
$Ort = str_replace("ß", "ss", $Ort );
$Unterkunft = str_replace("ä", "ae", $Unterkunft );
$Unterkunft = str_replace("ü", "ue", $Unterkunft );
$Unterkunft = str_replace("ö", "oe", $Unterkunft );
$Unterkunft = str_replace("ß", "ss", $Unterkunft );
$query ="SELECT * FROM `ferienwohnung` WHERE (Status=1 ";
if (!empty($Kontinent)) {$query.= "AND Kontinent LIKE '%".$Kontinent."%' ";}
if (!empty($Land)) {$query.= "AND Land LIKE '%".$Land."%' ";}
if (!empty($Bundesland)) {$query.= "AND Bundesland LIKE '%".$Bundesland."%' ";}
if (!empty($Region)) {$query.= "AND Region LIKE '%".$Region."%' ";}
if (!empty($Reiseziel)) {$query.= "AND Reiseziel LIKE '%".$Reiseziel."%' ";}
if (!empty($Ort)) {$query.= "AND Ort LIKE '%".$Ort."%' ";}
if (!empty($Unterkunft)) {$query.= "AND Unterkunft LIKE '%".$Unterkunft."%' ";}
if (!empty($Personen)) {$query.= "AND Personen >= '".$Personen."' ";}
if (!empty($Objekt_ID)) {$query.= "AND Objekt_ID LIKE '%".$Objekt_ID."%' ";}
if (!empty($Kinderfreundlich)) {$query.= "AND Kinderfreundlich = '1' ";}
if (!empty($Behindertengerecht)) {$query.= "AND Behindertengerecht = '1' ";}
if (!empty($Haustiere)) {$query.= "AND Haustiere = '1' ";}
if (!empty($Nichtraucher)) {$query.= "AND Nichtraucher = '1' ";}
if (!empty($Allergikergerecht)) {$query.= "AND Allergikergerecht = '1' ";}
if (!empty($Mountainbiking)) {$query.= "AND Mountainbiking = '1' ";}
if (!empty($Wandern)) {$query.= "AND Wandern = '1' ";}
if (!empty($Bergsteigen)) {$query.= "AND Bergsteigen = '1' ";}
if (!empty($Klettern)) {$query.= "AND Klettern = '1' ";}
if (!empty($Drachenfliegen)) {$query.= "AND Drachenfliegen = '1' ";}
if (!empty($Paragliding)) {$query.= "AND Paragliding = '1' ";}
if (!empty($Wintersport)) {$query.= "AND Wintersport = '1' ";}
if (!empty($Skigebiet)) {$query.= "AND Skigebiet = '1' ";}
if (!empty($Eishalle)) {$query.= "AND Eishalle = '1' ";}
if (!empty($Wassersport)) {$query.= "AND Wassersport = '1' ";}
if (!empty($Rafting)) {$query.= "AND Rafting = '1' ";}
if (!empty($Kanu)) {$query.= "AND Kanu = '1' ";}
if (!empty($Schwimmbad)) {$query.= "AND Schwimmbad = '1' ";}
if (!empty($Hallenbad)) {$query.= "AND Hallenbad = '1' ";}
if (!empty($Thermalbad)) {$query.= "AND Thermalbad = '1' ";}
if (!empty($Wasserski)) {$query.= "AND Wasserski = '1' ";}
if (!empty($Tauchen)) {$query.= "AND Tauchen = '1' ";}
if (!empty($Surfen)) {$query.= "AND Surfen = '1' ";}
if (!empty($Golf)) {$query.= "AND Golf='1' ";}
if (!empty($Tennis)) {$query.= "AND Tennis = '1' ";}
if (!empty($Reiten)) {$query.= "AND Reiten = '1' ";}
if (!empty($Freizeitpark)) {$query.= "AND Freizeitpark = '1' ";}
if (!empty($Disco)) {$query.= "AND Disco = '1' ";}
if (!empty($Kartbahn)) {$query.= "AND Kartbahn = '1' ";}
if (!empty($Zoo)) {$query.= "AND Zoo = '1' ";}
$query.= ")";
$select = mysql_query($query);
$reihen = mysql_num_rows($select);
$total = mysql_num_rows($select);
$entries_per_page = 10;
$amount_pages = ceil($total / $entries_per_page);
for ($i=0; $i<count($suchkriterien); $i++) {
if (strpos($suchkriterien[$i], "page") === 0) {$page = intval(substr($suchkriterien[$i], 4));}
}
if (!empty($page)) {
// Ist der GET-Parameter zwischen 1 und MAX-Page ?
// Wenn nein, dann setzen wir ihn dazwischen
$page = ($page < 1) ? 1 : $page;
$page = ($page > $amount_pages) ? $amount_pages : $page;
}
// Wenn keine Seite definiert wurde, ist $page = 1
else
{
$page = 1;
}
$start = ($page - 1) * $entries_per_page;
$limit = ' LIMIT '.$start.', '.$entries_per_page;
$paginationSQL = mysql_query($query . $limit);
$paginationLink = $config['domain'];
for ($i=0; $i<count($suchkriterien); $i++) {
// Keine Seitenangabe
if (strpos($suchkriterien[$i], "page") !== 0) {$paginationLink .= "/".$suchkriterien[$i];}
}
if ($total > 0)
{
$arrSuchtreffer = array();
$i = 0;
while ($ausgabe = mysql_fetch_assoc($paginationSQL))
{
$arrSuchtreffer[$i] = $ausgabe;
$i++;
}
$smarty->assign('arrSuchtreffer', $arrSuchtreffer);
}
// F?r die Templatedatei - welcher Teil soll dargestellt werden: Formular oder Suchergebnis
$smarty->assign('aURL', $aURL);
// Anzahl der Suchtreffer
$smarty->assign('total', $total);
}
// Wenn page in der linken H?lfter der ersten 10 Seiten liegt, werden die ersten 10 Seiten angezeigt
$arrLinks = array();
if ($page < 5)
{
$for_limit = ($page < 9) ? $amount_pages-1 : 9;
$i = 0;
for ($i; $i <= $for_limit; $i++)
{
$left_number = ($i * 10) + 1;
// Seite = se
$arrLinks[$i] = (($i+1) != $page) ? '<a href="'.str_replace(' ','+',$paginationLink).'/page'.($i+1).'">'.$left_number.'-'.($left_number+9).'</a>':$left_number.'-'.($left_number+9);
}
}
else if ($page >= 5 && $page < ($amount_pages - 5))
{
$i1 = $page - 3;
$i2 = $page + 1;
$for_limit = $page + 3;
for ($i1; $i1 < $page; $i1++)
{
$left_number = ($i1 * 10) + 1;
// Seite = se
$arrLinks[] = (($i1+1) != $page) ? '<a href="'.$paginationLink.'/page'.($i1+1).'">'.$left_number.'-'.($left_number+9).'</a>':$left_number.'-'.($left_number+9);
}
for ($i2; $i2 < $for_limit; $i2++)
{
$left_number = ($i2 * 10) + 1;
// Seite = se
$arrLinks[] = (($i2+1) != $page) ? '<a href="'.$paginationLink.'/page'.($i2+1).'">'.$left_number.'-'.($left_number+9).'</a>':$left_number.'-'.($left_number+9);
}
}
else if ($page >= ($amount_pages - 5))
{
$i = $page-4;
for ($i; $i <= $amount_pages; $i++)
{
$left_number = ($i * 10) + 1;
// Seite = se
$arrLinks[$i] = (($i+1) != $page) ? '<a href="'.$paginationLink.'/page'.($i+1).'">'.$left_number.'-'.($left_number+9).'</a>':$left_number.'-'.($left_number+9);
}
}
# echo("<!--andi".print_r($urlParams,true)."-->");
$smarty->assign('bn_first_data', $urlParams);
$smarty->assign('arrLinks', $arrLinks);
// TPL-Datei auslesen
$left .= $smarty->fetch('suche/suche.tpl');
?>
Danke & Gruß Dirk