Sida 1 av 2

Single Quote Hack

Postat: 2008-09-15 21:00
av Holger
Hejsan,

jag provar just nu modden Single Quote Hack.
En enda enkel instruktion:
#
#-----[ OPEN ]------------------------------------------------
#
posting.php

#
#-----[ FIND ]------------------------------------------------
#
$message = '
' . $quote_username . ' skrev:' . $message . '
';

#
#-----[ BEFORE, ADD ]------------------------------------------
#
//----[START: Single Quote Mod by Jeremy Biffis]---------------------------------
//----[Add]----------------------------------------------------------------------
//This takes the text of the message to be quoted and searches to see if there is
//a quote within it. IF there is, then it eliminates the stuff between the start
//Quote and the end quote tags
$message_copy = $message;
$start_find = '[quote'; //The opening quote
$end_find = '[/ quote]'; //Closing Quote
$start_pos = strpos($message_copy, $start_find); //Find the start point of the first Quote - usually 0, but some people reply, then quote
$end_pos = strpos($message_copy, $end_find); //Start point of the end quote

//This replaces the stuff between and including the two quotes tags
if(!($start_pos===false) && !(end_pos===false)) {
$message_copy = substr_replace($message, '', $start_find, ($end_pos+strlen($end_find) ) );
}
//----[END: Single Quote Mod]-----------------------------------------------------
Funkar inte!
Varför inte?
Nu ser mitt $message ut så här:

Kod: Markera allt

			$message = '[quote="' . $quote_username . '";p="' . $post_id . '"]' . $message . '[/quote]';
Kan det ställa till det?
Koden som ska infogas ger ingen skillnad als, man får fortfarande t.ex. tre citat ihopsnörda.

/Holger

Re: Single Quote Hack

Postat: 2008-09-15 21:13
av tumba25
Nej, den söker ju efter "[quote" så det ska den hitta.

Testa att ändra

Kod: Markera allt

$message_copy = substr_replace($message, '', $start_find, ($end_pos+strlen($end_find) ) ); 
till

Kod: Markera allt

$message = substr_replace($message, '', $start_find, ($end_pos+strlen($end_find) ) ); 

Re: Single Quote Hack

Postat: 2008-09-15 22:31
av Holger
Nej, det blir inte rätt ... men nästan ...

Gör jag ett citat på detta:

Kod: Markera allt

quote2
text
       quote1
       text
och den vanliga texten
Så får jag
texten ur quote2
och inte
"och den vanliga texten"
Nej! Svårt att förklara!

Jag citrerar detta och skriver "Testar" som mitt meddelande längst ner:
detta_citeras.jpg
detta_citeras.jpg (97.16 KiB) Visad 18459 gånger
Och detta är resultatet:
resultat.jpg
resultat.jpg (100.95 KiB) Visad 18461 gånger

Re: Single Quote Hack

Postat: 2008-09-15 23:00
av tumba25
Ok, efter ett tag såg jag. Men det händer ju iaf något.

Ska ta en paus och testa.

Re: Single Quote Hack

Postat: 2008-09-15 23:15
av tumba25
Byt ut

Kod: Markera allt

    $message_copy = substr_replace($message, '', $start_find, ($end_pos+strlen($end_find) ) ); 
Taget från första inlägget i tråden. Om du lagt in min tidigare ändring är det den du ska byta ut.

Mot.

Kod: Markera allt

	$message = substr_replace($message_copy, '', $start_pos, (($end_pos - $start_pos) + strlen($end_find)));
	$message = trim($message);
trim() är inte nödvändig, men eftersom man ofta börjar citera på en ny rad så finns det ett returnslag i början av inlägget som citeras. Det blir snyggare om man trimmar bort det.

Re: Single Quote Hack

Postat: 2008-09-16 08:51
av Holger
Okej! Testas ikväll! Tack!

Re: Single Quote Hack

Postat: 2008-09-16 22:17
av Holger
Nej, det funkade tyvärr inte ... heller

Re: Single Quote Hack

Postat: 2008-09-16 22:25
av tumba25
Det fungerade perfekt här hos mig.

Hur blev det när du testade? Finns det ett $message = $message_copy; någonstans som du glömde visa?

Re: Single Quote Hack

Postat: 2008-09-17 08:48
av Holger
När jag försökte så klippte det av en av citaten ... det blev över något liknande som

Kod: Markera allt

[quote="medlem1";p="69597"]"medlem2";p="69558"]Ser ut att vara stolpe ...

Re: Single Quote Hack

Postat: 2008-09-17 13:07
av tumba25
Jag har suttit och lekt med den en stund nu och inte fått något fel alls. Om det finns flera citat i inlägget som citeras kan det bli fel, tror jag. Då hittas bara den första [/quote]

Upptäckte precis att det fattas ett $ i originalkoden, fast det fungerar här även utan den.

Så här ser MOD-delen ut hos mig.

Kod: Markera allt

//----[START: Single Quote Mod by Jeremy Biffis]---------------------------------
//----[Add]----------------------------------------------------------------------
//This takes the text of the message to be quoted and searches to see if there is
//a quote within it. IF there is, then it eliminates the stuff between the start
//Quote and the end quote tags
$message_copy = $message;
$start_find = '[quote'; //The opening quote
$end_find = '[/quote]'; //Closing Quote
$start_pos = strpos($message_copy, $start_find); //Find the start point of the first Quote - usually 0, but some people reply, then quote
$end_pos = strpos($message_copy, $end_find); //Start point of the end quote

//This replaces the stuff between and including the two quotes tags
if($start_pos !== false && $end_pos !== false)
{
	$message = substr_replace($message_copy, '', $start_pos, (($end_pos - $start_pos) + strlen($end_find)));
	$message = trim($message);
}
//----[END: Single Quote Mod]-----------------------------------------------------

Re: Single Quote Hack

Postat: 2008-09-17 13:34
av Holger
tumba25 skrev:Om det finns flera citat i inlägget som citeras kan det bli fel, tror jag. Då hittas bara den första

Kod: Markera allt

[/quote]
Hm, men det är ju det som modden går ut på.
Man vill eliminera alla citat förutom det SISTA.

Re: Single Quote Hack

Postat: 2008-09-17 13:43
av tumba25
Det den gör är att varje inlägg bara innehåller ett citat.

När du klickar på <Citera>-knappen så tas tidigare citat bort från inlägget du citerar och du citerar bara originaltexten i inlägget.
citat.png
citat.png (136.42 KiB) Visad 18429 gånger

Re: Single Quote Hack

Postat: 2008-09-17 13:58
av Holger
Arrrgh! Ja, så ska det vara! Korrekt!

Re: Single Quote Hack

Postat: 2008-09-17 14:33
av tumba25
Så fungerar det hos mig med den koden jag senast klistrade in. I alla inlägg på den tidigare bilden har jag klickat på <Citera>.

Re: Single Quote Hack

Postat: 2008-09-17 15:10
av Holger
Okej, jag provar igen!