| PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Post your PHP questions here! |
 |

30-11-2002, 12:33
|
|
Webbi
Registrierter Benutzer
|
|
Registriert seit: Sep 2001
Ort: Niedersachsen - Schortens
Beiträge: 170
|
|
Mehrfachzuordnung
Hi Leute
Habe folgendes Problem:
Ich habe in meiner DB zwei "Tabellen" eine Kategorie und eine Data!
Bisher weise ich einem Eintrag in der Data diese einer Kategorie zu.
Wie kann ich es aber bewerkstelligen, dass ich bei meiner Data einige Einträge zu mehreren Kategorien zuordnen kann.
Bisher:
KAT-TABELLE:
id, name, text
DATA-TABELLE:
id, name, katid, text, usw.
Inhalt der katid ist halt "eine" id aus KAT-TABELLE.
Ich möchte aber vielleicht einem Artikel aus der DATA zwei Einträgen oder mehr der KAT-TABELLE hinzufügen.
Webbi
|

30-11-2002, 12:51
|
TobiaZ
 Moderator
|
|
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.188
|
|
Eine Möglichkeit wäre eine dritte Kat, in der du die zuordnung Kat -> Code vornimmst.
|

01-12-2002, 09:38
|
|
Webbi
Registrierter Benutzer
|
|
Registriert seit: Sep 2001
Ort: Niedersachsen - Schortens
Beiträge: 170
|
|
HILFE
Ich hätte die Idee gehabt, dass ich alle Kategorien, die ich für den Artikel in der DATA vorsehe einfach hintereinander in das Feld "katid" schreibe, vielleicht auch getrennt durch ein Komma???
Nur wüsste ich dann nicht, wie ich das dann auslesen müsste (z.B. an dritter Stelle ist die Kategorie 15.
Also was müsste ich dann machen, wenn ich nach einem Klick dann alle ausgeben die die 15 irgendwo inne haben.
Ich müsste es dann ja nach dem gesetzten Sonderzeichen immer wieder abfragen, bis das Ergebnis stimmt.
Webbi
|

01-12-2002, 10:15
|
|
hand
PHP Expert
|
|
Registriert seit: Dec 2001
Ort: Kärnten
Beiträge: 3.138
|
|
Mach es einfach so, wie man das bei Verwendung von relationalen Datenbanken zu machen hat, über eine Relationentabelle.
Es gibt natürlich auch andere Lösungswege und Klimmzüge, die dann aber in der Folge zu größeren Problemen führen. Man kann ja schließlich auch über die Hecktüre ins Auto einsteigen. Wenn Du einer der Menschen bist, die es vorziehen über die Seitentüren in ein Auto einzusteigen und Dir die Kritik derer die über Hecktüren einsteigen - über Seitentüren steigen nur Unkreative ein - egal ist, dann mach eine Realtionstabelle.
(Es gibt besonders Kreative, die Schweißen in die Bodenplatte ein Loch, damit man von unten in ein Auto steigen kann, das nennen die dann Reverse-Cabrio)
also mein Vorschlag:
Code:
KAT-TABELLE:
id, name, text
DATA-TABELLE:
id, name, text, usw.
KAT-DATA-Relations-TABELLE:
id, katid, dataid
|

01-12-2002, 11:32
|
TobiaZ
 Moderator
|
|
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.188
|
|
@hand: Das war auch meine Idee
|

01-12-2002, 11:35
|
TobiaZ
 Moderator
|
|
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.188
|
|
@Webby: Deine Kommamethode geht auch. So hab ich es ganz zu begin gemacht. Du fragst dann mit Like ab. Das ist allerdings bei großen DBs zu langsam und deswegen bin ich dann auf die Zuordnungstabelle Umgestiegen. In dieser Tabelle hast du zwar je nach dem sogar 10 mal so viele Einträge, aber die DB arbeitet trotzdem schneller.
|

03-12-2002, 18:27
|
|
Webbi
Registrierter Benutzer
|
|
Registriert seit: Sep 2001
Ort: Niedersachsen - Schortens
Beiträge: 170
|
|
DANKE
SuperDank an ALLE!
Hätte nicht gedacht, dass es dann schneller ist, wenn ich ne extra tabelle nehme - eher langsamer - aber dann werde ich es wohl so machen!
Danke nochmal - hat mir sehr geholfen!
Webbi
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
|
|
| Thema bewerten |
|
|
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.
HTML-Code ist aus.
|
|
|
|
PHP News
|