Registrieren  •  Login 
  
 
im Forum


 FAQ   Mitgliederliste   Benutzergruppen   Teamseite   Suchen 

Mehrere Subjekte anzeigen

 
Neues Thema eröffnen   Neue Antwort erstellen
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
thoha
Übersetzer
Übersetzer



Anmeldedatum: 07.10.2006
Geschlecht: Männlich
Beiträge: 2591

BeitragVerfasst am: 26.04.2009, 13:29    Titel: Mehrere Subjekte anzeigen

Hallo zusammen

mir schwebt im Moment gerade folgendes vor:
in einer Spalte "team" sollen die Subjekt-IDs der anwesenden Teammitglieder gespeichert werden. Die Subjekt-IDs sind in der Tabelle subjekte.

Also dass die IDs so gespeichert werden:
1|10|23

Die Ausgabe soll dann mit den in der Tabelle subjekte hinterlegten Namen erfolgen, also:
Max Muster<br />Beat Kleister</br>Richard Blume

Der Sinn ist, für ein einzelnes Element eines Tagesprogramms (es geht um ein Lager) mehrere Personen des Teams zu speichern, die dort zuständig sind.

Wie kann ich das realisieren?

Liebe Grüsse
Thomas
Nach oben
Benutzer-Profile anzeigen thoha ist derzeit offline Spielerprofile bei SC:Special Bewerben anzeigen Private Nachricht senden
killerbees19
Administrator & Rennleitung
Administrator & Rennleitung



OC-Nickname: KB19
Südafrika Team South Africa

Anmeldedatum: 09.05.2006
Geschlecht: Männlich
Alter: 29 Jahre
Beiträge: 13993
Wohnort: Wien

BeitragVerfasst am: 26.04.2009, 20:06    Titel: Re: Mehrere Subjekte anzeigen

thoha hat Folgendes geschrieben:
Wie kann ich das realisieren?

Einfach mit Joins, wie beim letzten Thema, sofern ich dich jetzt richtig verstehe. Jede Subjekt-ID in der Spalte Team ist ja ein eigener Datensatz, oder nicht? Brauchst also nur mit einem Join beim Auslesen zu verknüpfen...


MfG Christian
_________________
Nach oben
Benutzer-Profile anzeigen killerbees19 ist derzeit offline Spielerprofile bei SC:Special Bewerben anzeigen Private Nachricht senden Website dieses Benutzers besuchen
thoha
Übersetzer
Übersetzer



Anmeldedatum: 07.10.2006
Geschlecht: Männlich
Beiträge: 2591

BeitragVerfasst am: 26.04.2009, 21:46    Titel:

sorry, vielleicht habe ich es ungenau beschrieben.

Für jede Veranstaltung innerhalb dieses Lagers soll es eine Zeile in der Tabelle programm geben. Für eine grössere Veranstaltung braucht es mehrere Helfer (Techniker, Sanitäter,..).

Die Subjekt-IDs der Helfer sollen dann so in die Zelle geschrieben werden:

1|10|23

nachher sollen dann bei der Ausgabe jede Subjekt-ID abgearbeitet werden (den obengenannten String also an den Pipe-Zeichen aufteilen und die zugehörigen Namen ausgeben).

Mein Problem besteht im Splitten und im Befehl für SQL.
Nach oben
Benutzer-Profile anzeigen thoha ist derzeit offline Spielerprofile bei SC:Special Bewerben anzeigen Private Nachricht senden
killerbees19
Administrator & Rennleitung
Administrator & Rennleitung



OC-Nickname: KB19
Südafrika Team South Africa

Anmeldedatum: 09.05.2006
Geschlecht: Männlich
Alter: 29 Jahre
Beiträge: 13993
Wohnort: Wien

BeitragVerfasst am: 26.04.2009, 21:57    Titel:

Achso, dann wird dir nichts anderes übrig bleiben, als mit explode() in PHP alles aufzuteilen und dann jeweils nochmals einen SQL-Query auszuführen, direkt in MySQL geht das so leider nicht. Am besten du splittest es also auf, sammelst die ID's zusammen, liest alle gemeinsam aus und dann erst generierst du die Seite, wenn du die wirklichen Namen bereits in einem Array hast, so sparst du SQL-Queries.


