Seite 1 von 1

ERLEDIGT!!! Memberliste änderungen

Verfasst: 30.12.2007 14:50
von coffeefish
hallo an alle,

habe eine frage:

würde gerne in der memberliste ein paar änderungen vornehmen - also welche felder alle aus dem profil angezeigt werden (zb statt Wohnort Interessen oder ähnliches)
das ganze müsste ja nur eine kleine änderung sein?! aber ich weiss nicht in welcher file ich das ändern soll?? wäre super wenn mir da wer helfen könnte!!!

weiters hätte ich gerne, dass bei website statt dem button wirklich die url dort steht - kann mir da wer helfen? ich habe nämlich website in telefonnummer geändert - aber irgendwie liegt da schon in der datenbank ein fehler vor, denn ich kann die nummern nichtmal in der datenbank eingeben - er übernimmt sie einfach nicht... wäre super wenn mir da wer helfen könnte!

DANK!

glg
coffeefish

Verfasst: 30.12.2007 21:22
von Boecki91
Eigentlich ganz leicht, :D
zuerst schaust du dir mit phpmyadmin die Tabelle phpbb_users an und merkst dir wie die gewünschte Spalte heist. (Da ich momentan kein phpBB2 installiert habe kann ich das nicht für dich herrausfinden, ich vermute es heist user_interests)

Dann öffne die Datei memberlist.php
Suche nach

Code: Alles auswählen

$sql = "SELECT username, user_id, user_viewemail, user_posts, user_regdate, user_from, user_website, user_email, user_icq, user_aim, user_yim, user_msnm, user_avatar, user_avatar_type, user_allowavatar
nach

Code: Alles auswählen

user_allowavatar
Fügst du hinzu:

Code: Alles auswählen

, user_DASFELD
Achte auf das Komma und ersetze DASFELD mit dem von dir herrausgesuchtem Feldnamen.
Nun finde:

Code: Alles auswählen

$from = ( !empty($row['user_from']) ) ? $row['user_from'] : ' ';
Füge dannach ein / Wenn du das Wohnort-Feld nicht mehr haben willst kannst du es auch ersetzen mit

Code: Alles auswählen

