power-box.de
-


Hinweise


Antwort
 
LinkBack Themen-Optionen Thema durchsuchen Thema bewerten
Alt 10.03.2005, 13:08   #1
TP-Member
 
Registriert seit: Oct 2003
Ort: hamburg
longbow macht alles soweit korrekt

Tabellen verknüpfen


Servus Leute,

eines vorab, was mysql angeht bin ich ein blutiger Anfänger, also es könnte sein dass ihre über diese Frage nur müde schmunzelt.

Also folgendes,
ich habe eine Tabelle erstellt in der meine Adressen abgelegt werden und dann noch eine Bildertabelle wo zukünftig für jedes Profil das entsprechende Bild abgespeichert wird.

Das Problem nun, wie kann ich die Tabellen abfragen damit einem Profil das entsprechende Bild zugeordnet wird.

Das Abfragen der Adressen seht so aus.:

<?php
$db = mysql_connect("....", ".....", "....");
mysql_select_db("....",$db);
$result = mysql_query("SELECT * FROM priv",$db);
$zeilen=mysql_num_rows($result);
echo "<p><b>$zeilen Einträge wurden gefunden:</b></p>\n";
echo "<table boder=1 width=100%><tr><td align=center>";
echo "<center>";
echo"<TR><TD><B>Vorname & Name</B><TD><B>Geburtstag</B><TD><B>Optionen</B></TR>";
while ($myrow = mysql_fetch_array($result))
{
echo "<TR><TD>".$myrow["Vorname"].", ".$myrow["Name"]."</a><TD>".$myrow["Geburtstag"];
echo "<TD><a href=\"view.php?id=".$myrow[id]."\">Profil ansehen</a>";
echo "<TD><a href=\"delete.php?id=".$myrow[id]."\">Profil löschen</a> ";
echo "<TD><a href=\"change.php?id=".$myrow[id]."\">Profil ändern</a>";
}
echo "</TABLE>";
?>


jemand eine Idee?

Grüße
Kamil
longbow ist offline   Mit Zitat antworten


Alt 10.03.2005, 13:22   #2
TP-Junior
 
Registriert seit: Mar 2005
squig macht alles soweit korrekt
in deiner adresstabelle vergibst du eine eindeutige id, für jeden eintrag.
diese id ordnest du dem entsprechenden bild in der bildertabelle zu.

ausgelesen wird das ganze dann wie folgt:

SELECT * FROM adressen, bilder WHERE adressen.id = bilder.id

damit haste die verknüpfung zwischen beiden tabellen hergstellt.
squig ist offline   Mit Zitat antworten
Alt 10.03.2005, 13:25   #3
TP-Supporter
 
Benutzerbild von CB.NET
 
Registriert seit: Jun 2003
Ort: Fürth
CB.NET macht sich hier sehr viel Mühe
wie sieht deine tabellenstruktur aus ?
sind PK und FK richtig gesetzt ?

ein klassischer Fall für einen JOIN
ein Beispiel :
http://www.w3schools.com/sql/sql_join.asp
__________________
Die perfekte Web-Applikation ist: sicher,skalierbar,schnell, anwenderfreundlich,intuitiv, wiederverwendbar,flexibel,transparent,umfassend,dynamisch, zuverlässig,einfach,modular,effizient, stabil,handhabbar,verteilt,robust, persistent,kollaborativ,mächtig,intelligent,leicht verwendbar,portierbar,erweiterbar,
fehlerfrei, und zu guter Letzt billig
CB.NET ist offline   Mit Zitat antworten
Alt 10.03.2005, 13:57   #4
TP-Member
 
Registriert seit: Oct 2003
Ort: hamburg
longbow macht alles soweit korrekt
hmm, das wird doch nicht so einfach *grummel*

die erste tabelle besteht auf folgenden fäldern:

id Vorname Name Geburtstag Str PLZ Ort Tel Fax Handy EMail Notizen

die zweite (bilder) tabelle:
ID Dateiname Dateigroesse Daten


jetzt stellt euch mal vor ich möchte mal eben die handy nr meines bruders abrufen, also suche ich beispielsweise nach dem vornamen und das Ergebniss liefert mir das Bild mit.*hmm*

geht das überhaupt???

grüße
kamil
longbow ist offline   Mit Zitat antworten
Alt 10.03.2005, 14:32   #5
TP-Junior
 
Registriert seit: Mar 2005
squig macht alles soweit korrekt
klar geht das.

wir nehmen nur eine kleine erweiterung an der 2ten tabelle vor.

ID Dateiname Dateigroesse Daten ID_Kontakt --> dies ist nun der Fremdschlüssel.

im fremdschlüssel steht die gleiche eindeutige nummer drin, die in dem feld "id" aus der ersten tabelle steht.
somit ist dem addresseintrag deines bruders sein bild zugeordnet.

SELECT Handy, Dateiname FROM addressen, bilder WHERE Vorname = "Bruder" AND id = ID_Kontakt

sollte dir die handynr deines bruders liefern, nur mal vereinfacht angenommen, er wäre eindeutig über den vornamen zu identifizieren.
squig ist offline   Mit Zitat antworten
Alt 10.03.2005, 15:16   #6
TP-Specialist
 
