Seite 1 von 1

[erledigt] Probleme bei Vorschau

Verfasst: 20.03.2005 13:26
von shwepsi
Hallo,
ich versuche gerade eine Vorschaufunktion im ACP zu basteln, sie funktioniert auch schon ganz gut, aber 2 kleine Fehler hat das ganze noch
  1. [erledigt] die Backslashs vor dem " werden nicht entfernt
  2. [erledigt]in der Textarea werden die : entfernt

der gekürzte Quelltext, veraltet, siehe nächste Post für neuen

Code: Alles auswählen

$preview_message = ( !empty($HTTP_POST_VARS['message']) ) ? htmlspecialchars($HTTP_POST_VARS['message']) : htmlspecialchars($HTTP_GET_VARS['message']);
$message = $preview_message;

$preview_message = stripslashes(prepare_message(addslashes(unprepare_message($preview_message)), 0, 1, 1, $bbcode_uid));
$preview_message = bbencode_second_pass($preview_message, $bbcode_uid);
$preview_message = smilies_pass($preview_message, '../');
$preview_message = str_replace("\n", '<br />', $preview_message);

$template->assign_block_vars('preview', array(
        'PREVIEW' => $preview_message
));

$message = preg_replace('/\:(([a-z0-9]:)?)' . $row['bbcode_uid'] . '/s', '', $message);
$message = str_replace('<', '<', $message);
$message = str_replace('>', '>', $message);
$message = str_replace('<br />', "\n", $message);
$message wird später in die textarea übergeben

Verfasst: 21.03.2005 11:44
von shwepsi
*BUMP*

so, das erste Problem habe ich ausräumen können ... aber das 2. Problem ist haariger
die Zeile

Code: Alles auswählen

$message = preg_replace('/\:(([a-z0-9]:)?)' . $row['bbcode_uid'] . '/s', '', $message);
sorgt brav für das entfernen der BBCodes, aber entfernt leider aber auch so ALLE Doppelpunkte ...

der gesamte, gekürzte QT ist derzeit:

Code: Alles auswählen

$preview_message = ( !empty($HTTP_POST_VARS['message']) ) ? htmlspecialchars($HTTP_POST_VARS['message']) : htmlspecialchars($HTTP_GET_VARS['message']); 
$message = $preview_message; 

$message = stripslashes($preview_message);
$preview_message = stripslashes($preview_message);
$preview_message = stripslashes(prepare_message(addslashes(unprepare_message($preview_message)), 0, 1, 1, $bbcode_uid));
$preview_message = bbencode_second_pass($preview_message, $bbcode_uid);
$preview_message = bbencode_first_pass($preview_message, $bbcode_uid);
$preview_message = make_clickable($preview_message);
$preview_message = smilies_pass($preview_message, '../');
$preview_message = str_replace("\n", '<br />', $preview_message);

$template->assign_block_vars('preview', array( 
        'PREVIEW' => $preview_message 
)); 

$message = preg_replace('/\:(([a-z0-9]:)?)' . $row['bbcode_uid'] . '/s', '', $message); <-- diese Zeile ist das Problem ...
$message = str_replace('<', '<', $message); 
$message = str_replace('>', '>', $message); 
$message = str_replace('<br />', "\n", $message);

Verfasst: 21.03.2005 12:20
von shwepsi
die schuldige Zeile wird nur noch beim aufrufen der Daten in der DB ausgeführt ...