Ausgehende Links über eine Datei leiten

In diesem Forum können Mod-Autoren ihre Mods vorstellen, die sich noch im Entwicklungsstatus befinden. Der Einbau in Foren im produktiven Betrieb wird nicht empfohlen.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Max
Mitglied
Beiträge: 1051
Registriert: 20.02.2003 22:22

Beitrag von Max »

Bonkz hat geschrieben:Funktioniert nun einwandfrei.... Kann mir jemand aber noch kurz sagen, wie ich den Button Link unter jedem Eintrag maskieren kann ?

Wenn jemand z.B. eine Homepage in seinem Profil angibt ?
Ich gehe mal davon aus, dass Du das Sytem, was ich gepostet habe, meinst.....

Öffne viewtopic.php

suche:

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>' : '';
ersetze es mit:

Code: Alles auswählen

		$www_img = ( $postrow[$i]['user_website'] ) ? '<a href="out.php/?go=' . $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="out.php/?go=' . $postrow[$i]['user_website'] . '" target="_userwww">' . $lang['Visit_website'] . '</a>' : '';
Dann ist das schon mal in den Beiträgen geschafft.
Nun noch für die Profilansicht:
öffne includes/ucercp_viewprofile.php
suche:

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;';
$www = ( $profiledata['user_website'] ) ? '<a href="' . $profiledata['user_website'] . '" target="_userwww">' . $profiledata['user_website'] . '</a>' : '&nbsp;';
ersetze es mit:

Code: Alles auswählen

$www_img = ( $profiledata['user_website'] ) ? '<a href="out.php/?go=' . $profiledata['user_website'] . '" target="_userwww"><img src="' . $images['icon_www'] . '" alt="' . $lang['Visit_website'] . '" title="' . $lang['Visit_website'] . '" border="0" /></a>' : '&nbsp;';
$www = ( $profiledata['user_website'] ) ? '<a href="out.php/?go=' . $profiledata['user_website'] . '" target="_userwww">' . $profiledata['user_website'] . '</a>' : '&nbsp;';
Möglicherweise muss das auch in der membelist.php und anderen Scripten, die sich mit der Angabe der Userlinks befassen, auch angepasst werden.
Kannst dann ja bescheid sagen, was geändert werden muss.



Gruß Max
Bonkz
Mitglied
Beiträge: 24
Registriert: 13.09.2005 11:15

Beitrag von Bonkz »

Sieht sehr gut aus... Vielen Dank an euch alle!

Nun bin ich zufrieden ;)
Basti2003
Mitglied
Beiträge: 173
Registriert: 30.06.2002 16:31
Wohnort: hab ich...
Kontaktdaten:

Beitrag von Basti2003 »

Ttahl
Mitglied
Beiträge: 61
Registriert: 10.09.2005 08:50

Beitrag von Ttahl »

Hallo, ich wollte jetzt auch mal den safeurl mod mit der out.php kombinieren. leider bisher erfolglos. der link wir auf den ersten blick richtig umgewandelt, klicke ich jedoch auf den link, dann öffnet sich ein fenster mit einem link dieser art im browser

Code: Alles auswählen

....forum/out.php/?http%3A%2F%2Fwww......
mein bbcode.php sieht in den fraglichen abschnitt so aus.

Code: Alles auswählen

	// matches an "xxxx://yyyy" URL at the start of a line, or after a space.
	// xxxx can only be alpha characters.
	// yyyy is anything up to the first space, newline, comma, double quote or <
	$ret = preg_replace("#([\n ])([a-z]+?)://([a-z0-9\-\.,\?!%\*_\#:;~\\&$@\/=\+]+)#ei", "'\\1<a href=\"out.php/?'.urlencode('\\2://\\3'). '\" target=\"_blank\">\\2://\\3</a>'", $ret);

	// matches a "www|ftp.xxxx.yyyy[/zzzz]" kinda lazy URL thing
	// Must contain at least 2 dots. xxxx contains either alphanum, or "-"
	// zzzz is optional.. will contain everything up to the first space, newline,
	// comma, double quote or <.
	$ret = preg_replace("#([\n ])www\.([a-z0-9\-]+)\.([a-z0-9\-.\~]+)((?:/[a-z0-9\-\.,\?!%\*_\#:;~\\&$@\/=\+]*)?)#ei", "'\\1<a href=\"out.php/?'.urlencode('http://www.\\2.\\3\\4').'\" target=\"_blank\">www.\\2.\\3\\4</a>'", $ret);
und meine out.php, die im verzeichnis /forum/ liegt so

Code: Alles auswählen

<html> 
 
<head> 
 
<META HTTP-EQUIV=Refresh CONTENT="1; URL=<?php echo $goto; ?>"> 
 
</head> 
 
<body> 
 
<script LANGUAGE="JavaScript">window.location = "<?php echo $goto; ?>"</script> 
  
</body> 
 
</html>
Wo könnte der fehler liegen?

Danke!
Max
Mitglied
Beiträge: 1051
Registriert: 20.02.2003 22:22

Beitrag von Max »

hast Du das komplett so gemacht, wie ich das >hier< beschrieben habe?
Also wirklich alles so machen - weil bei dem Code weiß ich, dass er läuft.

Das, was Du hier gepostet hast, sieht so weit gut aus, aber ich vermute, dass Du nur die geposteten Abschnitte aus der bbcode.php bearbeitet hast und daher nicht alles richtig klappt.


Gruß Max
Ttahl
Mitglied
Beiträge: 61
Registriert: 10.09.2005 08:50

Beitrag von Ttahl »

Danke Max für die Hilfe.

Ich meine schon, dass ich alles so gemacht habe. Im Moment habe ich aber leider nicht die Ruhe um alles genau durchzuchecken. Werde das erst am Do machen können. Dann werde ich mich wirklich 1:1 an Deine Anleitung halten. Wenn es immer noch probleme gibt, dann melde ich mich nochmal hier.

Danke jedenfalls.
Antworten

Zurück zu „phpBB 2.0: Mods in Entwicklung“