News - Features - Downloads - Forum - Team - Support - Switch View: Screen
Login - Registrierung - Passwort vergessen

Antworten: 12
Seite [1]
Tress13


Highlander




Herkunft: Lüdenscheid
Beiträge: 3048
# Thema - 09.01.2015 um 15:36 Uhr
Ich hab mir mal eine Beitrittsübersicht gebastelt. Dort kann man sehen, wann der jeweilige Benutzer dazu gekommen ist. Das funktioniert soweit auch schon ganz gut. Nur würde ich dies gerne noch um die Umblätterfunktion (head_pages) erweitern und alle Benutzer dort auflisten und nicht, wie bisher nur 16.


last.tpl
 
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
1. / 2. / ... 
 <table class="forum" cellpadding="0" cellspacing="{page:cellspacing}" style="width:{page:width}">
  <
tr>
    <
td class="headb" colspan="2">{lang:new_user}</td>
  </
tr>
  <
tr>
    <
td class="leftc">{lang:new_users_info}</td>
    <
td class="rightb">{head:pages}</td>
  </
tr>
</
table>

<
table class="forum" cellpadding="0" cellspacing="{page:cellspacing}" style="width:{page:width}">
  <
tr>
    <
td class="headb">{lang:users}</td>
    <
td class="headb">{lang:joined}</td>
  </
tr>
  {
loop:users}
  <
tr>
    <
td class="leftc">{users:country} {users:user}</td>
    <
td class="leftc">{users:register}</td>
  </
tr>
  {
stop:users}
</
table>


last.php
 
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
1. / 2. / ... 
<?php
// ClanSphere 2010 - www.clansphere.net
// $Id$

$cs_lang cs_translate('users');
$select 'users_id, users_country, users_nick, users_register, users_active';
$order 'users_register DESC';
$cs_users cs_sql_select(__FILE__,'users',$select,"users_active = '1'",$order,0,16);
$data = array();

if(empty(
$cs_users)) {
  echo 
$cs_lang['no_data'];
}
else {
  
$count_users count($cs_users);
  for (
$run 0$run $count_users$run++) {
      
$data['users'][$run]['register'] = cs_date('unix',$cs_users[$run]['users_register'],1);
      
$data['users'][$run]['country'] = cs_html_img('symbols/countries/' $cs_users[$run]['users_country'] . '.png');
      
$data['users'][$run]['user'] = cs_user($cs_users[$run]['users_id'], $cs_users[$run]['users_nick'], $cs_users[$run]['users_active']);
  }
  echo 
cs_subtemplate(__FILE__,$data,'users','last');
}



Einen Link zur LiveView gibt es auch: http://www.iv-gaming.de/index.php?mod=users&action=last



Könnte mir dabei vlt jemand behilflich sein?


------------------


www.iv-gaming.de | www.iv-artwork.de
Inaktiv
sgraewe ClanSphere Team

Supporter
Supporter




Beiträge: 6116
# Antwort: 1 - 09.01.2015 um 17:19 Uhr
Warum nimmst du nicht einfach die users/list und passt die an?


Inaktiv
|
Tress13
Thread-Ersteller


Highlander




Herkunft: Lüdenscheid
Beiträge: 3048
# Antwort: 2 - 09.01.2015 um 17:26 Uhr
Weil meine Fähigkeiten des Anpassens doch sehr fragwürdig sind.
Bin ja froh, dass ich mir die navlast soweit zurechtfuckeln konnte.

Ist das denn so ein Aufwand mit den head_pages?


------------------


www.iv-gaming.de | www.iv-artwork.de

Inaktiv
|
Tress13
Thread-Ersteller


Highlander




Herkunft: Lüdenscheid
Beiträge: 3048
# Antwort: 3 - 11.01.2015 um 11:51 Uhr
Dürfte ich nochmal nachfragen, wie ich sowas am besten umsetzen könnte.
Die last-Erweiterung könnte man ja auch zusätzlich in die users_list einbauen.
Ich hab das für mich ja auch schon so geregelt.

http://www.iv-gaming.de/index.php?mod=users&action=list


------------------


www.iv-gaming.de | www.iv-artwork.de

Inaktiv
|
sgraewe ClanSphere Team

Supporter
Supporter




Beiträge: 6116
# Antwort: 4 - 11.01.2015 um 12:54 Uhr
ich würde einfach die list.php kopieren und dort halt das join datum ausgeben lassen, den rest kann man ja löschen. da haste dann halt direkt seiten etc. dabei


Inaktiv
|
Tress13
Thread-Ersteller


