Profile durchblättern

Neue Projekte und Anfragen, Teamarbeiten und Alpha/Beta Scripte jeder Art.
KEINE Supportanfragen zu bestehenden MODs!
Antworten
Holger
Beiträge: 2253
Registriert: Mi 17.Mär, 2004 18:09

Profile durchblättern

Beitrag von Holger »

Hallo,

ich vermisse in der Profilansicht zwei Buttons för "vorheriges Profil" und "nächstes Profil".
Wäre es schwer sowas zu machen?

Gruss
Holger
Benutzeravatar
oxpus
Administrator
Beiträge: 28737
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

???
Wie jetzt im Profil blättern?
Vor allem "vermisst"...

Öh, ja, ähnlich umfangreich, wie in der Themenansicht letzter/nächster Post, wobei die Abfrage sicher ein Stück einfacher gehalten werden könnte.

*wiedereinmalerstauntüberdeninhaltdieseranfrageist*
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Holger
Beiträge: 2253
Registriert: Mi 17.Mär, 2004 18:09

Beitrag von Holger »

Äh, ja, vermisst halt!
Es gibt die Möglichkeit nicht.
Wenn ich mir ein Profil anschaue, dann muss ich die User-ID in der URL händisch ändern um das vorhergehende Profil zu sehen.
Dazu muss ich sagen: ich habe einen MOD eingebaut, der inaktive Accounts ausblendet. Deshalb kann ich das Ganze nicht über die Memberlist abfackeln.
Zuletzt geändert von Holger am Mi 18.Jul, 2007 17:09, insgesamt 1-mal geändert.
Benutzeravatar
oxpus
Administrator
Beiträge: 28737
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Ich gebe Dir mal einen Tipp zur Vorgehensweise:
Die Abfragen müssten so lauten:

Code: Alles auswählen

$sql = "SELECT user_id FROM " . USERS_TABLE . "
	WHERE user_id < " . (int) $HTTP_GET_VARS[POST_USERS_URL] . "
		AND user_id > " . ANONYMOUS . "
		AND user_active = " . true . "
	ORDER BY user_id DESC
	LIMIT 1";
if (!($result = $db->sql_query($sql)))
{
	message_die(GENERAL_MESSAGE, $lang['No_user_id_specified']);
}

$found_user = $db_numrows($result);
if ($found_user)
{
	$template->assign_vars(array(
		'L_PREV_USER' => $lang['definiere_text_für_vorheriges_profil'],
		'U_PREV_USER' => append_sid("profile.$phpEx?mode=viewprofile&".POST_USER_URL."=".$row['user_id']))
	);
}
$db_>sql_freeresult($result);

$sql = "SELECT user_id FROM " . USERS_TABLE . "
	WHERE user_id > " . (int) $HTTP_GET_VARS[POST_USERS_URL] . "
		AND user_active = " . true . "
	ORDER BY user_id ASC
	LIMIT 1";
if (!($result = $db->sql_query($sql)))
{
	message_die(GENERAL_MESSAGE, $lang['No_user_id_specified']);
}

$found_user = $db_numrows($result);
if ($found_user)
{
	$template->assign_vars(array(
		'L_NEXT_USER' => $lang['definiere_text_für_nächstes_profil'],
		'U_NEXT_USER' => append_sid("profile.$phpEx?mode=viewprofile&".POST_USER_URL."=".$row['user_id']))
	);
}
$db_>sql_freeresult($result);
Dann noch die Texte definieren, die Werte ins Template packen (L_..._USER und U_..._USER) und fertig wäre das eigentlich schon...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Holger
Beiträge: 2253
Registriert: Mi 17.Mär, 2004 18:09

Beitrag von Holger »

Danke!
Real men don’t back up, they learn data recovery. ;-)
http://www.mysqldumper.de
http://www.mysqldumper.se
Holger
Beiträge: 2253
Registriert: Mi 17.Mär, 2004 18:09

Beitrag von Holger »

Macht es Sinn, den Code vor

Code: Alles auswählen

//
// Start of program proper
//
einzufügen?
Real men don’t back up, they learn data recovery. ;-)
http://www.mysqldumper.de
http://www.mysqldumper.se
Benutzeravatar
oxpus
Administrator
Beiträge: 28737
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Hauptsache vor $template->assign_vars(array( ;)
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Holger
Beiträge: 2253
Registriert: Mi 17.Mär, 2004 18:09

Beitrag von Holger »

Gibt es in profile.php nicht! :-(
Real men don’t back up, they learn data recovery. ;-)
http://www.mysqldumper.de
http://www.mysqldumper.se
Benutzeravatar
Christian_N
Beiträge: 1787
Registriert: Sa 19.Feb, 2005 21:48
Wohnort: Frankfurt am Main
Kontaktdaten:

Beitrag von Christian_N »

Wenn es die Profilansicht betrifft dann ist es in der Regel auch die includes/usercp_viewprofile.php und in dieser müsste die genannte Suchstelle von Oxpus jedenfalls sein :)

Gruß Chris
Meine Projekte: Chantals - Fanpage .::. phpBB Projekt
Benutzeravatar
oxpus
Administrator
Beiträge: 28737
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Ja, nur in der usercp_viewprofile.php!
Die profile.php ist "nur" eine Hülse für das User-Panel!
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Holger
Beiträge: 2253
Registriert: Mi 17.Mär, 2004 18:09

