Jetzt kostenlos Anmelden!

han solo Männlich

findet sich zurecht

Beiträge: 107

Geschlecht: Männlich

PHPKIT Version: 1.6.03

1

Donnerstag, 17. April 2008, 01:37

Mitglieder werden falsch sortiert

Hola, ich hab mal wieder was...

wenn ich unter Mitglieder die User nach "Mitglied seit" sortiere, zeigt mir die erste Seite auch die neuesten User an, wenn ich dann auf Seite 2 klicke, wird mir wieder die alphapetische Reihenfolge angezeigt. Das komische an der Sache ist, dass ich sicher weiß, dass das früher anders war. An der "login/member.php" hab ich auch - außer den Änderungen lt. Musel - nichts mehr geändert. Allerdings hatten wir einen Serverumzug und ich bin mir nicht sicher, ob ich das seitdem schon mal aufgerufen habe...

hier mal die login/member.php, die o. g. Änderungen sind in Zeile 3, 6, 18 und 45 - wäre schön, wenn jemand nen Tipp für mich hat ;)

PHP-Quelltext

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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
<?php
if (getrights($config['member_infoshow'])=="true") {
 if (isset($_REQUEST['entries'])) $entries=intval($_REQUEST['entries']);
 else $entries=0;
 $epp=$config['member_epp'];
 if (isset($_REQUEST['letter'])) $letter=addslashes($_REQUEST['letter']);

 $phpkit_status=phpkitstatus();
 $total_user=$phpkit_status['user_counter'];

 $i=array($lang['all'],"A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z");
 foreach($i as $h) {
  if ($h==$letter or ($letter=="" && $h==$lang['all'])) {$a[]="<b>("$a[].=")</b>";}
  eval ("\$member_letterlinks.= \"".getTemplate("member_letter_link")."\";");
  unset($a);
  }

  if ($letter!=$lang['all'] && $_REQUEST['letter']!=""$searchstr=" AND user_nick LIKE '".addslashes($letter)."%' ";
 if ($_REQUEST['usernick']!=$lang['search_user']) {
   $usernick=$_REQUEST['usernick'];
   $searchstr.=" AND user_nick LIKE '%".$usernick."%' ";
   $counter=$DB->fetch_array($DB->query("SELECT COUNT(*) FROM ".$db_tab['user']." WHERE user_activate='1' ".$searchstr));
   }
  else unset($usernick);

  if ($entries>$counter[0]) $entries=0;
  $total_side=sidelinkfull($counter[0], $epp$entries"include.php?path=login/member.php&order=".$order."&usernick=".$usernick."&letter=".$letter,"small");
   // *** Punktesystem Pro *** Start ***
  $psp_info $DB->fetch_array($DB->query("SELECT psp_waehrung FROM ".$db_tab['psp_config'].""));
  // *** Punktesystem Pro *** Ende ***
  if (isset($_REQUEST['order'])) {$order=$_REQUEST['order'];}
  if ($order=="os") {$order2="up"$order="logtime DESC";}
  elseif ($order=="osup") {$order="logtime ASC";}
  elseif ($order=="signin") {$order3="up"$order="signin DESC";}
  elseif ($order=="signinup") {$order="signin ASC";}
  // *** Punktesystem Pro *** Start ***
  elseif ($order=="pspin") {$order4="up"$order="psp_punkte DESC";}
  elseif ($order=="pspinup") {$order="psp_punkte ASC";}
  // *** Punktesystem Pro *** Ende ***
  elseif ($order=="nickup") {$order="user_nick DESC";}
  else {$order1="up"$order="user_nick ASC";}

  $getuserinfo=$DB->query("SELECT * FROM ".$db_tab['user']." WHERE user_activate=1 ".$searchstr." ORDER by ".$order." LIMIT ".$entries.", ".$epp);
  while ($userinfo=$DB->fetch_array($getuserinfo)) {
  $userinfo['user_nick']=htmlentities($userinfo['user_nick']);
   $row=rowcolor($row);

   eval ("\$info_nick= \"".getTemplate("member_showprofil_textlink")."\";");

   if ($userinfo['user_sex']=="m") {eval ("\$info_profile= \"".getTemplate("member_showprofil_iconlink_m")."\";");}
   elseif ($userinfo['user_sex']=="w") {eval ("\$info_profile= \"".getTemplate("member_showprofil_iconlink_w")."\";");}
   else {eval ("\$info_profile= \"".getTemplate("member_showprofil_iconlink","")."\";");}

   if ($userinfo['user_hpage']!='') {
    if (strstr(strtolower($userinfo['user_hpage']),'http://')) {$info_link=$userinfo['user_hpage'];}
    else {$info_link='http://'.$userinfo['user_hpage'];}
    eval ("\$info_hpage= \"".getTemplate("member_hpage_iconlink")."\";");
    }
   else {$info_hpage='&nbsp;';}

   if ($userinfo['user_emailshow']==1) {
    if ($config['member_mailer']==1) {eval ("\$info_email= \"".getTemplate("member_email_iconlink2")."\";");}
    else {eval ("\$info_email= \"".getTemplate("member_email_iconlink")."\";");}
    }
   else {$info_email='&nbsp;';}

   if ($userinfo['user_imoption']==1) {eval ("\$info_im= \"".getTemplate("member_sendim_iconlink")."\";");} 
   else {eval ("\$info_im= \"".getTemplate("member_sendim_nolink")."\";");}

   eval ("\$info_buddie= \"".getTemplate("member_buddie_iconlink")."\";");
   
   if (isonline($userinfo['user_id'])) eval ("\$info_os= \"".getTemplate("member_os_online")."\";");
   else eval ("\$info_os= \"".getTemplate("member_os_offline")."\";");
    
   $info_signin=formattime($userinfo['signin'],'','date');
   eval ("\$member_overview_rows.= \"".getTemplate("member_row")."\";");
   }

  include ("login/inc.nav_user.php");
  eval ("\$site_body.= \"".getTemplate("member")."\";");
  }
else {header("location: include.php?event=1&PHPKITSID=".session_id()); exit();}
?>

Von unten sieht Niveau aus wie Arroganz
.
  • Zum Seitenanfang
  • Zum Seitenende

Dirk Kántor Männlich

aká Dooki

Beiträge: 2 073

Geschlecht: Männlich

PHPKIT Version: keine

2

Donnerstag, 17. April 2008, 02:13

vergleich mal die templates.. bzw schau dir den link an der weiterens eiten.. ob deine einstellungen laut adresszeile auch übernommen werden..
:thumbsup:    :thumbsup:       *tc*       :thumbsup:    :thumbsup:
8o           Achtung: Dirk Kántor ist unterwegs!           8o
Er verteilt gerne Verwarnungen ohne vorher darüber diskutiert zu haben.
  • Zum Seitenanfang
  • Zum Seitenende

han solo Männlich

findet sich zurecht

Beiträge: 107

Geschlecht: Männlich

PHPKIT Version: 1.6.03

3

Freitag, 18. April 2008, 00:21

danke erstmal für die Antwort :thumbup: - ich hoffe, ich hab sie auch richtig verstanden...

Also an den templates hab ich nichts verändert, die sind alle seit dem Serverumzug unverändert. Wie gesagt, ich denke, davor hat es auf jeden Fall funktioniert. Die Adresszeile springt nach dem sortieren nach "Mitglied seit" auf:
include.php?path=login/member.php&order=signinup&usernick=&letter=&PHPKITSID=blablabla
wenn ich dann auf "Seite 2" klicke, ändert sich das auf
include.php?path=login/member.php&order=&usernick=&letter=&entries=100&PHPKITSID=blablabla
- also wird die Einstellung wohl nicht übernommen... aber wieso??

Ich bin mir schon im Klaren drüber, dass es möglicherweise eine Kleinigkeit sein kann/ist - mein Verständnis für php ist zwar schon ein bisschen besser geworden, aber eben nur ein bisschen ;-(

Von unten sieht Niveau aus wie Arroganz
.
  • Zum Seitenanfang
  • Zum Seitenende

jerryGFL Männlich

postet ab und an hier

Beiträge: 243

Geschlecht: Männlich

PHPKIT Version: 1.6.1

4

Freitag, 18. April 2008, 00:59

ich habe da eine idee...

ACHTUNG UNGETESTET (backup machen)

In der member.php suche nach:

PHP-Quelltext

1
$total_side=sidelinkfull($counter[0], $epp$entries"include.php?path=login/member.php&order=".$order."&usernick=".$usernick."&letter=".$letter,"small");


Schneide die ganze Zeile aus, und füge sie unter dem folgenden code ein:

PHP-Quelltext

1
2
3
4
5
6
7
if (isset($_REQUEST['order'])) {$order=$_REQUEST['order'];}
  if ($order=="os") {$order2="up"$order="logtime DESC";}
  elseif ($order=="osup") {$order="logtime ASC";}
  elseif ($order=="signin") {$order3="up"$order="signin DESC";}
  elseif ($order=="signinup") {$order="signin ASC";}
  elseif ($order=="nickup") {$order="user_nick DESC";}
  else {$order1="up"$order="user_nick ASC";}


Das ganze sollte in deinem fall dann in etwa so aussehen:

PHP-Quelltext

1
2
3
4
5
6
// *** Punktesystem Pro *** Ende ***
  elseif ($order=="nickup") {$order="user_nick DESC";}
  else {$order1="up"$order="user_nick ASC";}
 $total_side=sidelinkfull($counter[0], $epp$entries"include.php?path=login/member.php&order=".$order."&usernick=".$usernick."&letter=".$letter,"small");

$getuserinfo=$DB->query("SELECT * FROM ".$db_tab['user']." WHERE user_activate=1 ".$searchstr." ORDER by ".$order." LIMIT ".$entries.", ".$epp);


mfg ich hoffe es klappt

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »jerryGFL« (18. April 2008, 01:14)

  • Zum Seitenanfang
  • Zum Seitenende

philosapiens Männlich

Hilfologe

Beiträge: 657

Geschlecht: Männlich

Wohnort: Berlin

PHPKIT Version: 1.6.1

5

Freitag, 18. April 2008, 08:40

Hi,

ob man das mal live sehen dürfte? Haste mal ne Adresse? Deine in dem Profil angegebene scheint es ja nicht zu sein. 8|
Leider nutze ich das phpkit immer weniger und bastele mehr Eigenes: ^^
  • Zum Seitenanfang
  • Zum Seitenende

han solo Männlich

findet sich zurecht

Beiträge: 107

Geschlecht: Männlich

PHPKIT Version: 1.6.03

6

Freitag, 18. April 2008, 08:49

@ jerryGFL: Danke für deine Idee, klappt aber leider nicht

@ philosapiens: hast Post

Von unten sieht Niveau aus wie Arroganz
.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »han solo« (18. April 2008, 08:55)

  • Zum Seitenanfang
  • Zum Seitenende

Dirk Kántor Männlich

aká Dooki

Beiträge: 2 073

Geschlecht: Männlich

PHPKIT Version: keine

7

Freitag, 18. April 2008, 14:18

das mit dem ändern der zeile bewirkt folgendes:
in der adresszeile wird bei order "signinup" übergeben..
machst du die zeile also unter dem anderen code, wird anstatt "signinup" eben "signin ASC" genommen.

siehe:

PHP-Quelltext

1
elseif ($order=="signinup") {$order="signin ASC";}




versuch es so abzuändern:

PHP-Quelltext

1
2
3
4
5
6
7
if ($entries>$counter[0]) $entries=0;
  $total_side=sidelinkfull($counter[0], $epp$entries"include.php?path=login/member.php&order=".$order."&usernick=".$usernick."&letter=".$letter,"small");
   // *** Punktesystem Pro *** Start ***
  $psp_info $DB->fetch_array($DB->query("SELECT psp_waehrung FROM ".$db_tab['psp_config'].""));
  // *** Punktesystem Pro *** Ende ***
  if (isset($_REQUEST['order'])) {$order=$_REQUEST['order'];}
  if ($order=="os") {$order2="up"$order="logtime DESC";}


in das:

PHP-Quelltext

1
2
3
4
5
6
7
8
if ($entries>$counter[0]) $entries=0;
  if (isset($_REQUEST['order'])) {$order=$_REQUEST['order'];} // NEU: $order hier neu eingefügt
  $total_side=sidelinkfull($counter[0], $epp$entries"include.php?path=login/member.php&order=".$order."&usernick=".$usernick."&letter=".$letter,"small");
   // *** Punktesystem Pro *** Start ***
  $psp_info $DB->fetch_array($DB->query("SELECT psp_waehrung FROM ".$db_tab['psp_config'].""));
  // *** Punktesystem Pro *** Ende ***
#  if (isset($_REQUEST['order'])) {$order=$_REQUEST['order'];} // ALT: $order versetzt nach oben
  if ($order=="os") {$order2="up"$order="logtime DESC";}
:thumbsup:    :thumbsup:       *tc*       :thumbsup:    :thumbsup:
8o           Achtung: Dirk Kántor ist unterwegs!           8o
Er verteilt gerne Verwarnungen ohne vorher darüber diskutiert zu haben.
  • Zum Seitenanfang
  • Zum Seitenende

han solo Männlich

findet sich zurecht

Beiträge: 107

Geschlecht: Männlich

PHPKIT Version: 1.6.03

8

Samstag, 19. April 2008, 20:57

Yep, funktioniert, sehr geil, Danke :thumbup:

Jetzt hab ich aber eine Frage:
Wie kann es passieren, dass - aus meiner Sicht - plötzlich ein Fehler auftritt? Kann das am Serverumzug und dem damit verbundenen Wechsel zu php5 liegen?

Von unten sieht Niveau aus wie Arroganz
.
  • Zum Seitenanfang
  • Zum Seitenende