Seite 1 von 1

[gelöst] Fehler in php-Zeile bei Codeänderung - Hilfeee

Verfasst: 26.07.2008 17:48
von BaerchenHH
In Weiterentwicklung des Anti Double Post MODs möchte ich den 'adp_text_edit' um die aktuelle Zeit erweitern...

Die betreffende Zeile des Originalcodes:

Code: Alles auswählen

$message_parser->message = $post_text . '<br /><br />' . $config['adp_text_edit'] .  '<br /><br />' . $message_parser->message;
habe ich ersetzt mit:

Code: Alles auswählen

$message_parser->message = $post_text . '<br /><br />' . preg_replace(array('/%t/','/%u/'),array($user->format_date($row['topic_last_post_time']),$post_data['username']),$config['adp_text_edit']) . '<br /><br />' . $message_parser->message;
Problem ist:
['topic_last_post_time']
fügt die Zeit und das Datum des erstellten Postings ein, aber nicht den Zeitpunkt der Editierung...

In einem anderen Codeschnipsel wird der korrekte Zeitpunkt duch

Code: Alles auswählen

. $user->format_date(time(), 'd.m, H:i') .
korrekt ausgegeben, aber ich bekomme das nicht mit ['topic_last_post_time'] ausgetauscht...!

Wie muß die Codezeile richtig aussehen???

Verfasst: 31.07.2008 00:54
von BaerchenHH
*push*

Verfasst: 31.07.2008 01:07
von 4seven
guck mal, wie an einer stelle, an der $row['topic_last_post_time'] funtioniert, diese datenbankabfrage "vorbereitet" wird

Verfasst: 31.07.2008 01:15
von BaerchenHH
???

Sorry, keinen Plan...
Ich habs mit

Code: Alles auswählen

$message_parser->message = $post_text . '<br /><br />' . preg_replace(array('/%t/','/%u/'),array($user->format_date($row(time(), 'd.m, H:i')),$post_data['username']),$config['adp_text_edit']) . '<br /><br />' . $message_parser->message; 
erfolglos versucht, und komme ansonsten auch auf keinen grünen Zweig!

Ich habe zwar durch phpbb schon einiges gelernt, aber aktuell gibt es 2 Probleme, wo ich einfach zu dau bin (und php zu hoch)...!

Verfasst: 31.07.2008 01:17
von 4seven
was genau geht denn nicht?
was genau möchtest du erreichen?

mehr infos pls

Verfasst: 31.07.2008 01:38
von BaerchenHH
Ich möchte den 'adp_text_edit' um die aktuelle Zeit* erweitern...

Im ACP kann ich einen Text bestimmen (z.B. "--- Nachtrag ---")

Es erscheint im Forum zwischen den Postings eines Users, der auf seinen eigenen Beitrag antwortet folgendes:

-----------------
Text alter Post

--- Nachtrag ---

Text Nachtragspost
-----------------

Nun möchte ich, daß ich im ACP z.B. die Zeit und /oder den Poster plazieren kann (z.B. "--- Nachtrag am %t von &u ---"), worauf im Post "--- Nachtrag am 31.07.08 01:22 von BaerchenHH ---" erscheint...

* http://www.phpbb.de/viewtopic.php?p=973201
Mein Traum wäre, daß anstelle von der aktuellen Zeit z.b. auch die vergangene Dauer im ACP einstellbar wäre (also z.B. "Nachtrag nach 2 Tagen, 3 Std. 17 Min."), aber ich glaube, daß währe zu viel, oder?

Verfasst: 10.08.2008 23:41
von BaerchenHH
Ich hab mir die letzten Nächte um die Ohren geschlagen und folgende Lösung gefunden:

------ Datum innerhalb des ['adp_text_edit'] ---
--- Öffne ---
\posting.php

--- Suche ---

Code: Alles auswählen

$message_parser->message = $post_text . '<br /><br />' . $config['adp_text_edit'] . '<br /><br />' . $message_parser->message;
--- Ersetze mit ---

Code: Alles auswählen

$message_parser->message = $post_text . '<br /><br />' . preg_replace(array('/%t/','/%u/'),array($user->format_date(time(), 'd. M Y, H:i'),$post_data['username']),$config['adp_text_edit']) . '<br /><br />' . $message_parser->message;
Es funktioniert zwar einwandfrei (so, wie ich es wollte), aber sollte es eine bessere Lösng geben, wäre ich für den schöneren Weg dennoch dankbar.