Veröffentlicht 2. Dezember 200420 j Hallo, ich hab ne Tabelle, bei der nach bestimmten Absätzen eine leere Zeile ausgegeben werden soll. Nun hab ich in meiner Datenbank eine Zeile ohne Inhalte, die ausgegeben werden soll, wenn vor dem nächsten eintrag kein Eintrag war. Ich hab das jetzt folgendermaßen versucht: if($row['firma'] - 1 == ' '); { echo $row['id'] } [/PHP] Die Ausgabe ist nur zum Test. Hoffe mir kann jemand helfen. Gruß TripleD
2. Dezember 200420 j Hi TripleD, so wie du das hast wird das nix. Gibt es "Regel" nach der du bestimmen kannst wann Leerzeilen erscheinen sollen? Einen Leeren Datensatz in die Datenbank hinzuzufügen finde ich eine schlecht Lösung. Das mit deinem Ansatz wird so nichts. Gruß, Markus
2. Dezember 200420 j HI, danke erst mal für deine Antwort. Also, das ganze sieht bei mir am ende so aus: Firma | Tel | Fax | Ansprechpartner | Tel | Fax | F1 | 0 | 0 | Ich | 0 | 0 | | 1 | 1 | Du | 1 | 1 | F2 | 0 | 0 | Ich | 0 | 0 | F3 | 0 | 0 | Ich | 0 | 0 | [/PHP] Vor jedes "F" soll eine Leerzeile drin sein. Mann kann aber nicht genau sagen, wieviel Ansprechpartner pro Firma drin sind, da die einen 5 und die anderen nur 2 und so weiter haben. Hoffe das hilft dir weiter. TripleD
2. Dezember 200420 j also wenn ich dich richtig verstehe, dann sollen die Firmen voneinander optisch getrennt werden? Mit diesem F usw kriegt man das easy hin! Noch kurz was zur Datenstruktur. Ich glaube du solltest die Ansprechpartner in einer eigenen Tabelle halten, da sonst deine daten schnell inkonsistent werden.
2. Dezember 200420 j Genau .. ich würd mir im Internet mal ein paar Informationen zum Thema "Normalisierung" besorgen
3. Dezember 200420 j Hi, also ich hab jetzt mal die ganzen Ansprechpartner Daten in ne extra Tabelle gesetzt. Ich hab jetzt nur noch ein Problem mit der Abfrage und Ausgabe. Wenn bei Firma A drei Ansprechpartner 1 sind, wird für jede weitere Firma der Ansprechpartner benutzt und dann kommt Ansprechpartner 2 für alle Firmen. Was hab ich falsch gemacht? nach folgender Abfrage: <?php include('../connect.php'); $sql = "SELECT * FROM ".$T_KD.", ".$T_AP OR die('Fehler bei Abfrage: '.mysql_error()); $result = mysql_query($sql) OR die('Fehler bei Ausfürung: '.mysql_error()); while($row = mysql_fetch_assoc($result)) { ?> <tr> <td> <?php if($row['firma'] == ' ') { echo '<font size="2">'.$row['firma'].", ".$row['ort']." ".$row['version'].'</font>'; } else { echo '<font size="2">'.$row['firma']." ".$row['ort']." ".$row['version'].'</font>'; } ?> </td> <td> <?php echo '<font size="2">'.$row['z_tel'].'</font>' ?> </td> <td> <?php echo '<font size="2">'.$row['z_fax'].'</font>' ?> </td> <td bgcolor="#9F9F9F"> <?php echo '<font size="2">'.$row['ap'].'</font>' ?> </td> <td> <?php echo '<font size="2">'.$row['ap_tel'].'</font>' ?> </td> <td> <?php echo '<font size="2">'.$row['ap_fax'].'</font>' ?> </td> </tr> <?php } ?> [/PHP] Gruß TripleD
3. Dezember 200420 j Also wenn du die Normalisierung richtig gemacht hast, ist in der Mitarbeitertabelle ein Feld für die Firmen-ID drin - dann bräuchtest du nur mit WHERE firmenID = "'$_PSO[firmenid]'" in der Abfrage die entsprechende Firma auswählen.
3. Dezember 200420 j Oops, ich hätte mal besser vorher kontrollieren sollen... Der Zusatz ist natürlich so richtig: WHERE firmenID = "'$_POST[firmenid]'"
3. Dezember 200420 j in deinem SQL fehlt auch die Tabellen verknüpfung: Pseudocode: $sql = "SELECT * FROM ".$T_KD.", ".$T_AP . " WHERE T_KD.id = T_AP.id"; [/PHP]
7. Dezember 200420 j Hi, also Danke erst mal für eure Hilfe. @kills: Die Abfrage muss so lauten: $sql = "SELECT * FROM ".$T_KD.", ".$T_AP . " WHERE $T_KD.id = $T_AP.id"; [/PHP] nicht so: [PHP] $sql = "SELECT * FROM ".$T_KD.", ".$T_AP . " WHERE T_KD.id = T_AP.id"; Gruß und Danke nochmal TripleD
7. Dezember 200420 j HI nochmal, hab da noch ein Problem, und zwar hab ich ja x-Firmen und zu jeder Firma wieder x-Ansprechpartner. Wie bekomm ich das jetzt hin, dass die Firma nicht vor jedem Ansprechpartner steht? Gruß TripleD
7. Dezember 200420 j Hi, also Danke erst mal für eure Hilfe. @kills: Die Abfrage muss so lauten: $sql = "SELECT * FROM ".$T_KD.", ".$T_AP . " WHERE $T_KD.id = $T_AP.id"; [/PHP] nicht so: [PHP] $sql = "SELECT * FROM ".$T_KD.", ".$T_AP . " WHERE T_KD.id = T_AP.id"; Gruß und Danke nochmal TripleD Wenn muss es dann auch so heissen: $sql = "SELECT * FROM ".$T_KD.", ".$T_AP . " WHERE ". $T_KD .".id = ". $T_AP .".id"; [/PHP] ein bissl einheitlich muss ja auch sein.... HI nochmal, hab da noch ein Problem, und zwar hab ich ja x-Firmen und zu jeder Firma wieder x-Ansprechpartner. Wie bekomm ich das jetzt hin, dass die Firma nicht vor jedem Ansprechpartner steht? Gruß TripleD Wie ist denn dein Ansatz? Gruß, Markus
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.