PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Wie kann ich den Ländercode für einzelne User abrufen?



Rallef
20.03.2009, 20:18
Hallo,

ich würde gerne im Adminforce (VMS 1.2) etwas haben, bei dem ich das Ländercode-Addon für einzelne User einsehen kann.

Also z.B. so, dass ich die User-ID und/oder Nickname und/oder Emailadresse etc. eingebe und dann nur für diesen einzelnen User sehen kann, aus welchem Land er die Seite nutzt. Dann brauche ich bei neuen Usern nicht immer die ganze Liste durchrattern lassen.

Wie kann man sowas bewerkstelligen, wenns denn geht?

PS: ich habe hier im Forum mal irgendwo einen Thread gesehen, wie man einzelne Länder beim Ländercode-Addon ausschliessen kann - z.B. alle die, die aus Deutschland kommen (weil bei denen ja alles klar ist). Aber ich finde den Thread nicht mehr - kann mir jemand nen Link dazu geben..?

h-m
21.03.2009, 02:57
Hi Rallef,

.... Dann brauche ich bei neuen Usern nicht immer die ganze Liste durchrattern lassen.

Wie kann man sowas bewerkstelligen, wenns denn geht?
Die Ländercode-Übersicht im Adminforce hat ja schon eine Spalte "Angemeldet". Man könnte die Tabelle einfach nach dieser Spalte sortieren lassen.
Datei '/adminforce/content/usersystem/laendercode.php' öffnen.
Folgendes suchen:

ORDER BY uid ASC");
und hiermit ersetzen:

ORDER BY ".$db_prefix."_userdaten.angemeldet_seit DESC");


PS: ich habe hier im Forum mal irgendwo einen Thread gesehen .....
Aber ich finde den Thread nicht mehr - kann mir jemand nen Link dazu geben..?
War vielleicht dieser? .. http://www.designerscripte.net/showthread.php?t=8182
Gruß, h-m

Rallef
29.06.2009, 11:03
Hi, (nach längerer Zeit)

danke für den Tip, aber das war nicht, was ich gemeint hab.

Ich möchte mir ja gerade nicht die ganze Liste anzeigen lassen sondern nur das Land für einen einzigen User.

Vielleicht könnte man es irgendwie machen, dass im Adminforce bei der userbearbeiten.php das jeweilige Land des gerade geöffneten Users mit angezeigt wird - wie könnte man das denn machen?

breaker
29.06.2009, 11:19
Schau dir mal dieses Script im Adminbereich an ;)

http://country.wittesoft.de

Rallef
29.06.2009, 12:03
Jo sieht ganz gut aus. Ist halt für Mailtauscher - und von einzelnen Usern das Land aufrufen kann ich da auch nicht - auch nur alle oder gar nicht.

jpwfour
29.06.2009, 13:33
Du kannst ja in der Userbearbeiten auf den Eintrag in der Tabelle vms_kontodaten Spalte login_ip zugreifen.


$land = mysql_fetch_array(db_query("SELECT * FROM laendercode WHERE IP_FROM<=inet_aton('".$alledaten['login_ip']."') AND IP_TO>=inet_aton('".$alledaten['login_ip']."');"));


Ich mein die Variable heißt $alledaten, bin mir aber nicht sicher.

Dann halt an beliebiger Stelle $land['land'] ausgeben lassen.

Optimalerweise noch Weiche einbauen, wenn User noch nie eingeloggt (login_ip ist dann leer) oder wenn sein Land nicht erkannt wurde, dann bspw. einen Link zu

http://www.utrace.de/?query=IP.IP.IP.IP

oder

http://www.ip-adress.com/ip_lokalisieren/IP.IP.IP.IP

anzeigen lassen, da diese beiden Anbieter denke ich andere Datenbanken nutzen.

Rallef
29.06.2009, 13:50
Jawollja so funktioniert das :smile:

Wie würde das denn gehen, dass wenn kein Land vorhanden ist, ich dann diese Links alternativ angezeigt bekommen kann?

jpwfour
29.06.2009, 15:09
Also für noch nicht eingeloggt:


if($alledaten['login_ip']==""){
echo 'Noch nicht eingeloggt.';
}else{
//.....
}


if($land['land']==''){
//links hier rein
}else{
//land ausgeben
}

breaker
02.07.2009, 11:12
Jo sieht ganz gut aus. Ist halt für Mailtauscher - und von einzelnen Usern das Land aufrufen kann ich da auch nicht - auch nur alle oder gar nicht.

Wenn du mal im Admin nach schaust, werden von jedem User die letzten 10 Länder gelogt, über welcher er sich am Script angemeldet hat ;)