Doppelte Ausgabe
NuQDuj
- php
Hallo zusammen,
mein script lief bis gestern abend ohne probleme, seit heute sind aber alle ausgaben doppel. kann mir bitte jemand weiter helfen bin grad am verzweifeln.
$s_option = 'AND a.unter_status=\''.$HTTP_POST_VARS['status'].'\' OR a.id = b.kunden_id AND b.apt_status=\''.$HTTP_POST_VARS['status'].'\'';
$sql = "SELECT a.*, b.apt_status, b.kunden_id
FROM gcl_kunden a, gcl_kunden_abteilung b
WHERE a.unter_taetig != 'privatpers' $s_option
ORDER BY a.unter_firma";
if ( $result = $db->sql_query($sql) )
{
$firmen = array();
while ($row = $db->sql_fetchrow($result))
{
$firmen[] = $row;
}
}
$db->sql_freeresult($result);
seit heute giebt er mir bei $firmen
jeden eintrag doppelt.
danke für eure hilfe
was steht denn in der datenbank? wenn du nichts verändert hast, wurde ggf. deine datenbank verwurstet (fehlerhafter datenimport oder ähnliches?)
nein da ist alles in ordnung.
hab grade nochmal in der DB nachgeschaut aber alle daten sind so wie sie sein sollen. 3 einträge keiner davon doppelt.
nur bei der ausgabe sind auf einmal alle doppelt
Hi,
nein da ist alles in ordnung.
hab grade nochmal in der DB nachgeschaut aber alle daten sind so wie sie sein sollen. 3 einträge keiner davon doppelt.
3 Einträge, verteilt auf die 2 beteiligten Tabellen?
cu,
Andreas
nein
ok hätte ich vieleicht dazusagen sollen.
in der ersten tabelle a.*
stehen die 3 daten sätze
über der 2. wird nur kontrolliert ob die datensätzen aus
der ersten tabelle auch zu dem daten der 2. tabelle gehören
mfg
Hi,
ok hätte ich vieleicht dazusagen sollen.
in der ersten tabelle
a.*
stehen die 3 daten sätze
über der 2. wird nur kontrolliert ob die datensätzen aus
der ersten tabelle auch zu dem daten der 2. tabelle gehören
Du
SELECT ... FROM tabelle1, tabelle2
bildest du das Kreuzprodukt aus beiden Tabellen - also ist es nur logisch, dass du die Daten mehrfach erhaeltst.
MfG ChrisB
SELECT ... FROM tabelle1, tabelle2
bildest du das Kreuzprodukt aus beiden Tabellen - also ist es nur »» logisch, dass du die Daten mehrfach erhaeltst.
hi
aber bis gestern abend gab es noch keine doppelte ausgabe
da hat es noch gefunzt.
bzw wie bekomm ich das jetzt hin das nur 1 ausgabe erfolgt
gruß
Hi,
bzw wie bekomm ich das jetzt hin das nur 1 ausgabe erfolgt
Selektiere nur die Daten, die du ausgeben willst.
(Um mehr dazu sagen zu koennen, fehlen immer noch wesentliche Informationen. Du hast lediglich dein Select-Statement hier hingeklatscht, ohne zu sagen, warum du das so machst, was du damit bezwecken willst, wie der Aufbau deiner Tabellen aussieht, etc.)
MfG ChrisB
Hi,
bzw wie bekomm ich das jetzt hin das nur 1 ausgabe erfolgt
Selektiere nur die Daten, die du ausgeben willst.
(Um mehr dazu sagen zu koennen, fehlen immer noch wesentliche Informationen. Du hast lediglich dein Select-Statement hier hingeklatscht, ohne zu sagen, warum du das so machst, was du damit bezwecken willst, wie der Aufbau deiner Tabellen aussieht, etc.)
MfG ChrisB
und zu 1.? warum ging es jetzt 1.monat lang und heute auf einmal nicht mehr?
Ok
also es sollen nur die daten aus der 1. tabelle abgerufen werden
sollte in dieser tabelle keine daten per "WHERE" (zb. plz) gefunden werden soll die 2. tabelle überprüft werden ob da diese Daten vorhanden sind und ob diese zu tabelle 1 gehören, wenn ja soll tabelle 1 ausgegeben werden.
mfg
Hi,
und zu 1.? warum ging es jetzt 1.monat lang und heute auf einmal nicht mehr?
Wir koennen nicht wissen, warum der Unfug, den du programmiert hast, sich erst jetzt auswirkt :-)
also es sollen nur die daten aus der 1. tabelle abgerufen werden
Dann mach das:
SELECT ... FROM tabelle1;
sollte in dieser tabelle keine daten per "WHERE" (zb. plz) gefunden werden soll die 2. tabelle überprüft werden ob da diese Daten vorhanden sind
Wenn diese Daten vorhanden sind, warum stehen sie dann nicht in Tabelle 1 drin?
Dein Datenbankdesign scheint merkwuerdig zu sein - man koennte auch vermuten, dass es Murks ist, und ueberarbeitet gehoert.
und ob diese zu tabelle 1 gehören,
Und wie definiert sich "gehoeren dazu"?
wenn ja soll tabelle 1 ausgegeben werden.
In der war doch nichts drin, wieso willst du dieses Nichts jetzt ausgeben?
Ich bat dich um Praezisierung deiner Angaben - stattdessen stiftest du nur mehr Verwirrung und bringst weitere Unklarheiten.
MfG ChrisB
Wenn diese Daten vorhanden sind, warum stehen sie dann nicht in Tabelle 1 drin?
Weil die daten zusammen zu umfangreich und teilweise unterschiedlich sind.
Tabelle 1 sind nur Firmen
in Tabelle 2 alle zugehörigen Abteilungen z.b. deren status unterschiedlich ist.
Und wie definiert sich "gehoeren dazu"?
wenn ich die firmen (aus tabelle 1) abfragen will deren abteilung(in tabelle 2) einen bestimmten status haben
mfg
Hi,
wenn ich die firmen (aus tabelle 1) abfragen will deren abteilung(in tabelle 2) einen bestimmten status haben
Beschaeftige dich mit JOINs.
SELFHTML Artikel: Einführung in Joins, Fortgeschrittene Jointechniken
MfG ChrisB
Mahlzeit NuQDuj,
Wenn diese Daten vorhanden sind, warum stehen sie dann nicht in Tabelle 1 drin?
Weil die daten zusammen zu umfangreich und teilweise unterschiedlich sind.
Blablabla. Du willst anscheinend keine Hilfe - sonst würdest Du Dich nicht ständig winden und unklar daherschwafeln, sondern endlich mal wenigstens die Struktur Deiner Tabellen darlegen.
Und wie definiert sich "gehoeren dazu"?
wenn ich die firmen (aus tabelle 1) abfragen will deren abteilung(in tabelle 2) einen bestimmten status haben
... was dann? Ist es Dir nicht möglich, in halbwegs vollständigen, verständlichen Sätzen Dein Problem so zu erläutern, dass auch Leute, die Deine Tabellenstruktur und deren Inhalt nicht kennen, ansatzweise verstehen, was Du meinst? Wieso denkst Du, dass Deine Leser funktionierende Glaskugeln oder einen Direktanschluss in Dein Gehirn haben?
Wenn Du qualifizierte Hilfe möchtest, dann beschreibe Dein Problem vernünftig und liefere sämtliche relevanten Informationen, die jemand haben muss, der Deine Datenbankstruktur nicht kennt. Wenn Du das nicht tust, kannst Du nicht ernsthaft erwarten, dass Dir hier jemand helfen kann: "keine Arme - keine Kekse".
MfG,
EKKi