Modul Feature-Suche

Diskussion zu nicht so umfangreichen Modulen und Start-Up für neue Module. Ansonsten bitte die speziellen Kategorien benutzen!
Antworten
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7361
Registriert: 01.01.1970 01:00
Hat sich bedankt: 110 Mal
Danksagung erhalten: 933 Mal
Kontaktdaten:

Beitrag von MarkusR »

So isses. Einfach als Parameter "title" bzw. "idx" in den Platzhaltern eingeben.
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
Ralf
ConPresso-Checker
Beiträge: 205
Registriert: 25.08.2005 10:58
Hat sich bedankt: 65 Mal
Danksagung erhalten: 14 Mal

Beitrag von Ralf »

mkd hat geschrieben:ok, habe ne andere lösung gefunden, ich habe aber mal den script um die bild anzeige erweitert, da ich ja auf der ergebniss seite die logos sehen will.
Hallo mkd,

könntest du dazu evtl. mal nähere Angaben machen ... wenn du dich noch erinnerst?? 8)

Denn ich stehe gerade vor so einer Frage, dass ich ein Bild in der Dateiverwaltung von CPO habe, dies im Artikel dann auch ausgewählt habe und es jetzt in der Suchausgabe gerne dargestellt hätte.

DANKE cu Ralf
Ralf
ConPresso-Checker
Beiträge: 205
Registriert: 25.08.2005 10:58
Hat sich bedankt: 65 Mal
Danksagung erhalten: 14 Mal

Beitrag von Ralf »

@ MarkusR,

ich bin nun heute endlich dazu gekommen mit diesem Modul von dir etwas zu experimentieren und mir sind dabei noch 2 Punkte aufgefallen.

Zum ersten:
Ich habe einen Platzhalter der heißt: "Land/ Jahr" und wenn ich in dieses Suchfeld nun etwas eingebe bekomme ich immer folgende Fehlermeldung:
Warning: preg_match() [function.preg-match]: Unknown modifier 'J' in /www/htdocs/mod_feature_search/includes/parser.inc.php on line 74
Kann es sein dass dieser "/" falsch geparst wird? und was kann ich dagegen tun??

Mein Code im Modul:

Code: Alles auswählen

        <tr>
            <td><label for="p3">Land/ Jahr</label></td>
            <td>
                <input type="text" name="p3" id="p3" value="### SEARCH_PHRASE_3 ###" />
                <input type="hidden" name="sf3" value="Land/ Jahr" /><input type="hidden" name="sm3" value="LIKE '%###%'" />
            </td>
        </tr>

Zweitens:
OK dazu muss ich etwas weiter ausholen ...
Ich habe 2 Rubriken (Filme A und Filme B) und in beiden Rubriken gibt es gemeinsame Platzhalter aber auch Platzhalter die nur in einer Rubrik vorkommen.
Wenn ich jetzt nach irgend etwas suche und ein Feld in meinem Ausgabetemplate (das ich fest definiert habe) hat in allen Treffern KEINEN Inhalt dann wird mir der Platzhalter ausgegeben (sprich z.B. ### SEARCH_DVD-Nummer ###)
DAS komische daran ist nun wenn ich eine andere Suche starte und in irgendeinem Eintrag der Ergebnisse ist dieses Feld belegt, wird bei ALLEN anderen Ergebnissen einfach "nichts" ausgegeben?!!!!

Kannst du dies evtl. noch so anpassen das wenn bei der ersten beschriebenen Suche das gleiche kommt (nichts) wie bei der zweiten???

Im voraus schon danke und echt cooles Modul ;-)
cu Ralf
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7361
Registriert: 01.01.1970 01:00
Hat sich bedankt: 110 Mal
Danksagung erhalten: 933 Mal
Kontaktdaten:

Beitrag von MarkusR »

zu 1) Probiere mal diese hier (siehe Anhang)
zu 2) habe ich derzeit keine Lösung, ich weiß aber woran es liegt...

probiere doch mal in mod_feature_serch/includes/parser.inc.php
vor die letzte Zeile
if (!isset($mute)) echo $page_string;
noch dies davor zu setzen
$cleanreg = "###\s*SEARCH_[^#]\s*###";
$page_string = preg_replace('/'.preg_quote($cleanreg, '/').'/', '', $page_string);