Benutzerbild von theo
 
Registriert seit: Apr 2002
Ort: 743, evergreen terrace
theo bringt sich richtig ein
vor allem, wenn man so ...
Zitat:
Zitat von longbow
ein blutiger Anfänger
ist, sollte man seine statements vorher mit einem geeigneten tool testen.
also query-browser oder (noch besser) mysql-front nehmen und das statement mal laufen lassen. dadurch lernst du mit der zeit, die abrfagen und deren ergbnisse besser abzuschaetzen.
gerade bei joins entstehen oft grosse und komplizierte ergebnistabellen, die ganz schnell mal auf die performance druecken koennen. daher sollte man sich die ausmasse seines tun wirklich hin und wieder konkret vor augen fuehren. hilft wirklich ungemein und foerdert ganz nebenbei das lernen.

gruss
hardy
theo ist offline   Mit Zitat antworten
Alt 10.03.2005, 15:58   #7
TP-Member
 
Registriert seit: Oct 2003
Ort: hamburg
longbow macht alles soweit korrekt
hmm, vielen dank erstmal für all eure vorschläge, jetzt werde ich erstmal versuchen was daraus zu machen :

Grüße
Kamil
longbow ist offline   Mit Zitat antworten
Alt 10.03.2005, 17:43   #8
TP-Member
 
Registriert seit: Oct 2003
Ort: hamburg
longbow macht alles soweit korrekt
mir ist noch eine idee gekommen, wäre es nicht einfacher wenn ich die erste tabelle um ein feld ( für die bilder ) erweitere? so könnte ich es mir sparen die 2 tabellen miteinander zu kombinieren.

was haltet ihr davon?

grüße
kamil
longbow ist offline   Mit Zitat antworten
Alt 10.03.2005, 17:49   #9
TP-Specialist
 
Benutzerbild von theo
 
Registriert seit: Apr 2002
Ort: 743, evergreen terrace
theo bringt sich richtig ein
wieviele bilderchen hast du denn pro people? max. eins oder koennen es mehrere sein.
im zweiten fall wuerde deine tabelle ruckzuck durch die normalisierung fallen, daten doppelt auftreten und die pflege ein horror werden.
theo ist offline   Mit Zitat antworten
Alt 10.03.2005, 17:52   #10
TP-Member
 
Registriert seit: Oct 2003
Ort: hamburg
longbow macht alles soweit korrekt
pro profil nur ein bild
longbow ist offline   Mit Zitat antworten
Alt 10.03.2005, 18:26   #11
TP-Specialist
 
Benutzerbild von theo
 
Registriert seit: Apr 2002
Ort: 743, evergreen terrace
theo bringt sich richtig ein
im notfall kannst du auch mehrere bilder in ein feld schmeissen. geht ja auch.
was mich hoechstens noch interessieren wuerde, was du mit der tabelle noch machst. ich meine, fuer die paar daten (und ich moechte da sicher nicht wie dennis klingen *denichschonlangsamzuvermissenbeginne*) braucht man doch nicht zwingend eine db mit zugangsdaten, connect und allem.
macht dein script noch mehr? oder hat die db noch mehr daten?
theo ist offline   Mit Zitat antworten
Alt 10.03.2005, 19:21   #12
321
TP-Specialist
 
Benutzerbild von 321
 
Registriert seit: Nov 2004
Ort: Die Insel in Europa die aus Europa erst Europa macht _________________________ Nähe Lenzburg
321 hilft, wo's geht321 hilft, wo's geht321 hilft, wo's geht
Zitat:
Zitat von longbow
pro profil nur ein bild
Dann brauchst Du auch keine zweite Tabelle für die Bilder,
häng einfach die Felder Dateiname Dateigroesse Daten dran!
__________________
[321 Name="Joe"]
wie immer, lieber gleich mit notepad, dem Editor meines Vertrauens
[/321]


use my HTML-Tester

Motto'06: Mut zur deutschen Sprache!
321 ist offline   Mit Zitat antworten
Alt 10.03.2005, 19:32   #13
TP-Member
 
Registriert seit: Oct 2003
Ort: hamburg
longbow macht alles soweit korrekt
@Theo
die DB war im Umfang meines Vertrages mit dabei also versuche ich die auch irgendwie zu nutzen und schreibe an einem Gästebuch und noch anderen Script. Nur die Sache mit den Bildern kriege ich nicht hin.

@321
das schoss mir auch schon durch den Kopf, werde das mal ausprobieren.

Grüße
Kamil
longbow ist offline   Mit Zitat antworten
Antwort

  Aktuelles Thema
  TP Hilfe Forum > Web-Editoren & Coding > Traum-Dynamik
Tabellen verknüpfen Tabellen verknüpfen
« Datensatz automatisch nach Datum auf 0 setzten | PHP-Script mit $HTTP_REFERER funktioniert nicht mehr »

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:21 Uhr.

Powered by: vBulletin Version 3.7 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd. / Search Engine Friendly URLs by vBSEO 3.2.0 ©2008, Crawlability, Inc.
Traum-Projekt.com | Suchen | Archiv | Impressum | Kontakt | | | Nach oben |



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67