php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Bewertung: Bewertung: 1 Stimmen, 5,00 durchschnittlich.
  #1 (permalink)  
Alt 22-10-2010, 16:22
DonnyDarko
 Registrierter Benutzer
Links : Onlinestatus : DonnyDarko ist offline
Registriert seit: Sep 2010
Beiträge: 8
DonnyDarko befindet sich auf einem aufstrebenden Ast
Angry Left Join - Array liefet andere Werte als in phpmyadmin

Hallo liebe com,

ich steh seit gestern vor dem Join Thema,
habe eine admin_log Tabelle und eine member Tabelle

in der adminl_log speichere ich folgendes ab:

| al_date | al_ip | al_member_id | al_admin_id | al_action |al_block_reason|

Meine Abfrage
PHP-Code:
select AL.*, M.m_usernameM.m_lastnameM.m_surnameA.m_usernameA.m_surnameA.m_lastname from `admin_log` as AL 
    left join 
`members` as M on (M.id AL.al_member_id
    
left join `members` as A on (A.id AL.al_admin_id
array wirft mir das aus....

[0] => Array
(
[al_date] => 1287592347
[al_ip] => 86.32.*.*
[al_member_id] => 2
[al_admin_id] => 1
[al_action] => User gesperrt
[al_block_reason] => 0
[al_func] => 1
[m_username] => username
[m_lastname] => Nachname
[m_surname] => Vorname
)
so wie kann ich es anstellen das mir das array beide namen ausgibt also das von dem User (al_member_id) und von den ausführenden Admin (al_admin_id)... im PHP Admin gibt er mir beide Namen zurück nur in PHP nicht -.-

wo liegt den mein gedanken fehler oder wie kann ich es anstellen das er mir beide namen auswirft und wie spreche ich die dann an?.

Kann mir bitte irgendwer das Brett vor meinen Kopf wegmachen??^^
Mit Zitat antworten
  #2 (permalink)  
Alt 22-10-2010, 16:52
Benutzerbild von onemorenerd onemorenerd
  Moderator
Links : Onlinestatus : onemorenerd ist offline
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.471
onemorenerd wird schon bald berühmt werdenonemorenerd wird schon bald berühmt werden
Standard

Führe die vermissten Spalten mal explizit im SELECT-Teil auf.

Wieso präfixt du alle Spalten in einer Tabelle mit a_ bzw. m_? Das bringt doch nichts, macht nur die SQL-Queries schwer lesbar und führt zu häßlichen Arraykeys. Und wieso brichst du diese Konvention bei den id-Spalten?

Warum joinst du die Member-Tabelle zweimal dazu? Was genau willst du mit dieser Query erhalten?
Mit Zitat antworten
  #3 (permalink)  
Alt 22-10-2010, 17:01
DonnyDarko
 Registrierter Benutzer
Links : Onlinestatus : DonnyDarko ist offline
Registriert seit: Sep 2010
Beiträge: 8
DonnyDarko befindet sich auf einem aufstrebenden Ast
Standard

ich habe im Log ja nur die IDs (al_member_id | al_admin_id) stehen und wollte damit die dazugehörigen namen mir holen und dachte das ich das so trennen muss -.-
Mit Zitat antworten
  #4 (permalink)  
Alt 22-10-2010, 17:05
Benutzerbild von onemorenerd onemorenerd
  Moderator
Links : Onlinestatus : onemorenerd ist offline
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.471
onemorenerd wird schon bald berühmt werdenonemorenerd wird schon bald berühmt werden
Standard

Das hilft mir nicht weiter. Ich weiß nicht was du für ein Log meinst. Ist aber auch egal. Irgendwoher hast du IDs von Benutzern und Admins. Zu diesen IDs möchtest du die Namen aus der Datenbank holen. Soweit hab ich es begriffen.
Aber warum brauchst du dafür JOIN?

Bitte beschreibe dein Vorhaben mal verständlich, damit das große Fragezeichen aus meinen Kopf verschwindet.
Mit Zitat antworten
  #5 (permalink)  
Alt 22-10-2010, 17:05
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Hallo,

du musst diese Spaltenreferenzen aliasen, denn wenn du es mit PHP als assoziatives Array abrufst, bekommst du sonst nur den ersten Spaltennamen von zwei gleichen.

Wenn du also sowas wie
Code:
select M.m_username as member_username, A.m_username as admin_username, ...
selektierst, hast du auch beide Aliasse als Schlüssel im Array drin.

Gruß,

Amica
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt?
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke!
Mit Zitat antworten
  #6 (permalink)  
Alt 22-10-2010, 17:11
DonnyDarko
 Registrierter Benutzer
Links : Onlinestatus : DonnyDarko ist offline
Registriert seit: Sep 2010
Beiträge: 8
DonnyDarko befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von onemorenerd Beitrag anzeigen
Das hilft mir nicht weiter. Ich weiß nicht was du für ein Log meinst. Ist aber auch egal. Irgendwoher hast du IDs von Benutzern und Admins. Zu diesen IDs möchtest du die Namen aus der Datenbank holen. Soweit hab ich es begriffen.
Aber warum brauchst du dafür JOIN?

Bitte beschreibe dein Vorhaben mal verständlich, damit das große Fragezeichen aus meinen Kopf verschwindet.
in der Datenbank ist eine Log die mir die aktivitäten der Admins mitloggt und ich wollte nicht immer die Namen mitspeichern falls jemand seinen Nick ändert das dieser dann auch angezeigt wird und nicht die alten stehen. ....
admin_id und member_id
Mit Zitat antworten
  #7 (permalink)  
Alt 22-10-2010, 17:16
DonnyDarko
 Registrierter Benutzer
Links : Onlinestatus : DonnyDarko ist offline
Registriert seit: Sep 2010
Beiträge: 8
DonnyDarko befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von AmicaNoctis Beitrag anzeigen
Hallo,

du musst diese Spaltenreferenzen aliasen, denn wenn du es mit PHP als assoziatives Array abrufst, bekommst du sonst nur den ersten Spaltennamen von zwei gleichen.

Wenn du also sowas wie
Code:
select M.m_username as member_username, A.m_username as admin_username, ...
selektierst, hast du auch beide Aliasse als Schlüssel im Array drin.

Gruß,

Amica

Vielen Dank so klappt es wunderbar
Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
left join, php


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
LEFT JOIN ohne JOIN prego SQL / Datenbanken 10 19-11-2009 11:21
[LEFT JOIN] Weiteres Left Join Anhängen mit Sortierfunktion Laire SQL / Datenbanken 3 11-01-2008 09:38
left join tsaenger SQL / Datenbanken 1 19-10-2003 19:42
array andere werte zuweisen tomstig PHP Developer Forum 5 19-10-2003 19:06
left join Kropff SQL / Datenbanken 3 26-05-2002 00:13

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre 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


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

ebiz-trader 6.0 - Das professionelle PHP Marktplatz Script ansehen ebiz-trader 6.0 - Das professionelle PHP Marktplatz Script

Mit unserer Lösungen können Sie nahezu jeden B2B / B2C Marktplatz betreiben den Sie sich vorstellen können. Ganz egal ob Sie einen Automarktplatz, Immobilenportal oder einfach einen Anzeigenmarkt betreiben möchten. Mit ebiz-trader können Sie Ihre Anforder

11.10.2018 Berni | Kategorie: PHP/ Anzeigenmarkt
PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
PHP WEB STATISTIK ansehen PHP WEB STATISTIK

Die PHP Web Statistik bietet Ihnen ein einfach zu konfigurierendes Script zur Aufzeichnung und grafischen und textuellen Auswertung der Besuchern Ihrer Webseite. Folgende zeitlichen Module sind verfügbar: Jahr, Monat, Tag, Wochentag, Stunde Folgende son

28.08.2018 phpwebstat | Kategorie: PHP/ Counter
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 10:45 Uhr.