MfG Christian
_________________
Nach oben
Benutzer-Profile anzeigen killerbees19 ist derzeit offline Spielerprofile bei SC:Special Bewerben anzeigen Private Nachricht senden Website dieses Benutzers besuchen
thoha
Übersetzer
Übersetzer



Anmeldedatum: 07.10.2006
Geschlecht: Männlich
Beiträge: 2591

BeitragVerfasst am: 12.06.2009, 17:35    Titel:

killerbees19 hat Folgendes geschrieben:
Achso, dann wird dir nichts anderes übrig bleiben, als mit explode() in PHP alles aufzuteilen und dann jeweils nochmals einen SQL-Query auszuführen, direkt in MySQL geht das so leider nicht. Am besten du splittest es also auf, sammelst die ID's zusammen, liest alle gemeinsam aus und dann erst generierst du die Seite, wenn du die wirklichen Namen bereits in einem Array hast, so sparst du SQL-Queries.


MfG Christian


Hallo Christian

kannst du mir dafür ein Codebeispiel geben? Ich steig' nicht so ganz durch Wink Danke.
Nach oben
Benutzer-Profile anzeigen thoha ist derzeit offline Spielerprofile bei SC:Special Bewerben anzeigen Private Nachricht senden
killerbees19
Administrator & Rennleitung
Administrator & Rennleitung



OC-Nickname: KB19
Südafrika Team South Africa

Anmeldedatum: 09.05.2006
Geschlecht: Männlich
Alter: 29 Jahre
Beiträge: 13993
Wohnort: Wien

BeitragVerfasst am: 12.06.2009, 21:25    Titel:

https://www.happytec.at/pastebin/view.php?id=188

Das ist jetzt ziemlich unübersichtlich und basiert auf meiner DB Klasse, aber du musst es sowieso anpassen. Jedenfalls gehst du alle Datensätze deiner Tabelle durch, speicherst jede Zeile als Arrayelement in $data ab, sammelt jede ID aus team in $ids und rufst alle Details dann gesammelt ab. Und am Ende erst gehst du data nochmalls durch, als ob du es gerade erst aus der DB liest, hast aber in $subjekte die Details jeder Team-ID (oder User-ID, keine Ahnung).


MfG Christian
_________________
Nach oben
Benutzer-Profile anzeigen killerbees19 ist derzeit offline Spielerprofile bei SC:Special Bewerben anzeigen Private Nachricht senden Website dieses Benutzers besuchen
thoha
Übersetzer
Übersetzer



Anmeldedatum: 07.10.2006
Geschlecht: Männlich
Beiträge: 2591

BeitragVerfasst am: 13.06.2009, 18:00    Titel:

Danke, Christian.

Ich werde den Code mal ein bisschen umbauen und so... melde mich dann wieder
Nach oben
Benutzer-Profile anzeigen thoha ist derzeit offline Spielerprofile bei SC:Special Bewerben anzeigen Private Nachricht senden
thoha
Übersetzer
Übersetzer



Anmeldedatum: 07.10.2006
Geschlecht: Männlich
Beiträge: 2591

BeitragVerfasst am: 20.06.2009, 22:25    Titel:

Hallo Christian

ich bin selbst an deinem Code gescheitert, da hab' ich jetzt selbst versucht, etwas zu basteln:

