Mailinglisten-Archive |
Manuel Hossfeld schrieb, > > kann ich in einem Datenbankfeld (mysql), das als key in einer Tabelle > > auf einen primary key einer anderen Tabelle verweist mehrere variablen > > (Indexnummern) speichern und in Form eines arrays verarbeiten bzw. > > abfragen??? Ich habe hier die Originalfrage nicht vorliegen und hoffe, nicht völlig daran vorbei zu antworten. > 1.) Wenn Du die Elemente in Deinen "Mehrfachfelder" immer konsequent mit ein > und demselben "Trenner" (z.B. Komma oder Space) getrennt hast, kannst > Du die mit PHP natürlich wieder aufsplitten. Z.B. mit "explode" ("split" > ginge auch): Ich vermisse übrigens in PHP eine Funktion, die prüft, ob ein Wert in einem Array vorhanden ist (oder habe ich die übersehen?). Also etwa: if ($a in $b) {...}. > 3.) Was Du allerdings vermutlich machen willst/solltest, ist eine sog. > "n:m"-Relation (in der Datenbank). Das ist die normale Vorgehensweise und empfehlenswert. Es gibt noch eine vierte Möglichkeit: Man speichert mehrere durch Kommata getrennte Werte in einem Feld wie "123,234,345,456". In der SQL-Abfrage geht dann z.B.: "select * from tabelle1, tabelle2 where feld.tabelle1 in (liste.tabelle2)", wobei "liste" das feld mit obiger Liste in tabelle2 ist und "feld" ein Feld in tabelle1 mit einem Wert der möglicherweise in dieser Liste vorkommt. Gruß, Reiner
php::bar PHP Wiki - Listenarchive