$intrest = ( !empty($row['user_DASFELD]) ) ? $row['user_DASFELD'] : ' ';
Wiedereinmal DASFELD ersetzen.
Nun suche:

Code: Alles auswählen

'FROM' => $from,
Füge dannach in einer neuen Zeile ein / oder Ersetze wieder mit:

Code: Alles auswählen

'INTEREST' => $intrest ,
Nun speicherst du die Datei.
Öffne:
templates/subSilver/memberlist_body.tpl
Suche:

Code: Alles auswählen

{memberrow.FROM}
ersetze mit:

Code: Alles auswählen

{memberrow.INTEREST}
Fertig

EDIT:
Noch nicht ganz, der Spaltenname fehlt noch...

Öffne:
templates/subSilver/memberlist_body.tpl

Suche:

Code: Alles auswählen

{L_FROM}
Ersetze mit:

Code: Alles auswählen

{L_INTERESTS}
Öffne dann nochmal die memberlist.php
Suche nach:

Code: Alles auswählen

'L_FROM' => $lang['Location'],
Füge dannach ein/ oder ersetze mit

Code: Alles auswählen

'L_INTERESTS' => $lang['Interests'],

Verfasst: 02.01.2008 22:23
von coffeefish
super danke!


und kann mir da noch wer helfen, dass ich statt dem website feld eine telefonnummer stehen habe????

also im prinzip: kann mir wer alles was zum website feld gehört löschen, und ein neues feld für die telefonnummer erstellen????

BITTEBITTE!!!!! danke!!!!

Verfasst: 02.01.2008 23:04
von Nili76
Hi,

du musst nicht unbedingt das website-Feld löschen.....

Wenn es dir ausreicht, dein Website Feld für die Telefonnummer zu nehmen, muss eigentlich nur in der
lang_german/lang_main.php

die Variable $lang['Website'] editiert werden und in der

includes/functions_validate.php

der Code

Code: Alles auswählen

	// website has to start with http://, followed by something with length at least 3 that
	// contains at least one dot.
	if ($website != "")
	{
		if (!preg_match('#^http[s]?:\/\/#i', $website))
		{
			$website = 'http://' . $website;
		}

		if (!preg_match('#^http[s]?\\:\\/\\/[a-z0-9\-]+\.([a-z0-9\-]+\.)?[a-z]+#i', $website))
		{
			$website = '';
		}
	}
rausgenommen werden. Und schon kann man das website Feld als Telefonfeld nehmen.

Um neue Felder hinzuzufügen, solltest du dich hier mal einlesen.

Gruß
Nils

Verfasst: 03.01.2008 00:30
von coffeefish
ah sehr gut!

jetzt steht die telnr in der datenbank und im profil

aber folgendes problem:
die nummer ist im profil verlinkt (weil er ja denkt es ist eine website) - wie bekomm ich die verlinkung weg

2. problem: in der memberliste steht nur "Website dieses Besuchers besuchen" statt der nummer??

kann mir da noch wer helfen?
danke euch schonmal jetzt für die tolle hilfe :)

lg

Verfasst: 03.01.2008 08:26
von Nili76
Vielleicht wäre ein neues Feld doch besser gewesen...

Aber sei es drum. Veruche doch mal in der groupcp.php
folgende Zeilen zu löschen (Aber mache vorher mal ein Backup deiner Files!):

Code: Alles auswählen

$www_img = ( $row['user_website'] ) ? '<a href="' . $row['user_website'] . '" target="_userwww"><img src="' . $images['icon_www'] . '" alt="' . $lang['Visit_website'] . '" title="' . $lang['Visit_website'] . '" border="0" /></a>' : '';
und

Code: Alles auswählen

'MOD_WWW_IMG' => $www_img,
(Die Zeile gibt es in der groupcp 3 mal!)

Die Zeile

Code: Alles auswählen

	$www = ( $row['user_website'] ) ? '<a href="' . $row['user_website'] . '" target="_userwww">' . $lang['Visit_website'] . '</a>' : '';
änderst du in

Code: Alles auswählen

	$www = $row['user_website']; 
In der memberlist.php löschst du auch die Zeile

Code: Alles auswählen

$www_img = ( $row['user_website'] ) ? '<a href="' . $row['user_website'] . '" target="_userwww"><img src="' . $images['icon_www'] . '" alt="' . $lang['Visit_website'] . '" title="' . $lang['Visit_website'] . '" border="0" /></a>' : '';
und

Code: Alles auswählen

'WWW_IMG' => $www_img,
in der viewtopic.php löschst du

Code: Alles auswählen

		$www_img = ( $postrow[$i]['user_website'] ) ? '<a href="' . $postrow[$i]['user_website'] . '" target="_userwww"><img src="' . $images['icon_www'] . '" alt="' . $lang['Visit_website'] . '" title="' . $lang['Visit_website'] . '" border="0" /></a>' : '';
		$www = ( $postrow[$i]['user_website'] ) ? '<a href="' . $postrow[$i]['user_website'] . '" target="_userwww">' . $lang['Visit_website'] . '</a>' : '';
und

Code: Alles auswählen

		$www_img = '';
		$www = '';
Dann gibt es da noch die includes/usercp_viewprofile.php
Lösche die Zeile:

Code: Alles auswählen

$www_img = ( $profiledata['user_website'] ) ? '<a href="' . $profiledata['user_website'] . '" target="_userwww"><img src="' . $images['icon_www'] . '" alt="' . $lang['Visit_website'] . '" title="' . $lang['Visit_website'] . '" border="0" /></a>' : '&nbsp;';
und ändere

Code: Alles auswählen

$www = ( $profiledata['user_website'] ) ? '<a href="' . $profiledata['user_website'] . '" target="_userwww">' . $profiledata['user_website'] . '</a>' : '&nbsp;';
auf

Code: Alles auswählen

$www = $profiledata['user_website'];
Hier gibt es auch noch die Zeile

Code: Alles auswählen

'WWW_IMG' => $www_img,
die gelöscht werden kann...

In der memberlist_body.tpl änderst du

Code: Alles auswählen

<td class="{memberrow.ROW_CLASS}" align="center">&nbsp;{memberrow.WWW_IMG}&nbsp;</td>
in

Code: Alles auswählen

<td class="{memberrow.ROW_CLASS}" align="center">&nbsp;{memberrow.WWW}&nbsp;</td> 
Dann gibt es noch die groupcp_info_body.tpl
Ändere

Code: Alles auswählen

<td class="row1" align="center">{MOD_WWW_IMG}</td>
auf

Code: Alles auswählen

<td class="row1" align="center">{MOD_WWW}</td>
und der Sauberkeit halber:
lösche in der templates/subSilver/privmsgs_read_body.tpl

Code: Alles auswählen

			<td valign="middle" nowrap="nowrap">{PROFILE_IMG} {PM_IMG} {EMAIL_IMG} 
			  {WWW_IMG} {AIM_IMG} {YIM_IMG} {MSN_IMG}</td><td>&nbsp;</td><td valign="top" nowrap="nowrap"><script language="JavaScript" type="text/javascript"><!-- 
das

Code: Alles auswählen

{WWW_IMG}
So.... nun habe ich eine Stunde hier geschrieben, obwohl du das auch hättest selber harausfinden können, wenn du dich mit der Materie beschäftigen würdest. Ich habe aber auch mal so angefangen und nach solchen Infos gesucht.

(Kannst mir ja ein paar schöne Buttons dafür machen)

Gruß
Nils

Verfasst: 03.01.2008 16:57
von coffeefish
hey,

danke sehr gut jetzt ist die nummer im profil nichtmehr verlinkt!!!

aaaaaaber in der memberliste steht noch immer "Website dieses Benutzers besuchen" statt der telefonnummer :(

das kann ja jetzt keine große sache mehr sein ;)

danke dir auf jeden fall nils, hast was gut wennst das jetzt auch noch schaffst ;)

glg

Verfasst: 03.01.2008 20:27
von Nili76
OK.... habe da eine Datei vergessen. Hättest aber selber drauf kommen können....
Zu jeder php Datei gibt es auch (mindestens) eine template datei.

Da du die Änderungen in der memberlist.php gemacht hast, fehlt noch die Änderung in der memberlist_body.tpl

Code: Alles auswählen

<td class="{memberrow.ROW_CLASS}" align="center">&nbsp;{memberrow.WWW_IMG}&nbsp;</td>
muss in

Code: Alles auswählen

<td class="{memberrow.ROW_CLASS}" align="center">&nbsp;{memberrow.WWW}&nbsp;</td>
Gruß
Nils

Verfasst: 17.07.2008 12:08
von Boecki91
Nili76 hat geschrieben:die Variable $lang['Website'] editiert werden und in der

includes/functions_validate.php

der Code

Code: Alles auswählen

	// website has to start with http://, followed by something with length at least 3 that
	// contains at least one dot.
	if ($website != "")
	{
		if (!preg_match('#^http[s]?:\/\/#i', $website))
		{
			$website = 'http://' . $website;
		}

		if (!preg_match('#^http[s]?\\:\\/\\/[a-z0-9\-]+\.([a-z0-9\-]+\.)?[a-z]+#i', $website))
		{
			$website = '';
		}
	}
rausgenommen werden. Und schon kann man das website Feld als Telefonfeld nehmen.

Um neue Felder hinzuzufügen, solltest du dich hier mal einlesen.
Nicht rausnehmen! Umändern:

Code: Alles auswählen

	// No Website anymore, tele numbers now ;)
	if ($website != "")
	{
                //Numbers with /- and space 
		if (preg_match('#^[0-9/- ]#i', $website))
		{
			$website = '';
		}
	}