PHP-Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
$teile 
explode("|"$d['occ_involvedsub']);
$i 0;
while(
$teile)
{

$sql_involved "SELECT sub_id, sub_name, sub_vorname, sub_ceviname, sub_abteilung, sub_alter FROM subjekte WHERE `sub_id` = '".$teile[$i]."'";
$query_involved mysql_query('sql_involved');
$ausgabe_involved mysql_fetch_array($query_involved);
echo 
mysql_error();
echo 
'<tr><td>'.$ausgabe_involved['sub_id'].'</td><td>'.$ausgabe_involved['sub_name'].'</td><td>'.$ausgabe_involved['sub_vorname'].'</td><td>'.$ausgabe_involved['sub_ceviname'].'</td><td>'.$ausgabe_involved['sub_abteilung'].'</td><td>'.$ausgabe_involved['sub_alter'].'</td></tr>';

$i++;
// Ende while
?>


Allerdings bringt mir das Script folgende Fehlermeldung, in einer Endlosschlaufe:
Code:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/convenia/public_html/db/admin/einsatzzentrale/casefile_view.php on line 113
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'sql_involved' at line 1


Kannst du mir sagen, woran das liegt?


Gruss,
Thomas
Nach oben
Benutzer-Profile anzeigen thoha ist derzeit offline Spielerprofile bei SC:Special Bewerben anzeigen Private Nachricht senden
killerbees19
Administrator & Rennleitung
Administrator & Rennleitung



OC-Nickname: KB19
Südafrika Team South Africa

Anmeldedatum: 09.05.2006
Geschlecht: Männlich
Alter: 29 Jahre
Beiträge: 13993
Wohnort: Wien

BeitragVerfasst am: 21.06.2009, 15:45    Titel:

Seih mir jetzt bitte nicht böse, aber ich bin hier nicht der Bughunter für Fehler, die man auf den 1. Blick sieht. Schau doch mal was du überhaupt an MySQL sendest... Rolling Eyes


MfG Christian
_________________
Nach oben
Benutzer-Profile anzeigen killerbees19 ist derzeit offline Spielerprofile bei SC:Special Bewerben anzeigen Private Nachricht senden Website dieses Benutzers besuchen
thoha
Übersetzer
Übersetzer



Anmeldedatum: 07.10.2006
Geschlecht: Männlich
Beiträge: 2591

BeitragVerfasst am: 21.06.2009, 16:58    Titel:

Hallo Christian

Kein Problem - das SQL-Problem habe ich inzwischen behoben (keine Ahnung wie, aber es funktioniert Razz)

Es bleibt aber das Problem der Endlosschlaufe.

Da habe ich auch schon etwas mit count() probiert, um die while-Schlaufe nur so lange ausführen zu lassen, wie Array-Nummern vorhanden sind.

Aber das scheint nicht wirklich zu klappen.

Wie muss meine Bedingung für while lauten, damit die Schlaufe nur solange ausgeführt wird, wie Elemente vorhanden sind?
Nach oben
Benutzer-Profile anzeigen thoha ist derzeit offline Spielerprofile bei SC:Special Bewerben anzeigen Private Nachricht senden
NoMoKeTo
Ehemaliger
Ehemaliger



Anmeldedatum: 13.07.2006
Geschlecht: Männlich
Beiträge: 1019
Wohnort: NRW

BeitragVerfasst am: 21.06.2009, 17:07    Titel:

Was hältste hiervon?

Gruß

NoMoKeTo
_________________
Ich spreche Esperanto und lerne auf diesem Weg tolle Leute kennen - weltweit!

Dieser Beitrag wurde insgesamt 3 mal geändert. Zuletzt von NoMoKeTo.
Nach oben
Benutzer-Profile anzeigen NoMoKeTo ist derzeit offline Private Nachricht senden Website dieses Benutzers besuchen
thoha
Übersetzer
Übersetzer



Anmeldedatum: 07.10.2006
Geschlecht: Männlich
Beiträge: 2591

BeitragVerfasst am: 21.06.2009, 17:58    Titel:

wow, danke NoMoKeTo

ich habe mich noch fast nie mit foreach beschäftigt, deshalb bin ich nicht auf die Idee gekommen;

Herzlichen Dank euch beiden!
Nach oben
Benutzer-Profile anzeigen thoha ist derzeit offline Spielerprofile bei SC:Special Bewerben anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht teilnehmen.
Du kannst Dateien in diesem Forum nicht hochladen.
Du kannst Dateien in diesem Forum nicht herunterladen.

 

Alle Zeiten sind GMT + 2 Stunden (Sommerzeit)
Aktuelles Datum und Uhrzeit: 30.05.2020, 23:48
Nach oben
Valid HTML 4.01 Transitional
Valid CSS!
Software based on work from the phpBB-Group  •  Deutsche Übersetzung von phpBB.de

netcup - Internetdienstleistungen
 
 
[ happytec.at | forum.happytec.at | blog.happytec.at | esports.happytec.at | event.happytec.at ]