| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer User Registriert seit: Jan 2007
Beiträge: 56
| PHP Suchfunktion Umlauten Problem
Hallo Leute. So ich bin gerade etwas am PHP lernen, geht eigentlich ganz gut nur jetzt bin ich KO. Ich habe eine Suchfunktion gebaut und funktioniert, aber habe dieses Problem. Ich möchte gerne die Umlauten rein setzen, dass bei der suche auch gefunden werden. Z.B. Wenn ich schreibe Köln, soll es finden, ob wohl habe das Wort Köln in meine Seite Aber ich bekomme Meldung, keine Treffer gefunden. Ich habe bereits die SuFu benutzt und auch viel gefunden aber ich kriege es nicht hin. Ich habe mal so geschrieben, aber ist falsch. Wäre froh wenn mir da wer Weiterhelfen kann. Schon mal danke im Voraus Gruß Emy PHP-Code //Beginn von nicht entfernten Sonderzeichen; kann erweitert werden $zeichen_in = array("/ö;/", "/ä;/", "/ü;/", "/Ö;/", "/Ä;/", "/ß;/", "/Ü;/", "/"/", "/&/", "/ /", "/nbsp;/", "/quot;/"); //in $zeichen_out = array("oe", "ae", "ue" , "oe" , "ae", "ss", "ue" ); //out $resulut = preg_replace($zeichen_in, $zeichen_out,$resulut); //Ende |
| | |
| | #4 (permalink) |
| Inventar Registriert seit: Jul 2002
Beiträge: 6.882
| PHP-Code:
__________________ (\__/) (='.'=) (")_(") |
| | |
| | #5 (permalink) |
| Neuer User Registriert seit: Jan 2007
Beiträge: 56
|
Hi Nightflyer, habe so rein gesetz, Leider immer noch keine Treffer. //Beginn von nicht entfernten Sonderzeichen; kann erweitert werden $chars = array( 'ä' => 'ae', 'ö' => 'oe', 'ü' => 'ue', 'Ä' => 'Ae', 'Ü' => 'Ue', 'Ö' => 'Oe', 'ß' => 'ß', '&' => '"', ' ' => ' ' ); $result = str_replace( array_keys( $chars ), $chars, $string ); //Ende ist so Richtig? Gruß Emy |
| | |
| | #7 (permalink) |
| Neuer User Registriert seit: Jan 2007
Beiträge: 56
|
Hier ist die Code found_word.php ------------------------------------ <?php $pattern =''; $array_all=''; define ("tube", true); //set_time_limit(30); //optional; zum verlaengern der Script Laufzeit $pattern = strip_tags($_GET['wordpas']); $pattern = preg_replace('/[\/\(\)\{\[\]\}\#\*\^\<\>\=\?\*\.\,\;\!\"\'\|\\\]/U', '',$pattern); $pattern = htmlentities(trim($pattern)); include('confic_.php'); //Anzahl der zu erkennenden Zeichen; optional 30 ,2 if ( (strlen($pattern)<'30') && (strlen($pattern)>'2') ) { if (!empty($pattern)) { for($i=0;$i<=count($array_all);$i++) { $site = ''; $site = @file_get_contents($array_all[$i]); preg_match('/<head>(.*)<\/head>/is',$site, $alL_meta); if (stristr($alL_meta[1], "utf-8")) { $alL_meta[1] = utf8_decode($alL_meta[1]); $site = utf8_decode($site); } else { $site =html_entity_decode($site); } $site = preg_replace('/<script[^>]*>(.*?)<\/script[^>]*>/si', ' ', $site); $site = preg_replace('/<!\-\-(.*?)\-\->/', '', $site); $site = htmlentities(strip_tags($site)); $str_true = preg_match_all("/\b$pattern\b.+/is", $site, $hit); if (($str_true==true) or (!empty($hit[0][0])) ) { $string = ''; $string_ = ''; $resulut = ''; $count_number=''; //laenge der Verweise; optional 200 $string = substr($hit[0][0], '0', '200'); $string_ = explode(" ", $string); if ($string_[1] == true) { $count_number = count($string_); $body_text =''; for($h = 0; $h < $count_number-1; $h++) { $body_text[$h] = $string_[$h]; } $resulut = implode(" ", $body_text); //Beginn von nicht entfernten Sonderzeichen; kann erweitert werden $zeichen_in = array("/"/", "/&/", "/ /", "/nbsp;/", "/quot;/"); //in $zeichen_out = array("" , "" , "" , "" , "" ); //out $resulut = preg_replace($zeichen_in, $zeichen_out,$resulut); //Ende $out_words=''; preg_match_all("/\b$pattern\b/i", $site, $hit); preg_match_all("/\b$pattern\b/i", $resulut, $out_words); $vf =''; $vf =$out_words[0][0]; $vc=''; $vc = '<b>'.$vf.'</b>'; $volume=''; $volume[] =$vf; $resulut = preg_replace("/\b$vf\b/i", $vc, $resulut); preg_match('/<title>(.*)<\/title>/i',$alL_meta[1], $head); $head[1] = htmlentities($head[1]); if (empty($head[1])) { $head[1] = 'Titel'; } echo "<div class=\"title\"><a href=\" $array_all[$i] \"><u> $head[1] </u></a></div>"; echo "<div class=\"out\">".$resulut." ...<br></div>"; echo "<div class=\"url\"><i>Url:</i><a href=\" $array_all[$i] \"> $array_all[$i] </a><br><br><br></div>\n"; } } } if ($vf) { echo "<br><br><div class=\"adress\"><a href=\"http://www.tv-iran.com\" target=\"_blank\"><i> By Tv Iran</i></a></div>"; } } } if (empty($pattern)) { echo "<div class=\"out\">Es wurde kein Suchwort eingegeben!<br><br><br><br><br></div>"; echo "<div class=\"adress\"><a href=\"http://www.tv-iran.com\" target=\"_self\"><i> By Tv Iran</i></a></div>"; } else { if (empty($resulut) or (empty($head[1]))) { echo "<div class=\"out\"><p>Leider kein Treffer!</p></div>"; echo "<div class=\"out\">Hier kommen sie zur <a href=\"$html_index \"><u>Ausgangsseite</u></a> zurück<br><br><br><br></div>"; echo "<div class=\"adress\"><a href=\"http://www.tv-iran.com\" target=\"_self\"><i>By Tv Iran</i></a></div>"; } } ?> Geändert von emy (04-02-2011 um 12:34 Uhr) |
| | |
| | #8 (permalink) |
| about nothing Registriert seit: Mar 2002 Ort: Borken
Beiträge: 724
|
Hi, packe deinen Code am besten in die PHP-Tags von BB, dann werden sie direkt formatiert angezeigt. Das findest du, wenn du einen Beitrag erstellst, in der Optionsleiste oben (ist ein kleines PHP-Symbol). Und den Code würde ich auch etwas lesbarer setzen (Einrücken, etc.). Wieso eigentlich die Umlaute (ä, ö, ü) nicht auch gleich in HTML-Code? PHP-Code:
__________________ |
| | |
| | #10 (permalink) |
| Neuer User Registriert seit: Jan 2007
Beiträge: 56
|
Hi, Bis hier hat 3 Wochen gedauert. Ich bin ganz Anfänger. Habe auch mit html probiert, leider meine wissen ist nicht genug. Deswegen habe als Anhang gepostet um zu lernen. Geht nicht weiter. Aber ich lasse nicht los Gruß Emy |
| | |
| | #11 (permalink) |
| Inventar Registriert seit: Jul 2002
Beiträge: 6.882
|
Ich werd einfach aus deinem Code nicht ganz schlau was du überhaupt machen willst :/ Was möchtest du genau machen? Ich bin mir ziemlich sicher dass mein deinen COde noch viel schöner und effizienter hinkriegt, aber dazu müssen wir Helfer erst mal genau wissen wo du nach was suchst und warum.
__________________ (\__/) (='.'=) (")_(") |
| | |
| | #12 (permalink) |
| Neuer User Registriert seit: Jan 2007
Beiträge: 56
|
Hi, nur ein Suchfunktion dass, die Seite durchsucht, wie alle normale Suchfunktion. So weit funktioniert alles OK. Nur bei meine Suchfunktion ist das Problem, dass egal was ich mache zeigt mir keine Umlaut. Deswegen habe die Daten als Anhang gepostet, um zu Wissen. Das ist alles, Gruß Emy |
| | |
| | #13 (permalink) |
| Inventar Registriert seit: Jul 2002
Beiträge: 6.882
|
Die Seiten sind alle HTML? Evt. bietet sich sogar eine Lösung in JavaScript an? JavaScript Search Engine das beispielsweise
__________________ (\__/) (='.'=) (")_(") Geändert von Nightflyer (04-02-2011 um 14:37 Uhr) |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| problem mit umlauten | xxbaerlexx | Flash Einsteiger | 4 | 28-11-2007 13:56 |
| Problem mit Umlauten | Slashwalker | PHP und MySQL | 10 | 02-11-2006 10:31 |
| Problem mit Umlauten :( | Messer-Jockel | Flash Einsteiger | 3 | 02-09-2006 10:46 |
| Problem mit Umlauten | Ivoo | Flash MX 2004 | 6 | 19-03-2005 15:34 |
| problem mit umlauten | Skyla | ActionScript 1 | 1 | 10-12-2003 08:12 |