Seite 3 von 4

Plus-Zeichen

Verfasst: Fr 28. Okt 2005, 09:30
von DEDE
nun, das urldecode ist drin

substr_count(strtolower(urldecode($db->f("content"))), $suchliste[$x]);

trotzdem Plus-Zeichen ...


Dede

Verfasst: Fr 28. Okt 2005, 10:53
von DEDE
So, nu hab ich in der Konfiguration (Template-Modul-Ausgabe)
geändert auf Zusammenfassung und die Plus-Zeichen werden
dann nicht angezeigt.

Frage:
Was konfiguriere ich bei Temlplate-Modul-Eingabe
mittels Zusatzangaben und Linkziel?

Sonnigen GRuss

Verfasst: Di 22. Nov 2005, 02:21
von mvf
ich habe das modul auch im test, funktioniert soweit

zu den pluszeichen scheu mal einpaar zeilen über deinem codesnipplet, da steht nochmal rawurldecode wenn man das in urldecode ändert dann geht es auch mit dem textauschnitt, die 50 dahiter ist dann noch die zeichenlänge, nd das ende kann man auch noch verlinken ;)

hier mal mien outputcode des ausgabemoduls

Code: Alles auswählen

<?php
echo "<table border=0 cellpadding=0 cellspacing=0><tr>";
if($suche){
$suche = trim($suche);
$suchregexp = "(".str_replace(" ",")|(",$suche).")";
$s=ereg_replace("ü", "%FC",strtolower($suche));
$s=ereg_replace("ä", "%E4",$s);
$s=ereg_replace("ö", "%F6",$s);
$s=ereg_replace("ß", "%DF",$s);
$suchregexp .= "|$s";
$suchliste = explode(" ",strtolower($suche));

$sql = "SELECT
a.title AS title, a.idart AS idart, a.summary AS comment, a.idartlang AS idartlang,
b.idcat AS idcat,
c.parentid AS parentid,
d.value AS content
FROM
".$cfg["tab"]["art_lang"]." AS a,
".$cfg["tab"]["cat_art"]." AS b,
".$cfg["tab"]["cat"]." AS c,
".$cfg["tab"]["content"]." AS d
WHERE
a.idart = b.idart AND
a.idartlang = d.idartlang AND
b.idcat = c.idcat AND
c.idclient = '$client' AND
idlang = '$lang' AND
online='1' AND
(d.value REGEXP '$suchregexp' OR a.title REGEXP '$suchregexp' OR a.summary REGEXP '$suchregexp')";

$db->query($sql);
if ($db->num_rows() != 0){
for ($i=0; $i<$db->num_rows(); $i++) {
$db->next_record();
if ($auth->auth["uid"] == "nobody"){
$sql2 = "SELECT public FROM ".$cfg["tab"]["cat_lang"]." WHERE idcat='".$db->f("idcat")."'";
$db2 = new DB_Contenido; $db2->query($sql2); $db2->next_record();
if($db2->f("public") == 0) continue;
};
$num = 0 + $db->f("idartlang");
$results[$num][link] = "front_content.php?client=$client&lang=$lang&parent=".$db->f("parentid")."&idcat=".$db->f("idcat")."&idart=".$db->f("idart")."";
$results[$num][title] = $db->f("title");
switch ("CMS_VALUE[2]") {
case 0: $results[$num][text] = "";break;
case 1: $results[$num][text] = $db->f("comment");break;
case 2: $results[$num][text] .= substr(strip_tags(urldecode($db->f("content"))),0,200)." <a href=\"".$results[$i][link]."\" class='text'\">... >></a>";
};
for($x=0;$x<count($suchliste);$x++){
$treffer[$num] += substr_count(strtolower(urldecode($db->f("title"))), $suchliste[$x]) +
substr_count(strtolower(urldecode($db->f("comment"))), $suchliste[$x]) +
substr_count(strtolower(urldecode($db->f("content"))), $suchliste[$x]);
};
};
if(count($treffer) > 0){
$treffer = array_values($treffer);
$results = array_values($results);
array_multisort ($results, SORT_DESC, SORT_NUMERIC, $treffer, SORT_DESC, SORT_NUMERIC);
for ($i=0; $i<count($treffer); $i++){
echo "<tr><td align=left><font size=\"-1\"><a href=\"".$results[$i][link]."\" class='text'";
if("CMS_VALUE[3]"){echo "TARGET=\"CMS_VALUE[3]\" ";};
echo ">".$results[$i][title]."</a></font> <span class='text'>(".$treffer[$i]." Treffer)<BR>";
echo $results[$i][text]."</span></td></tr>";
};
} else { echo "<tr><td class='text' align=center>Keine passenden Seiten gefunden</td></tr>"; };
} else { echo "<tr><td class='text' align=center>Keine passenden Seiten gefunden</td></tr>"; };
};
echo "</table>";
?>
2 fragen bitte

