Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hallo zusammen, nun meld ich mich auch mal wieder.

Habe ein Problem mit meiner Abfrage und komme nicht weiter.

Hab schon im INternet gesucht aber nichts gefunden.

Ich hab zwei Tabellen, eine mit Infos zu Firmen und eine mit den Ansprechpartnern.

Jetzt möchte ich das zu jeder Firma jeder Ansprechpartner angezeigt wird,

und die Firma aber nur einmal, und nicht für jeden Ansprechpartner.

Meine Tabelle zur Ausgabe sieht folgendermaßen aus:


Firmenname | Ansprechpartner | Telefon | Fax | Diverses1 | Diverses2
[/PHP]

Tabellen in der mySQL - DB:

[PHP]
Tabelle1:
- id | Firmenname | Diverses1 | Diverses2

Tabelle2:
- id | tabelle1_id | Ansprechpartner | Telefon | Fax

Hoffe mir kann jemand helfen, wie ich alle Firmen angezeigt bekomme

(nur 1 mal) und alle Ansprechpartner jeweils zu den Firmen.

Gruß

TripleD

Geschrieben

select firmenname, ansprechpartner from tabelle1, tabelle2 where tabelle1.id=tabelle2.tabelle1_id;

Es ist logisch, dass Du folgende Ergebnisse bekommst.

Firma, Ansprechpartner

a, herr x

a, frau b

c, herr k

d, frau z

Was soll SQL denn machen. Er bekommt aus der zweiten Tabelle zwei Datensätze und aus der ersten nur einen passenden. Also fügt er den einen Satz nochmal vorne dran. Du mußt dann bei der Ausgabe eine kleine Abfrage machen.

Frank

Geschrieben

wieso nicht das ganze in 2 zügen machen?

du verwendest PHP?

ich geh ma davon aus...


$sql = "select firma from tabelle1";
$res = mysql_query( $sql);
echo "<table>";
while( $firm = mysql_fetch_assoc( $res)) {
echo "<tr>";
$sql = "select person from tabelle2 where firmaId = ". $firm['id'];
$res2 = mysql_query( $sql);
echo "<td>". $firm['name'] ."</td>";
echo "<td>";
while( $person = mysql_fetch_assoc( $res2)) {
echo $person['name'] . "<br/>";
}
echo "</td>";
echo "</tr>";
}
echo "</table>";
[/PHP]

Geschrieben

Hallo,

erst mal danke für eure Hilfe.

Aber irgendwie passt da was noch nicht, und ich komm nicht drauf.

Hier mal der Quellcode:


<html>
<head>
<title>
Telefonliste Lieferant
</title>
<link rel="stylesheet" type="text/css" href="../../config/table.css">

<script language="JavaScript">
<!--
var nw;
function detail(url)
{
nw=window.open(url,'Drucken','height=500,width=800');
if (window.focus)
{
nw.focus()
}
}
//-->
</script>
</head>
<body>
<table>
<colgroup>
<col width="140"> <!-- Lieferant -->
<col width="120"> <!-- Ansprechpartner -->
<col width="100"> <!-- Telefon -->
<col width="100"> <!-- Fax -->
<col width="50"> <!-- Fracht -->
<col width="150"> <!-- Zahlungsbedingungen -->
</colgroup>
<tr>
<td>
<font size="3"><b>Lieferant</b></font>
</td>
<td>
<font size="3"><b>Ansprechpartner</b></font>
</td>
<td>
<font size="3"><b>Telefon</b></font>
</td>
<td>
<font size="3"><b>Fax</b></font>
</td>
<td>
<font size="3"><b>Fracht</b></font>
</td>
<td>
<font size="3"><b>Zahlungsbedingungen</b></font>
</td>
<td>
LFR
</td>
<td>
LFR
</td>
<td>
AP
</td>
<td>
AP
</td>
<td>
<a href="javascript:detail('print.php');"><img src="../../images/print.png" border="0" width="15" height="15" alt="Drucken"></a>
</td>
<td>
<a href="add.php"><img src="../../images/add.png" border="0" width="15" height="15" alt="Hinzufügen"></a>
</td>
</tr>
<?php
include('../connect.php');

$sql_lfr = "SELECT * FROM ".$T_LFR_LFR
OR die('Fehler bei Abfrage: '.mysql_error());

$result_lfr = mysql_query($sql_lfr)
OR die('Fehler bei Ausfürung: '.mysql_error());

while($lfr = mysql_fetch_assoc($result_lfr))
{
?>
<tr>
<td valign="top">
<?php
echo '<font size="2"><b>'.$lfr['firma'].'</b></font><br>';
echo '<font size="2"><b>Kunden-Nr.: '.$lfr['kdnr'].'</b></font><br>';
echo '<font size="2"><b>'.$lfr['oz'].'</b></font>';
?>
</td>
<?php
$sql_ap = "SELECT * FROM ".$T_LFR_AP
OR die('Fehler bei Abfrage: '.mysql_error());

$result_ap = mysql_query($sql_ap)
OR die('Fehler bei Ausfürung: '.mysql_error());

while($ap = mysql_fetch_assoc($result_ap))
{
?>
<td valign="top">
<?php
echo '<font size="2">'.$ap['ap'].'</font>';
?>
</td>
<td valign="top">
<?php
echo '<font size="2">'.$ap['tel'].'</font>';
?>
</td>
<td valign="top">
<?php
echo '<font size="2">'.$ap['fax'].'</font>';
?>
</td>
<?php
}
?>
<td valign="top">
<?php
echo '<font size="2">'.$lfr['fracht'].'</font>';
?>
</td>
<td valign="top">
<?php
echo '<font size="2">'.$lfr['zb_div'].'</font>';
?>
</td>
<td>
<?php
echo '<a href="edit.php?id='.$lfr[id].'"><img src="../../images/update.png" border="0" alt="Bearbeiten"></a>';
?>
</td>
<td>
<?php
echo '<a href="del_go.php?id='.$lfr[id].'"><img src="../../images/delete.png" border="0" alt="Löschen"></a>';
?>
</td>
<td>
<?php
echo '<a href="edit.php?id='.$ap[id].'"><img src="../../images/update.png" border="0" alt="Bearbeiten"></a>';
?>
</td>
<td>
<?php
echo '<a href="del_go.php?id='.$ap[id].'"><img src="../../images/delete.png" border="0" alt="Löschen"></a>';
?>
</td>
</tr>
<?php
}
?>
</table>
</body>
</html>
[/PHP]

Und hier die dazugehörige ausgabe:

>

>

bild1.png

Geschrieben

$sql_lfr = "SELECT * FROM ".$T_LFR_LFR

OR die('Fehler bei Abfrage: '.mysql_error());

Hier kann niemals ein mysql_error auftreten, da du ne ganz normale String zuweisung machst...

Gruß,

Markus

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...