dedlfix: 2 (verschiedene?) Arrays vergleichen

Beitrag lesen

echo $begrüßung;

Wert 1 bekomme ich aus einer DB Abfrage:
$result = $db->query("SELECT groupplayers FROM bb".$n."_ws_groups WHERE groupid = '$ws_groupid'");
//$result['groupplayers ']liefert "1 3 2 14 15" ohne die Anführungszeichen

Mach doch mal Kontrollausgaben mit var_dump(). Daran kann man genauer sehen was Phase ist als mit deinen Umschreibungen. Und wenn du mit dem Ergebnis ein Problem hast, dann nützt auch das SQL-Statement nichts. Man kann das Problem damit nicht nachvollziehen, weil dazu das Tabellenlayout und die Daten fehlen und keiner weiß, was das Objekt $db konkret darstellt, geschweige denn, was die Methode query() so alles anstellt.

Ich nehme an, du bekommst einen String mit Leerzeichen getrennten Zahlen und gemäß deinem Ausgangsposting hantierst du auch mit explode() rum. Hast du geprüft (Kontrollausgabe!), dass das alles das ergibt, was du dir vorgestellt hast?

Wert 2 kommt aus einer 2. DB Abfrage:

$result2 = $db->query_first("SELECT playerid FROM bb".$n."_ws_sessions_player WHERE groupid = '$ws_groupid' AND wssessionid = '$ws_sessionid'");
Wert 2 ist ein Array.

Auch hier ist nicht ersichtlich, wie aus obigem Code ein Array entsteht. Und eigentlich ist das ja auch uninteressant. Wichtig ist nur, dass du dich überzeugt hast, dass Wert 2 auch das ist, was du annimmst.

Ich möchte nun Überprüfen, ob die Zahlen aus Wert 1 ($result) in Wert 2 ($result2) vorkommen. Wenn dem nicht so ist, möchte ich für jeden Wert, der nur in $result vorkommt, in einer 3. Abfrage die zugehörigen Namen auslesen und ausgeben lassen.

Mit einem ordentlich Datenlayout könntest du diese Abfrage gleich im DBMS machen. Mehrere Werte mit Trennzeichen dazwischen in einer Tabellenzelle ist ein ungeeignetes Format, so dass du mit deutlich höherem Aufwand rumhantieren musst.

Ich habe versucht das irgendwie zu lösen indem ich versucht habe Wert 1 in ein array zu wandeln, aber mit wenig erfolg wie zu sehen ist - vllt habe ich ja einen Fehler gemacht...

Sicherlich, nur kann ihn keiner nachvollziehen, wenn du keine nachvollziehbare Beschreibung abgibst. Also gib bitte eine Kontrollausgabe der beiden Werte sowie den Code an, mit dem du die Werte für die dritte Abfrage erstellst.

echo "$verabschiedung $name";