eigentlich bin ich über einen thread bezüglich 'highliting' auf das modul hier gestossen, aber highliting findet bei mir nicht statt :( ???

@halchteranerin:
gibt es das ganze auch tabellenfrei, du hattest geschrieben, dass du dran frickelts?

Verfasst: Di 22. Nov 2005, 08:14
von Halchteranerin
mvf hat geschrieben:@halchteranerin:
gibt es das ganze auch tabellenfrei, du hattest geschrieben, dass du dran frickelts?
nein, nur das mit dem Syntaxhighlighting ist tabellenfrei.

Verfasst: Di 22. Nov 2005, 13:16
von mvf
Halchteranerin hat geschrieben:nein, nur das mit dem Syntaxhighlighting ist tabellenfrei.
kannst du mir bitte auch sagen woich da mal angucken kann und wo ich den code dazu finden könnte?

merci dir

Verfasst: Di 22. Nov 2005, 17:48
von Halchteranerin
das ist die andere Version, ueber die du zu diesem Modul gefunden hast, die aber nicht mit der 4.6er Version funktionieren soll (ich hab's nicht getestet, da es bei mir unter 4.4.5 laeuft).

Verfasst: Di 22. Nov 2005, 19:13
von mvf
hmhhh?

also noch keine erfolge bezüglich text highliting in der suchausgabe in der 4.6.2?

hat jemand schon positive erfahrungen?

Mandantenübergreifende Suche

Verfasst: Di 29. Nov 2005, 21:51
von MwKs
Hallo,

in der Hoffnung, dass Ihr mir helfen könnt stürze ich auch gleich mit der Tür ins Haus:

Ich habe für einen Kunden mehrere verschiedene Seiten also verschiedene Mandanten erstellt. Dieser Kunde möchte aber jetzt eine Suchfunktion, die all seine Seiten durchsucht. Leider hat er mir das zu spät mitgeteilt, sonst hätte ich nur einen Mandanten erstellt.

Frage: gibt es eine Möglichkeit dieses Suchmodul mandantenübergreifend zu gestalten?

Danke im Voraus

Verfasst: Mo 19. Dez 2005, 15:11
von icecube
Hallo,

ist es möglich, die Suche auf nur eine Kategorie einzuschränken?

Vielen Dank für Eure Hilfe,
viele Grüsse
icecube

Verfasst: Mo 19. Dez 2005, 17:06
von Halchteranerin
icecube hat geschrieben:ist es möglich, die Suche auf nur eine Kategorie einzuschränken?
Ja, wenn du in der WHERE-Abfrage die gewuenschte Kategorienr. angibst.

Verfasst: Mo 19. Dez 2005, 17:19
von icecube
Vielen Dank Halchteranerin.

Ich änder die Zeile:
$sql2 = "SELECT public FROM ".$cfg["tab"]["cat_lang"]." WHERE idcat='".$db->f("idcat")."'";

in:
$results[$num][link] = "front_content.php?client=$client&lang=$lang&parent=".$db->f("parentid")."&idcat=9&idart=".$db->f("idart")."";

und:
$results[$num][link] = "front_content.php?client=$client&lang=$lang&parent=".$db->f("parentid")."&idcat=".$db->f("idcat")."&idart=".$db->f("idart")."";

in:
$results[$num][link] = "front_content.php?client=$client&lang=$lang&parent=".$db->f("parentid")."&idcat=9&idart=".$db->f("idart")."";

Dann erhalte ich trotzdem die Trefferliste aller Artikel, nicht nur von Kategorie 9.

Schön wäre nur in der Kategorie zu suchen und nicht nur die Ausgabe auf Kategorie 9 zu beschränken.

Vielen Dank noch für Deinen kleinen Tipp...

Verfasst: Mo 19. Dez 2005, 18:03
von Halchteranerin
aehm, nein, nicht dort. Irgendwo (bin jetzt zu faul, um noch ein Fenster aufzumachen), wo etwas mit b.idcat=c.idcat, da muesste nur b.idcat=DEINENR oder c.idcat=DEINENR stehen, meine ich (ich weiss jetzt auch nicht aus dem Kopf, ob man da nun b oder c nehmen muss, weil ich icht mehr weiss, welcher Buchstabe sich auf welche Tabelle bezieht.

Verfasst: So 2. Apr 2006, 10:10
von benzomat
hallo an alle hier,
und auch hallo an christa,
hab die suche, wie sie auf deiner seite halchter.com ist ausprobiert, sie läuft soweit.

aber schön wäre es, wenn die suchwörter in der gefundenen seite auch hervorgehobenen angezeigt werden könnten, ist diese funktion auch in dem modul hier vorhanden? ich finde da eben keinen hinweis zu.

ich wollte die suche auf einer seite einer videothek einsetzen, um die neuen filme zu finden. wenn dann auf der gefundenen seite selbst aber so 30-50 filme gelistet sind, muss der besucher auch da dann wieder selbst weitersuchen.

ach ja, noch etwas, der button zum aktivieren der suche ist nicht besonders schön, ich möcte den gern ändern in den typischen leicht rundlichen mit mouseover. und auch den rest der eingabe etwas verschönern. nur wo?

ok, danke vorab,
einen schönen sonntag noch,
wie ist das wetter eben bei euch im raum wf? hier in kärnten ist es schon richtig schön....

Verfasst: So 2. Apr 2006, 10:12
von phpchris
//Offtopic:

HOSSA ist die Suche schnell auf deiner Seite Halchter!

Verfasst: So 2. Apr 2006, 10:59
von Halchteranerin
benzomat hat geschrieben:aber schön wäre es, wenn die suchwörter in der gefundenen seite auch hervorgehobenen angezeigt werden könnten, ist diese funktion auch in dem modul hier vorhanden? ich finde da eben keinen hinweis zu.
nein, dafuer gibt's ein anderes Modul mit Highlighting. Wenn du nach Highlighting suchst, duerftest du es leicht finden.
Ich habe das Modul seit langer Zeit nicht angefasst, aber wenn ich mir das Output der Eingabe anschaue, duerfte klar sein, wo man den Button aendern kann. :wink: