str_replace auf ganze Seite anwenden

In diesem Forum kann man Fragen zur Programmierung stellen, die bei der Entwicklung von Mods für phpBB 3.0.x oder dem Modifizieren des eigenen Forums auftauchen.
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
Ghostt
Mitglied
Beiträge: 212
Registriert: 12.03.2008 14:53

str_replace auf ganze Seite anwenden

Beitrag von Ghostt »

Hallo
Da ich noch ein PHP noob bin. bruache ich eure hilfe um mit einem php code zb. str_replace oder änlichem eine bestimmten text (in dem fall eine url) zu ersetzen.

diese funktion soll in einem phpbb 3 forum implementiert werden in der viewtopic_body.php.........

die frage ist wie es sich realsieren lässt ohne den "subject" zu verwenden, da es sonst nicht umsetzbar ist.
mixed str_replace ( mixed $search , mixed $replace , mixed $subject [, int &$count ] )

der php code soll wie gesagt die seite durchsuchen nach den wort und ihn ersetzen.

mfg nicy
Boecki91
Ehemaliges Teammitglied
Beiträge: 4744
Registriert: 18.06.2006 15:21

Re: str_replace auf ganze Seite anwenden

Beitrag von Boecki91 »

Wenn es um Beiträge geht würde ich dir die Wortzensur empfehlen. die kannst du im ACP, ich glaube unter Beiträge sollte das stehen.


Ich gehe immer noch davon aus das es um Beiträge geht und schiele dann auf die viewtopic.php, da werden die Beiträge ausgelesen und da kann man deine Suchen Ersetzen Möglichkeit einbauen, das nachzuvollziehen wo da wie was herkommt ist für einen Anfänger sicher nicht einfach, aber da müsste es gehen.

Sollte es etwas sein was in der Datenbank stehen und geändert werden kann man das auch mit einem SQL Befehl machen.


Wie du siehst gibt es zig Möglichkeiten, wenn du genauer beschreibst was du vorhast kann man dir bestimmt besser helfen.
Standart: Am besten mit beiden Beinen auf dem Boden
Standardmäßig antworte ich nicht auf PMs
Ghostt
Mitglied
Beiträge: 212
Registriert: 12.03.2008 14:53

Re: str_replace auf ganze Seite anwenden

Beitrag von Ghostt »

hab ich mit output buffering gelöst
Boecki91
Ehemaliges Teammitglied
Beiträge: 4744
Registriert: 18.06.2006 15:21

Re: str_replace auf ganze Seite anwenden

Beitrag von Boecki91 »

Ist aber nicht der feine Weg ;)
Standart: Am besten mit beiden Beinen auf dem Boden
Standardmäßig antworte ich nicht auf PMs
Ghostt
Mitglied
Beiträge: 212
Registriert: 12.03.2008 14:53

Re: str_replace auf ganze Seite anwenden

Beitrag von Ghostt »

hast du einen saubereren vorschlag?

als der hier:

Code: Alles auswählen

<?php

function callback($buffer)
{
  // replace all the apples with oranges
  return (str_replace("apples", "oranges", $buffer));
}

ob_start("callback");

?>
<html>
<body>
<p>It's like comparing apples to oranges.</p>
</body>
</html>
<?php

ob_end_flush();

?> 
Boecki91
Ehemaliges Teammitglied
Beiträge: 4744
Registriert: 18.06.2006 15:21

Re: str_replace auf ganze Seite anwenden

Beitrag von Boecki91 »

Da ich immer noch nicht weißt was genau du machen willst (die GANZE Seite wirst du niemals ersetzen lassen, oder?) kann ich dir nicht weiter helfen wie ich dir bereits habe.
Du kannst alles ändern, ohne diese ob Funktionen, wenn du sagen würdest was du genau ändern willst. Mir fällt momentan nur ein Fall ein bei dem ich dir helfen könnte aber nicht will.
Boecki91 hat geschrieben:Wenn es um Beiträge geht würde ich dir die Wortzensur empfehlen. die kannst du im ACP, ich glaube unter Beiträge sollte das stehen.


Ich gehe immer noch davon aus das es um Beiträge geht und schiele dann auf die viewtopic.php, da werden die Beiträge ausgelesen und da kann man deine Suchen Ersetzen Möglichkeit einbauen, das nachzuvollziehen wo da wie was herkommt ist für einen Anfänger sicher nicht einfach, aber da müsste es gehen.

Sollte es etwas sein was in der Datenbank stehen und geändert werden kann man das auch mit einem SQL Befehl machen.


Wie du siehst gibt es zig Möglichkeiten, wenn du genauer beschreibst was du vorhast kann man dir bestimmt besser helfen.
Standart: Am besten mit beiden Beinen auf dem Boden
Standardmäßig antworte ich nicht auf PMs
Ghostt
Mitglied
Beiträge: 212
Registriert: 12.03.2008 14:53

Re: str_replace auf ganze Seite anwenden

Beitrag von Ghostt »

um genau zu sagen geht es um die ersetzung eines link vorsatzes in der art http://example.com/?url=http://google.de...

wenn der user eingeloggt ist soll der vorsatz "http://example.com/?url=" entfernt werden (dh. oder mit nichts ersetzt) damit die url http://google.de alleine steht...

hoffe war verständlich.
Boecki91
Ehemaliges Teammitglied
Beiträge: 4744
Registriert: 18.06.2006 15:21

Re: str_replace auf ganze Seite anwenden

Beitrag von Boecki91 »

Schau dir mal diese alten alten Mod in der Entwickung von mir an:

http://www.phpbb.de/community/viewtopic ... 8&t=173366

Schau dir die Mod an wie da auf die Beitrags-Inhalte zugegriffen werden, insbesondere wo der Anoymisierdienst "reingeschaltet" wird.
Standart: Am besten mit beiden Beinen auf dem Boden
Standardmäßig antworte ich nicht auf PMs
Benutzeravatar
igorw
Mitglied
Beiträge: 107
Registriert: 02.08.2008 13:04
Wohnort: Winterthur

Re: str_replace auf ganze Seite anwenden

Beitrag von igorw »

Eine Möglichkeit um eine Ersetzung auf die gesamte Seite anzuwenden wären Hooks. In docs/ Ordner von phpBB3 gibts dazu etwas dokumentation. Ein Hook für $template->display würde das etwas hübscher lösen als output buffering (aber zugegebenermassen auch nicht die hübscheste Lösung).
Antworten

Zurück zu „[3.0.x] Mod Bastelstube“