Ungetestet!
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
Ralf
ConPresso-Checker
Beiträge: 205
Registriert: 25.08.2005 10:58
Hat sich bedankt: 65 Mal
Danksagung erhalten: 14 Mal

Beitrag von Ralf »

zu 1) mit der NEUEN Datei klappt es wunderbar!!!! ;-) DANKE

zu 2) Nein sorry das hilft leider nicht :roll: - kein Unterschied zu vorher ... es wird immer noch der Platzhalter mit ausgegeben (in diesem besonderen Fall).

Tja dann HOFFE ich das du noch irgendwann eine Lösung finden wirst?!!

DANKE cu Ralf

P.S. wenn dir nochmal was einfällt und ich es testen soll/ darf, einfach kurz melden :wink:
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7361
Registriert: 01.01.1970 01:00
Hat sich bedankt: 110 Mal
Danksagung erhalten: 933 Mal
Kontaktdaten:

Beitrag von MarkusR »

Probiere stattdessen mal diese eine Zeile

Code: Alles auswählen

$page_string = preg_replace('/###\sSEARCH_[^#]*\s###/', '', $page_string); 
Das sollte funzen solange Deine Platzhalter kein # enthalten.
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
Ralf
ConPresso-Checker
Beiträge: 205
Registriert: 25.08.2005 10:58
Hat sich bedankt: 65 Mal
Danksagung erhalten: 14 Mal

Beitrag von Ralf »

Hallo MarkusR,

nein keiner meiner Platzhalter enthält ein "#" und somit hast du ganz recht :wink: dieser Code funktioniert nun !!!!

VIELEN DANK
Ralf
ConPresso-Checker
Beiträge: 205
Registriert: 25.08.2005 10:58
Hat sich bedankt: 65 Mal
Danksagung erhalten: 14 Mal

Beitrag von Ralf »

Hallo MarkusR,

vorne weg - ich weiß du hast diese Funktion nicht eingebaut - jedoch versuchte ich mkd schon zu erreichen jedoch ohne Erfolg ....

Mein Anliegen ist 6 Postings weiter oben http://community.conpresso.de/viewtopic ... 1645#21645

... es geht um eine Bildausgabe in den Suchtreffern deines Mods??!!
Könntest du dir evtl. vorstellen wie mkd dies realisiert hat?? Aber nur wenn es nicht zu viel mühe macht sonst warte ich eben noch etwas auf ihn.

Vielen DANK cu Ralf
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7361
Registriert: 01.01.1970 01:00
Hat sich bedankt: 110 Mal
Danksagung erhalten: 933 Mal
Kontaktdaten:

Beitrag von MarkusR »

Er hat vermutlich in actions.inc.php einen Block wie

Code: Alles auswählen

			$query = 'SELECT * FROM '.CPO_CONTENT_URLS.' WHERE article_id = '.$key;
			$db->query($query);
			while ($db->next_record_assoc()) 
			{
				$results_output[$db->v('nr')] = $db->record();
				$feldname = $results_output[$db->v('nr')]['fieldname'];
				$possible_fieldnames[$feldname] = 1;
				$artikelnummer = $results_output[$db->v('nr')]['article_id'];
				$results_output_fields[$artikelnummer][$feldname] = $results_output[$db->v('nr')]['url'];
			}
umgebaut, um statt der URLs alle Bilder der betroffenen Artikel zu erhalten. Insofern diese im Array $possible_fieldnames landen, dann werden sie ebenfalls geparst.

Diese Blöcke gibt es im Original bereits für TEXT, HTML und URL-Inhalte.
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
Ralf
ConPresso-Checker
Beiträge: 205
Registriert: 25.08.2005 10:58
Hat sich bedankt: 65 Mal
Danksagung erhalten: 14 Mal

Beitrag von Ralf »

DANKE dann versuche ich da mal mein Glück ... und melde mich wieder :wink:
Ralf
ConPresso-Checker
Beiträge: 205
Registriert: 25.08.2005 10:58
Hat sich bedankt: 65 Mal
Danksagung erhalten: 14 Mal

