Seite 1 von 1

Keine Sonderzeichen im Beitrag Titel, ist das möglich?

Verfasst: 24.11.2004 00:02
von Cyber Sonic
Hallo,

kann man ein phpBB Forum auch so einställen das keine Sonderzeichen im Titel wie z.B. (^°<'#>-~*`´}][{³²...) nenutzt werden können?

Ist dies möglich, wenn ja, auch sinnvoll?

mfg
Cyber Sonic

Verfasst: 24.11.2004 13:26
von Underhill
hi,

Code: Alles auswählen

#
#-----[ OPEN ]------------------------------------------------------------------
#

   includes\functions_post.php

#
#-----[ FIND ]------------------------------------------------------------------
#

	if ($mode == 'newtopic' || $mode == 'reply' || $mode == 'editpost') 
	{
		//
		// Flood control
		//

#
#-----[ BEFORE, ADD ]-----------------------------------------------------------
#

	//
	// Sonderzeichen wegmachen
	//
	$post_subject = preg_replace("/([\^\°\<\'\#\>\-\~\*\`\´])+/", " ", $post_subject);

	
#
#-----[ SAVE/CLOSE ALL FILES ]--------------------------------------------------
#

In Anlehnung an:
http://www.underhill.de/myphpBB/ausrufe ... mtitel.txt


Gruss
Underhill

Verfasst: 07.04.2007 00:45
von color
Ich suche auch so ein mod,das habe ich eingebaut aber wen ein user nur sonderseichen postet hat der admin rote karte weil dan der topic nicht mehr sichtbar ist.

Gibts ein mod der das umlaute und sonderseichen verbietet und dabei warnt?

mfg

Verfasst: 07.04.2007 10:33
von Underhill
Hi,

versuche mal das

Code: Alles auswählen

$post_subject = preg_replace("/([\^\°\<\'\#\>\-\~\*\`\´])+/", " ", $post_subject);
gegen

Code: Alles auswählen

$post_subject = preg_replace("/([\^\°\<\'\#\>\-\~\*\`\´])+/", "", $post_subject);
zu ersetzen.
Dann muesste phpBB warnen das der Titel leer ist...

Gruss
Underhill

Verfasst: 07.04.2007 14:46
von color
Leider nicht der postet ohne problem weiter.

Verfasst: 08.04.2007 01:07
von Underhill
Hi,
color hat geschrieben:Leider nicht der postet ohne problem weiter.
Bitte erklaere das in wenig genauer...
Wer postet was ohne Probleme weiter?

Gruss
Underhill

Verfasst: 08.04.2007 02:34
von color
:D das code die du gegeben hast gibt keine fehler meldung das beitrag wird weiter leer gepostet.

Ich habe so was für registrierung das ist viel besser man kan die buchstaben selber eingeben was erlaubt ist,Kanstdu das bitte für topic ändern,Oder ähnliches anfertigen.

Code: Alles auswählen

$check_string = 'aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ0123456789'; 
      $check_errors = 0; 


      for ($i = 1; $i <= strlen($username); $i++) 
      { 
         $j = $i - 1; 
         $check_char = $username{$j}; 
         if (!strpos($check_string, $check_char)) 
         { 
            $check_errors++; 
         } 
      } 


      if ($check_errors != 0) 
      { 
         $error = TRUE; 
         $error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . sprintf($lang['Username_not_alphanumeric'], $check_errors); 
      } 

Verfasst: 07.05.2007 12:32
von Parse Error
@Underhill:

Danke auch von mir. Ein Moderator wollte einen Beitrag löschen, dessen Titel ein ' enthalten hat, und hat daraufhin einen SQL-Error erhalten. Deswegen übrigens:
INSERT INTO phpbb_topics (topic_title, topic_poster, topic_time, forum_id, topic_status, topic_first_post_id, topic_last_post_id) VALUES ('Sepp's Suppe', 18, 1150854375, 62, 0, 6125, 6125)
Für mich reichte folgende Lösung, die ' durch ´ ersetzt:

Code: Alles auswählen

$post_subject = preg_replace("/([\'])+/", "\´", $post_subject);
P.E.