Seite 1 von 1

'@' durch 'at' ersetzen

Verfasst: 21.11.2002 08:39
von Philipp Schreiber
Hallo!

Ich suche eine Mod um in der Member-Liste das '@' durch ein 'at' zu ersetzen...
itst hat geschrieben:Mit der PHP-Funktion streplace in der memberlist.php.
Habe keine Ahnung wie das geht. Kann mir jemand helfen?

Gruß Philipp Schreiber

Verfasst: 21.11.2002 08:54
von biototo
zum ersten, die Funktion heisst korrekt str_replace

zum anderen sachen zur funktion selber gindest du hier : http://www.php.net/manual/de/function.str-replace.php

das mit der memberlist.php schau ich mir mal an ...

Verfasst: 21.11.2002 09:13
von biototo
OK hier die Lösung:

such mal in der memberlist.php nach folgendem Code :
(ungefähr Zeile 185)

Code: Alles auswählen

$email_uri = ( $board_config['board_email_form'] ) ? append_sid("profile.$phpEx?mode=email&" . POST_USERS_URL .'=' . $user_id) : 'mailto:' . $row['user_email'];

davor fügst du folgenden Code ein :

Code: Alles auswählen

$row['user_email'] = str_replace ( "@", " at ", $row['user_email'] );
habs unter phpBB 2.0.3 ausprobiert und funzt, andere versionen kann ich nicht sagen ... !!!

Verfasst: 21.11.2002 10:14
von Philipp Schreiber
super! funktioniert. dankeschön!!! :)

Verfasst: 21.11.2002 11:29
von Philipp Schreiber
ok. noch ne frage:

ich wollte das ganze auch in der viewtopic.php machen, habe den code eingebaut:

Code: Alles auswählen

			$row['user_email'] = str_replace ( "@", " at ", $row['user_email'] );
			$email_uri = ( $board_config['board_email_form'] ) ? append_sid("profile.$phpEx?mode=email&" . POST_USERS_URL .'=' . $poster_id) : 'mailto:' . $postrow[$i]['user_email'];
und es funktioniert nicht. was mach ich falsch :-? ?

Verfasst: 21.11.2002 11:48
von itst

Code: Alles auswählen

			$postrow[$i]['user_email'] = str_replace ( "@", " at ", $row['user_email'] );
			$email_uri = ( $board_config['board_email_form'] ) ? append_sid("profile.$phpEx?mode=email&" . POST_USERS_URL .'=' . $poster_id) : 'mailto:' . $postrow[$i]['user_email'];
So sollte es gehen.

Verfasst: 21.11.2002 11:54
von Philipp Schreiber
ne, da wird dann gar nix mehr nach dem 'mailto:' angezeigt. aber so gehts:

Code: Alles auswählen

			$postrow[$i]['user_email'] = str_replace ( "@", " at ", $postrow[$i]['user_email'] );
			$email_uri = ( $board_config['board_email_form'] ) ? append_sid("profile.$phpEx?mode=email&" . POST_USERS_URL .'=' . $poster_id) : 'mailto:' . $postrow[$i]['user_email'];

Verfasst: 21.11.2002 12:12
von itst
Oops, verschlimmbessert. Hatte das zweite $row übersehen.

Aber jetzt läufts ja.

Der Vollständigkeit halber...

Verfasst: 21.11.2002 12:16
von Philipp Schreiber
OK! Um nochmal zusammenzufassen:

Um das '@' durch ein 'at' zu ersetzen (duchgängig im Board) folgende Änderungen vornehmen. Ob die Änderung in der privmsg.php sinnvoll ist, ist die Frage ;). Anwendung nat. auf eigene Gefahr ;) Wenn ihr einen Fehler entdeckt bitte posten. Getestet habe ich 'memberlist.php', viewtopic.php' und 'usercp_viewprofile.php'. Die anderen Sachen sind für mich uninteressant. Ich habe Version 2.0.3...

memberlist.php

Finde:

Code: Alles auswählen

			$email_uri = ( $board_config['board_email_form'] ) ? append_sid("profile.$phpEx?mode=email&" . POST_USERS_URL .'=' . $user_id) : 'mailto:' . $row['user_email'];
Davor einfügen

Code: Alles auswählen

			$row['user_email'] = str_replace ( "@", " at ", $row['user_email'] );


viewtopic.php

Finde:

Code: Alles auswählen

			$email_uri = ( $board_config['board_email_form'] ) ? append_sid("profile.$phpEx?mode=email&" . POST_USERS_URL .'=' . $poster_id) : 'mailto:' . $postrow[$i]['user_email'];

Davor einfügen:

Code: Alles auswählen

			$postrow[$i]['user_email'] = str_replace ( "@", " at ", $postrow[$i]['user_email'] );


\include\usercp_viwprofile.php

Finde:

Code: Alles auswählen

	$email_uri = ( $board_config['board_email_form'] ) ? append_sid("profile.$phpEx?mode=email&" . POST_USERS_URL .'=' . $profiledata['user_id']) : 'mailto:' . $profiledata['user_email'];

Davor einfügen:

Code: Alles auswählen

	$profiledata['user_email'] = str_replace ( "@", " at ", $profiledata['user_email'] );


groupcp.php

Finde:

Code: Alles auswählen

		$email_uri = ( $board_config['board_email_form'] ) ? append_sid("profile.$phpEx?mode=email&" . POST_USERS_URL .'=' . $row['user_id']) : 'mailto:' . $row['user_email'];

Davor einfügen:

Code: Alles auswählen

		$row['user_email'] = str_replace ( "@", " at ", $row['user_email'] );


privmsg.php

Finde:

Code: Alles auswählen

		$email_uri = ( $board_config['board_email_form'] ) ? append_sid("profile.$phpEx?mode=email&" . POST_USERS_URL .'=' . $user_id_from) : 'mailto:' . $privmsg['user_email'];
Davor einfügen:

Code: Alles auswählen

		$privmsg['user_email'] = str_replace ( "@", " at ", $privmsg['user_email'] );