Highlander




Herkunft: Lüdenscheid
Beiträge: 3048
# Antwort: 5 - 11.01.2015 um 14:11 Uhr
Hui... ich hatte es jetzt mal so versucht, wie du es mir angeraten hattest.
Und es scheint sogar zu funktionieren. Und Error-Logs gibt es auch keine.



Aber könntet ihr vlt nochmal einen Blick auf den Code werfen.
Einfach nur zur Kontrolle und damit nichts mehr drin ist, was nicht unbedingt benötigt wird.

last.php
 
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.
1. / 2. / ... 
<?php
// ClanSphere 2009 - www.clansphere.net
// $Id: list.php 2266 2009-03-21 10:37:39Z duRiel $

$cs_lang cs_translate('users');
$where = empty($_REQUEST['where']) ? $_REQUEST['where'];
$order 'users_register DESC';
$mof = empty($where) ? '' " AND users_nick LIKE '" cs_sql_escape($where) . "%'";
$condition 'users_delete = 0 AND users_active = 1' $mof;
$users_count cs_sql_count(__FILE__,'users',$condition);
$start = empty($_REQUEST['start']) ? $_REQUEST['start'];

  
$data['head']['mod'] = $cs_lang['mod_name'];
  
$data['head']['action'] = $cs_lang['list'];
  
$data['head']['pages'] = cs_pages('users','last',$users_count,$start,$where);

  
$data['lang']['show'] = $cs_lang['show'];
  
$data['lang']['country'] = $cs_lang['country'];
  
$data['lang']['nick'] = $cs_lang['nick'];
  
$data['lang']['page'] = $cs_lang['page'];
  
$data['lang']['all'] = $cs_lang['all'];     

$select 'users_id, users_nick, users_country, users_hidden, users_active, users_invisible, access_id, users_register';
$cs_users cs_sql_select(__FILE__,'users',$select,$condition,$order,$start,$account['users_limit']);
$users_loop count($cs_users);

for(
$run=0$run<$users_loop$run++) {
  
$cs_users_access cs_sql_select(__FILE__'access''access_id, access_name'"access_id = " $cs_users[$run]['access_id'], 001);
  
$cs_users[$run]['access_name'] = $cs_users_access['access_name'];
  
  
$cs_users[$run]['country'] = cs_html_img('symbols/countries/' $cs_users[$run]['users_country'] . '.png');
  
$cs_users[$run]['users_id'] = cs_secure($cs_users[$run]['users_id']);
  
$cs_users[$run]['nick'] = cs_user($cs_users[$run]['users_id'], $cs_users[$run]['users_nick'], $cs_users[$run]['users_active']);
  
$hidden explode(',',$cs_users[$run]['users_hidden']);
  
  
$cs_users[$run]['register'] = cs_date('unix',$cs_users[$run]['users_register'],1);
}

  
$data['users'] = $cs_users;
  echo 
cs_subtemplate(__FILE__,$data,'users','last');

?>


------------------


www.iv-gaming.de | www.iv-artwork.de

Zuletzt editiert von Tress13 am 11.01.2015 um 14:12 Uhr (1x Editiert)
Inaktiv
|
Tom08 ClanSphere Team

Supporter
Supporter



Herkunft: Daheim
Beiträge: 2923
# Antwort: 6 - 11.01.2015 um 18:10 Uhr
// ClanSphere 2009 - www.clansphere.net
// $Id: list.php 2266 2009-03-21 10:37:39Z duRiel $

???
An sich hat sich an der Datei vemrutlich nicht viel verändert, aber SVN und solche Informationen sind schon seit Jahren nicht mehr in den Dateien ... s. z.B. https://github.com/ClanSphere/ClanSphere/blob/master/mods/users/list.php

An sich solltest du dir die $data['lang'][...] alle sparen können, du weißt denen ja nur genau das zu, was auch so in den Sprachvariablen steht.

Den Closing-Tag (?>) am Ende der Datei kannst du dir sparen.

Du baust dir ein Array auf mit allen Feldern die versteckt sind, nutzt es aber gar nicht. Dementsprechend kannst du dir im Query dann auch das users_hidden sparen.
 
1.
1. / 2. / ... 
    $hidden explode(',',$cs_users[$run]['users_hidden']);


Wofür fragst du user_invisible ab? Das nutzt du im folgenden Query auch nicht, brauchst du das im Template?

Den Query nach dem Access-Name würde ich mit nem Join machen (ist jetzt ungetestet, nur eben runtergescrieben):
 