Beitrag von Ralf »

mmhhh so auf die schnelle bekomme ich es nicht hin ...
aber kurze frage, wie kann ich überprüfen was er mir alles für werte in die "$possible_fieldnames" geschrieben hat??
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7361
Registriert: 01.01.1970 01:00
Hat sich bedankt: 110 Mal
Danksagung erhalten: 933 Mal
Kontaktdaten:

Beitrag von MarkusR »

print_r($possible_fieldnames);
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
Ralf
ConPresso-Checker
Beiträge: 205
Registriert: 25.08.2005 10:58
Hat sich bedankt: 65 Mal
Danksagung erhalten: 14 Mal

Beitrag von Ralf »

ok ... jetzt bin ich einen Schritt weiter.

Denn die Aussage lautet:
Array ( [Filmtitel] => 1 [Bildformat] => 1 .... [Thumbnail] => 1 .... )
d.h. doch jetzt also sie landen in dieser Variablen und werden geparst?!
OK dann harpert es nur noch an der Ausgabe ... :wink:

Ich habe meinem Code für die Ausgabe wie folgt aufgebaut:

Code: Alles auswählen

<td><a href="### SEARCH_LINK ###" class="thumbnailP"><img src="../_data/### SEARCH_Thumbnail ###" alt="### SEARCH_TITLE ###" width="50" height="71" border="0" /></a></td>
Stimmt hier dann evtl. die Angabe/ die Benutzung der Variablen nicht?

Achso ich habe in der Datei actions.inc.php das folgende eingefügt:

Code: Alles auswählen

			$query = 'SELECT * FROM '.CPO_CONTENT_IMAGES.' WHERE article_id = '.$key;
			$db->query($query);
			while ($db->next_record_assoc()) 
			{
				$results_output[$db->v('nr')] = $db->record();
				$feldname = $results_output[$db->v('nr')]['fieldname'];
				$possible_fieldnames[$feldname] = 1;
				$artikelnummer = $results_output[$db->v('nr')]['article_id'];
				$results_output_fields[$artikelnummer][$feldname] = $results_output[$db->v('nr')]['image'];
			}
EDIT:
OK wie ich gerade bermerkt habe nach dem ich einen tieferen Blick in die Datenbank geworfen habe, werden die Bilder garnicht in dieser Tabelle gespeichert sondern nur ihre ID und die adresse dazu steht dann nachher in der data Tabelle ... ok dass ist dann noch das Problem!!!
mkd
ConPresso-Checker
Beiträge: 114
Registriert: 01.01.1970 01:00
Hat sich bedankt: 1 Mal

Beitrag von mkd »

Moinsen,

Datei: /includes/actions.inc.php

Code: Alles auswählen

			$query = 'SELECT * FROM '.CPO_CONTENT_IMAGES.' WHERE article_id = '.$key;
			$db->query($query);
			while ($db->next_record_assoc()) 
			{
				$results_output[$db->v('nr')] = $db->record();
				$feldname = $results_output[$db->v('nr')]['fieldname'];
				$possible_fieldnames[$feldname] = 1;
				$artikelnummer = $results_output[$db->v('nr')]['article_id'];
				
				$image_query = mysql_query("SELECT datei FROM ".CPO_DATA." WHERE id = ".$results_output[$db->v('nr')]['image_id']." LIMIT 1");
				if(mysql_num_rows($image_query)){$image_array = mysql_fetch_array($image_query);}else{$image_array['datei'] = "nix.gif";}
				$results_output_fields[$artikelnummer][$feldname] = $image_array['datei'];
			}
Habe das bei mir in die

Code: Alles auswählen

foreach ($results as $key => $value)
Zwischen dem aufruf für HTML und URL sollte etwa bei Zeile 270 sein.
Ralf
ConPresso-Checker
Beiträge: 205
Registriert: 25.08.2005 10:58
Hat sich bedankt: 65 Mal
Danksagung erhalten: 14 Mal

Beitrag von Ralf »

@ mkd

klasse!!! Das funktioniert wunderbar!!!

(evtl. kann ja MarkusR, diesen Code noch mit aufnehmen? - wenn du es erlaubst??)

Vielen DANK
cu Ralf
Antworten