Beitrag von Holger »

Danke! Habe ich jetzt gemerkt! :!:
Real men don’t back up, they learn data recovery. ;-)
http://www.mysqldumper.de
http://www.mysqldumper.se
michael5
Beiträge: 28
Registriert: Do 09.Mär, 2006 10:58

Beitrag von michael5 »

Hallo Karsten,
hallo zusammen,

das Blättern in Profilen finde ich auch sehr gut.

Nur bei klappt es bei mir nicht.
Es erscheint eine Fehlermeldung in der Zeile 640: $found_user = $db_numrows($result):

Fatal error: Function name must be a string in includes/usercp_viewprofile.php on line 640

habe im Internet andere Seiten gesehen die das "$" - Zeichen n i c h t vor db_numrows(...) haben und es hier mal entfernt, bekomme dann aber eine andere Fehlermeldung:

Fatal error: Call to undefined function db_numrows() in includes/usercp_viewprofile.php on line 640

Vielleicht liegt es an meiner neuen PHP Version 5.2.3 ???

Vielen Dank für die Hilfe!
Gruß Michael
Benutzeravatar
oxpus
Administrator
Beiträge: 28737
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Die Zeile muss

Code: Alles auswählen

$found_user = $db->sql_numrows($result);
lauten.
Dann klappt es auch wieder mit dem Nachbarn.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
michael5
Beiträge: 28
Registriert: Do 09.Mär, 2006 10:58

Error Meldung jetzt weg ...

Beitrag von michael5 »

Hallo Karsten,

Vielen Dank für die schnelle Antwort!

Klasse, es funktioniert jetzt mit

$found_user = $db->sql_numrows($result);)

ABER hat $row['user_id'] keinen Wert ( "" - leer! )

Die href-Anweisung lautet immer bei vorherig + nächster:
http://...profile.$phpEx?mode=viewprofile&POST_USER_URL=

(als Anlage meine includes/usercp_viewtopic.php)
schaue im Moment aber selbst nochmal nach!

oder liegt es am template?
<td><a href="{U_NEXT_USER}" class="nav">{L_NEXT_USER}</a></td>
<td><a href="{U_PREV_USER}" class="nav">{L_PREV_USER}</a></td>


P.S: Hatte nach der "Nachbar"-Änderung eine andere Fehlermeldung.
In Deinem Script ist ein Unterstrich ansatt ein Bindestrich:
$db_>sql_freeresult($result);
$db->sql_freeresult($result); so müsste es doch heissen?!

Versteh' nicht warum es bei den anderen läuft?

Vielen Dank!
Gruß Michael


NACHTRAG:
habe mir die werte ausgeben lassen
userID:
Founduser: 1


vielleicht beisst es sich mit den schon eingbauten mod ( row[user_id] bereits auf EOF! )
davor - Zeile 123:

Code: Alles auswählen

//
// Retrieve the number of views
//
$sql = "SELECT user_profile_views
	FROM " . USERS_TABLE . "
	WHERE user_id = " . $profiledata['user_id'];
if ( !($result = $db->sql_query($sql)) )
{
	message_die(GENERAL_ERROR, 'Could not retreive profile views', '', __LINE__, __FILE__, $sql);
}
$row = $db->sql_fetchrow($result);
$total_profile_views =  ( $row['user_profile_views'] ) ? $row['user_profile_views'] : 0;
$db->sql_freeresult($result);
// Profile views MOD, By Manipe (End)
kann man auch anstatt row['user_id'] auch $userdata['user_id'] dafür missbrauchen?
Dateianhänge
usercp_viewprofile.zip
(34.83 KiB) 288-mal heruntergeladen
Zuletzt geändert von michael5 am So 26.Aug, 2007 14:59, insgesamt 4-mal geändert.
Benutzeravatar
oxpus
Administrator
Beiträge: 28737
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Öhm, sorry, aber ich muss Deinen Fluss hier mal unterbrechen:

Das Script, was ich gepostet hatte, war alles andere als fertig und nur eine grobe Vorgabe!
Wenn Holger das bei sich hin bekommen hat, kann er hier auch sicher weiter helfen, ich hatte ihm hier nur eine Vorlage geliefert, um den eigenen Lerneffekt zu erhöhen...

Bitte nicht immer alles sofort umsetzen, solange ein kompletter MOD gepostet wurde.
Ist eben sonst alles nur eine reine Gedankenhülse.
Und um weitere Verwirrungen zu vermeiden, werde ich das Topic jetzt mal verschieben.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
michael5
Beiträge: 28
Registriert: Do 09.Mär, 2006 10:58

Beitrag von michael5 »

Ist OK! Trotzdem vielen Dank für Deine Hilfe!

Gruß Michael
Holger
Beiträge: 2253
Registriert: Mi 17.Mär, 2004 18:09

Beitrag von Holger »

Langsam, langsam, bin gerade erst aus dem Urlaub zurück ... setze mich die Tage mal dran und versuche es.
Aber erstmal ist ein Update vom Download Mod und UPI2DB dran.
Real men don’t back up, they learn data recovery. ;-)
http://www.mysqldumper.de
http://www.mysqldumper.se
Antworten