1.
2.
3.
1. / 2. / ... 
 $select 'users_id, users_nick, users_country, users_hidden, users_active, users_invisible, usr.access_id AS access_id, access_name, users_register';
$from 'users usr LEFT JOIN {pre}_access acs ON usr.access_id = acs.access_id';
$cs_users cs_sql_select(__FILE__,$from,$select,$condition,$order,$start,$account['users_limit']);
, dann kannst du dir folgendes sparen:
 
1.
1. / 2. / ... 
    $cs_users[$run]['access_name'] = $cs_users_access['access_name'];


Warum das user_id in einem cs_secure steht (auch in der original list), kann ich gerade nicht nachvollziehen. Das ist ein int, weiß nicht, warum man das macht. M.E. überflüssig, aber naja .. ist im Original auch so, kannst du so lassen.

Grüße


------------------
Bei Problemen mit Code von mir bitte eine Private Nachricht an mich


Zuletzt editiert von Tom08 ClanSphere Team am 11.01.2015 um 18:12 Uhr (1x Editiert)
Inaktiv
|
Tress13
Thread-Ersteller


Highlander




Herkunft: Lüdenscheid
Beiträge: 3048
# Antwort: 7 - 11.01.2015 um 18:55 Uhr
Tom, vielen Dank!

Aber kann users_invisible aus dem...
 
1.
1. / 2. / ... 
  $select 'users_id, users_nick, users_country, users_hidden, users_active, users_invisible, usr.access_id AS access_id, access_name, users_register';

...nicht auch noch entfernt werden, oder brauch ich das noch?


------------------


www.iv-gaming.de | www.iv-artwork.de

Inaktiv
|
Tom08 ClanSphere Team

Supporter
Supporter



Herkunft: Daheim
Beiträge: 2923
# Antwort: 8 - 11.01.2015 um 19:26 Uhr
Wofür fragst du user_invisible ab? Das nutzt du im folgenden Query auch nicht, brauchst du das im Template?


Wenn du das da nicht im Template brauchst, kannst du das da rauslöschen (:

Grüße


------------------
Bei Problemen mit Code von mir bitte eine Private Nachricht an mich


Inaktiv
|
Tress13
Thread-Ersteller


Highlander




Herkunft: Lüdenscheid
Beiträge: 3048
# Antwort: 9 - 11.01.2015 um 20:02 Uhr
Demnach users_hidden doch auch?
Was ist eigentlich ein Query?^^


------------------


www.iv-gaming.de | www.iv-artwork.de

Inaktiv
|
Deaktiviert

Supporter
Supporter



Beiträge: 1287
# Antwort: 10 - 11.01.2015 um 20:18 Uhr
Ein Query ist der Begriff für eine Datenbank Abfrage, welche aus mehreren Teilen besteht. Sie bestimmt was asugewählt wird aus welchen Tabellen unter welchen Bedingungen, welcher Sortierung etc.


Inaktiv
|
Tom08 ClanSphere Team

Supporter
Supporter



Herkunft: Daheim
Beiträge: 2923
# Antwort: 11 - 11.01.2015 um 20:34 Uhr
Also in deinem oben geposteten Beispiel dann Z. 23 und 24. Dort steht in der ersten Zeile ja, welche Felder aus der Datenbank du alle abfragst und in der zweiten Zeile folgt dann der Aufruf von cs_sql_select(), mit einigen weiteren Parametern wie den Tabellen, aus denen du die Felder holst, den Bedingungen (where), Sortierung (order) etc.

Mit Query ist da das ganze gemeint. Wenn ich also schreibe, du kannst dir Feld xxx im Query sparen, dann heißt das, dass du das nicht mit abfragen brauchst und somit in dem $select das Feld dann entfernen. Somit ist dein Ergebnis um dieses Feld reduziert.

Grüße


------------------
Bei Problemen mit Code von mir bitte eine Private Nachricht an mich


Inaktiv
|
Tress13
Thread-Ersteller


Highlander




Herkunft: Lüdenscheid
Beiträge: 3048
# Antwort: 12 - 11.01.2015 um 22:02 Uhr
Achso läuft der Hase. Danke für die Erklärung.
Viel lernen ich noch muss.


------------------


www.iv-gaming.de | www.iv-artwork.de

Zuletzt editiert von Tress13 am 11.01.2015 um 22:03 Uhr (1x Editiert)
Inaktiv
|
Antworten: 12
Seite [1]


Sie müssen sich registrieren, um zu antworten.


ClanSphere Project - Mailus - Imprint - Disclaimer - Scriptinfo