MyBB.de Forum

Normale Version: Frage zu Funktion get_post_link()
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Bei der Überprüfung einer Funktion in einem Plugin bin ich auf ein kleines Problem gestoßen.

Zur Erzeugung eines Links zu einem Beitrag wird die Fkt. get_post_link($pid,$tid) verwendet. Allerdings erzeugt diese einen Link, der so aussieht:
PHP-Code:
.../showthread.php?pid=12345#pid12345 

Nun habe ich versucht, die get_thread_link($tid) Fkt. zu berücksichtigen, damit ich einen Link bekomme, der so aussieht:
PHP-Code:
.../showthread.php?tid=999&pid=12345#pid12345 

Übrigens habe ich beide Funktionen mit htmlspecialchars_decode() "eingeklammert".

Mir gelingt aber die korrekte Erzeugung des Links nicht. Wo liegt denn hier der Wurm begraben?
Wenn du bei get_post_link($pid, $tid) die tid angibst, bekommst du exakt so einen Link, wie du ihn haben willst...
Leider eben nicht.... Sad
Ich habe es extra ausprobiert, das funktioniert... Wink
Also, es gibt diese Fkt.:
PHP-Code:
send_pm($to$from$subject$message

Die PM wird dann so abgeschickt.
PHP-Code:
send_pm($uids$mybb->user['uid'], $mybb->settings['pm_title'], str_replace(array("{bburl}""{posturl}"), array($mybb->settings['bburl'] . "/"htmlspecialchars_decode(get_post_link($pid$tid))."#pid".$pid), $mybb->settings['pm_message'])); 

Mit dem Versenden der PM ansich gibt es keine Probleme. Auch nicht mit dem Titel und der Nachricht selbst. Nur der darin enthaltene Link sieht nicht so, wie er eigentlich aussehen sollte.....
Ist $tid korrekt definiert?
so ist es im Moment vorgesehen:
PHP-Code:
global $posthandler;
$tid $posthandler->tid

Werde es mal mit
PHP-Code:
$tid $mybb->input['tid']; 
probieren.
So, nächster Versuch....

Statt
PHP-Code:
$tid $posthandler->tid
habe ich es jetzt mal mit
PHP-Code:
$tid $mybb->input['tid']; 
probiert.

Ich kann mir den Unterschied nicht erklären, aber jetzt wird die tid in der URL angezeigt. Allerdings wird das "&" wird nicht richtig umgesetzt, sondern in der URL als "&" angezeigt. So z.B.:
Code:
.../showthread.php?tid=999&pid=12345#pid12345
Das wiederum bedeutet, dass der Link nicht zum eigentlichen Ziel führt.... Sad
Das sollte das htmlspecialchars_decode aber eigentlich beheben...
Das hatte ich jetzt übersehen....Rolleyes.....aber damit klappt es! Big Grin

Danke Dir!

Aber was ist nun der Unterschied zwischen diesen beiden Zeilen?
PHP-Code:
$tid $posthandler->tid
$tid $mybb->input['tid']; 
Seiten: 1 2