SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Einführung in XHTML, CSS und Webdesign

Einführung in XHTML, CSS und Webdesign zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP Grundlagen

PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 02.09.2006, 11:13:43
-=LUPO=- -=LUPO=- ist offline
Anfänger
 
Registriert seit: Sep 2006
Beiträge: 20
String vergleichen und filtern ?

Hallo PHP-Gemeinde,

bin leider noch ein Anfänger und habe noch nicht den richtigen Durchblick und hoffe Ihr könnt mir helfen.

Mein Problem:

Ich habe eine Datenbank mit einer Spalte "keywords" die einzelnen Wörter sind durch ein , getrennt. Jetzt möchte ich die Wörter auf der Seite anzeigen lassen, da aber manche Wörter mehrfach vorkommen möchte ich die doppelten Wörter nur einmal anzeigen lassen.

Datenbank:
Zeile 1: keywords = wort1, wort2, wort3, wort4,...
Zeile 2: keywords = wort5, wort2, wort6, wort4,...

Die Anzeige wäre dann:
wort1, wort2, wort3, wort4, wort5, wort2, wort6, wort4,...

Die Anzeige die ich haben möchte ist:
wort1, wort2, wort3, wort4, wort5, wort2, wort6,...
ohne doppelte Wörter!

Ich möchte keinen fertigen Code, das wäre wohl zu viel verlangt, aber wenigstens einen Ansatz wie ich das realisieren kann.

Vielen Dank für Eure Hilfe.

Geändert von -=LUPO=- (02.09.2006 um 11:15:10 Uhr)
Mit Zitat antworten
  #2  
Alt 02.09.2006, 12:10:25
xlb xlb ist offline
Junior Member
 
Registriert seit: Jul 2006
Beiträge: 211
AW: String vergleichen und filtern ?

Tach ...

Da die einzelnen Begriffe bereits "komma-separiert" sind, könntest du aus den einzelnen "Wort-Listen" einen Gesamtstring bilden, daraus mittels explode() ein Array generieren und daraus wiederum via array_unique () ein weiteres Array ohne doppelte Einträge erszeugen ...
Mit Zitat antworten
  #3  
Alt 02.09.2006, 12:21:10
Opendix Opendix ist offline
Senior Member
 
Registriert seit: Oct 2004
Ort: Werdenberg / Schweiz
Alter: 35
Beiträge: 1.476
AW: String vergleichen und filtern ?

Also, wir lesen erst alle Datensätze aus der DB aus:

PHP-Code:
//Array in dem wir alle KEywords ablegen
$keywords = array();

//Abfragealler keywords
$query "SELECT keywords FROM tabelle";
$insert mysql_query($query);
while(
$daten mysql_fetch_assoc($insert))
{
    
//Hier kommt dann die verarbeitung..

nun wollen wir ja die werte immer bei dem Komma trennen, dies machen wir mit explode()

PHP-Code:
$werte explode(','$daten['keywords']); 
Jetzt können wir eigentlich mit zwei verschiedenen methoden die Keywords in das $keywords-array bekommen.

Ich würde das so machen:
PHP-Code:
$keywords array_merge($keywords$werte); 
also werden immer die neuen werte zu denbereits vorhandenen hinzugefügt!
Damt du nun keine doppelten hast, verwenden wir bevor der ausgabe noch:
PHP-Code:
$keywords array_unique($keywords); 
So und hier noch das ganze zusammengeflickt:
PHP-Code:
$keywords = array();

//Abfragealler keywords
$query "SELECT keywords FROM tabelle";
$insert mysql_query($query);
while(
$daten mysql_fetch_assoc($insert))
{
    
//Hier kommt dann die verarbeitung..
    //Zeile bei , trennen
    
$werte explode(','$daten['keywords']);
    
//Neue werte hinzufügen
    
$keywords array_merge($keywords$werte);
}

//Doppelte entfernen
$keywords array_unique($keywords);

//Ausgabe
for($i=0$i<count($keywords); $i++)
{
    echo 
$keywords[$i];

die zweite möglichkeit wäre noch, anstatt die werte mit array_merge hinzuzufügen da durch das array zu iterieren mit einer for-schlaufe und dann für jedes element mit in_Array() zu prüfen ob es bereits existiert, wenn nicht dann erst hinzufügen...

also hier noch einige Links:
www.php.net/array_merge
www.php.net/array_unique
www.php.net/explode

so hoffe konnte dir helfen... :)
__________________
Opendix lehnt jegliche Haftung für evtl. vorhandene Fehler in der Grammatik sowie der Satzstellung ab! Bitte wenden Sie sich an die Tastatur!

Betatester gesucht:
Skiclub Gams / CEVI Grabs
Mit Zitat antworten
  #4  
Alt 02.09.2006, 12:28:14
-=LUPO=- -=LUPO=- ist offline
Anfänger
 
Registriert seit: Sep 2006
Beiträge: 20
AW: String vergleichen und filtern ?

Hallo,

vielen Dank für Eure Hilfe :-)

array_unique ist genau das was ich gesucht habe, damit sollte es eigentlich klappen.

Gruß an alle Helfer.
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Array mit String vergleichen / explode, implode _mil28 PHP Grundlagen 1 25.01.2006 18:08:43
Wie String vergleichen? BenjaminG PHP Grundlagen 19 25.06.2005 13:14:56
String zerlegen und filtern Cooper PHP Grundlagen 13 29.04.2005 09:44:03
HTML und PHP in String korrekt ausgeben/verarbeiten LukeDogg PHP für Fortgeschrittene und Experten 5 22.03.2003 14:11:47
String in Array umwandeln.... DeMaephis PHP für Fortgeschrittene und Experten 7 19.05.2002 20:34:28


Alle Zeitangaben in WEZ +2. Es ist jetzt 10:04:05 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt