Цитат в цитата

D_rA

Registered
При използване на бутон quote, за отговор на постинг, в който съществува цитат, в отговора се натрупват 2 (или повече) цитата в цитат. Проблем няма, освен "чаршафите" с големи отговори, а и честа практика на потребителите да изтриват части от тагове.
Опитахме с ограничение на броя на цитатите до 1, но настана вой от потребителите, че при отговори, за да публикуват, следва да трият предходен цитат, и както често се случва - махат таг и публикуват "боза".
Може би решението е, при използване на quote, кода създаващ цитат да изтегля само мнението от постинга, на който се отговаря, без съществуващите в него цитати.
Това обаче, поради липса на познания в програмирането, без съдействие на знаещи, няма как да стане. Търсих в приложените практики и уроци тук, но не открих нещо, което би помогнало. (възможно е и да съм го пропуснал)
Въпросът ми е: Възможна ли някаква корекция в кода на този бутон, с която да се изпълни подобно цитиране, и ако е възможна какво следва да се промени в този код?
 
Нещо подобно


<?php
= "/quot/123\quot\ /quot/ //1234\quot\/quote/12345\quot\text";//Входният стринг т.е тук ти е $_POST['']
$expl = explode('\quot\',$str);
$count = count($expl)-1;//преброяваме броя на експлоуднатите елементи и взимаме последният -1 ,защото в масив започва от 0 броенето,а count връща 4 - няма нищо да се покаже ,а като върне 4-1 т.е 3 ,става :)
echo $expl[$count];//показваме последният елемент от explode-а
?>
Направил съм /quot/ за отварящ таг и \quot\ за затварящ,защото при [quote ] форума(на WT) ги изобразява като цитати.
 
Ще опитам промяна, и за да не стане грешка от тия, дето болят, ще ползвам един php форум за целта. Та, във файла posting.php, намерих този код (по-долу). Къде да вмъкна вашия код?
Код:
if ( $mode == 'quote' )
		{
			$orig_word = array();
			$replacement_word = array();
			obtain_word_list($orig_word, $replace_word);

			$msg_date =  create_date($board_config['default_dateformat'], $postrow['post_time'], $board_config['board_timezone']);

			// Use trim to get rid of spaces placed there by MS-SQL 2000
			$quote_username = ( trim($post_info['post_username']) != '' ) ? $post_info['post_username'] : $post_info['username'];
			$message = '[quote="' . $quote_username . '"]' . $message . '[/quote]';

			if ( !empty($orig_word) )
			{
				$subject = ( !empty($subject) ) ? preg_replace($orig_word, $replace_word, $subject) : '';
				$message = ( !empty($message) ) ? preg_replace($orig_word, $replace_word, $message) : '';
			}

			if ( !preg_match('/^Re:/', $subject) && strlen($subject) > 0 )
			{
				$subject = 'Re: ' . $subject;
			}

			$mode = 'reply';
 

Back
Горе