ilch Forum » Ilch Clan 1.1 » Allgemein » Ich Wünsche mir eine Anti-Spam funktion

Geschlossen
  1. #61
    User Pic
    sCoRpIoN Mitglied
    Registriert seit
    03.03.2005
    Beiträge
    1.883
    Beitragswertungen
    0 Beitragspunkte
    liegt daran das du einen jeden Templateplatzhalter zuvor in den dazugehörigen *.php-files definieren musst; ansonsten wirste damit wohl keinen erfolg haben;

    mfg
    scorp
    free-design: externer Link

    --## externer Link ##--
    0 Mitglieder finden den Beitrag gut.
  2. #62
    User Pic
    mibo73 Mitglied
    Registriert seit
    25.07.2006
    Beiträge
    129
    Beitragswertungen
    0 Beitragspunkte
    Ok, warum geht es dann im Gästebuch und in der Newpost nicht?

    Nachtrag: In der Ilch 1.1 von mir ist der Antispam unter allg.php untergebracht.


    Zuletzt modifiziert von mibo73 am 25.01.2007 - 05:48:49
    0 Mitglieder finden den Beitrag gut.
  3. #63
    User Pic
    mibo73 Mitglied
    Registriert seit
    25.07.2006
    Beiträge
    129
    Beitragswertungen
    0 Beitragspunkte
    Wie definiere ich denn ansonsten den Platzhalter?
    0 Mitglieder finden den Beitrag gut.
  4. #64
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Such einfach mal dort wo es geht nach ANTISPAM
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  5. #65
    User Pic
    mibo73 Mitglied
    Registriert seit
    25.07.2006
    Beiträge
    129
    Beitragswertungen
    0 Beitragspunkte
    Das, was in der gbook und der shoutbox zu finden ist, steht auch in der newpost bei mir auch drin. Hilft es evtl. wenn ich von der htm und php mal den Code hier rein setze?
    0 Mitglieder finden den Beitrag gut.
  6. #66
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Für angemeldete User gibts kein Antispam bei den News, mal als Gast auf deine Seite gehen?
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  7. #67
    User Pic
    mibo73 Mitglied
    Registriert seit
    25.07.2006
    Beiträge
    129
    Beitragswertungen
    0 Beitragspunkte
    Ähm, wer spricht denn von den News? Ich spreche von der Datei newpost vom Forum ....

    Desweiteren in der Shoutbox und im Gästebuch ist der Antispam auch als angemeldeter User aktiv ....


    Zuletzt modifiziert von mibo73 am 27.01.2007 - 10:42:00
    0 Mitglieder finden den Beitrag gut.
  8. #68
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Ähm ja... grumml
    Ja kannst natürlich posten
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  9. #69
    User Pic
    mibo73 Mitglied
    Registriert seit
    25.07.2006
    Beiträge
    129
    Beitragswertungen
    0 Beitragspunkte
    Hier laso mal der Code. Findet da jemand, was ich vergessen habe?

    new_post.php
    <?php 
    #   Copyright by: Manuel
    #   Support: www.ilch.de
    
    
    defined ('main') or die ( 'no direct access' );
    
    
    if ($aktTopicRow['stat'] == 0 OR $forum_rights['reply'] == FALSE ) {
      if ( $aktTopicRow['stat'] == 0 ) {
    	  $forum_failure[] = $lang['topicclosed'];  
    	} else {
    	  $forum_failure[] = $lang['nopermission'];
    	}
    	check_forum_failure($forum_failure);
    }
    
    $title = $allgAr['title'].' :: Forum :: '.$aktForumRow['kat'].' :: '.$aktForumRow['name'].' :: '.$aktForumRow['name'].' :: neuer Beitrag';
    $hmenu  = $extented_forum_menu.'<a class="smalfont" href="index.php?forum">Forum</a><b> &raquo; </b><a class="smalfont" href="index.php?forum-showcat-'.$aktForumRow['cid'].'">'.$aktForumRow['kat'].'</a><b> &raquo; </b><a class="smalfont" href="index.php?forum-showtopics-'.$fid.'">'.$aktForumRow['name'].'</a><b> &raquo; </b>';
    $hmenu .= '<a class="smalfont" href="index.php?forum-showposts-'.$tid.'">'.$aktTopicRow['name'].'</a>'.$extented_forum_menu_sufix;
    
    
    $dppk_time = time();
    $time = time();
    if (!isset($_SESSION['klicktime'])) { $_SESSION['klicktime'] = 0; }
    
    $topic = '';
    $txt   = '';
    $xnn   = '';
    
    if (isset($_POST['txt'])) {
      $txt = trim(escape($_POST['txt'], 'textarea'));
    }
    if (isset($_POST['Gname'])) {
      $xnn = trim(escape_nickname($_POST['Gname']));
    }
    
    if (($_SESSION['klicktime'] + 15) > $dppk_time OR empty($txt) OR !empty($_POST['priview']) OR (empty($_POST['Gname']) AND !loggedin())) {
    
      $design = new design ( $title , $hmenu, 1, 'forum/index.htm' );
      $design->header();
    
      $name = '';
      if ( !loggedin() ) {
        $name  = '<tr><td class="Cmite"0><b>'.$lang['name'].'</b></td>'; 
        $name .= '<td class="Cnorm"><input type="text" value="'.unescape($xnn).'" maxlength="15" name="Gname"></td></tr>';
      }
      
      $tpl = new tpl ('forum/newpost');
    
      $xtext = '';
      if ( $menu->getA(3) == 'z' ) {
        $row = db_fetch_object(db_query("SELECT txt,erst FROM prefix_posts WHERE id = ".$menu->getE(3)));
    	  $xtext = '[quote='.escape_nickname($row->erst).']'."\n".$row->txt."\n[/quote]";
      }
    
      if ( $menu->getA(3) == 'f' ) {
        $r = db_fetch_assoc(db_query("SELECT id,text,title FROM prefix_faqs WHERE id = ".$menu->getE(3)));
    	  $xtext = 'FAQ Artikel: [url=index.php?faqs-s'.$r['id'].'#FAQ'.$r['id'].']'.$r['title'].'[/url]'."\n".unescape($r['text']);
      }
    
      if (isset($_POST['priview'])) {
        $tpl->set_out('txt', bbcode($txt), 0);
      }
      if (empty($txt)) {
        $txt = $xtext;
      }
    
      $tpl = new tpl ('forum/newpost');
    
      $ar = array (
        'txt'    => escape_for_fields(unescape($txt)),
        'tid'    => $tid,
        'name'   => $name,
        'SMILIES'  => getsmilies(),
        'antispam' => get_antispam ('newpost', 0),
    
      );
      
      $tpl->set_ar_out($ar,1);
    			
      $erg = db_query('SELECT erst, txt FROM `prefix_posts` WHERE tid = "'.$tid.'" ORDER BY time DESC LIMIT 0,5');
      while ($row = db_fetch_assoc($erg)) {
        $row['txt'] = bbcode($row['txt']);
        $tpl->set_ar_out($row, 2);
      }
      $tpl->out(3);
      
      
    } else {
    
    #antispam
    if(chk_antispam ('newpost' ) != false) 
    { 
    #Antispam
      # save post
      $_SESSION['klicktime'] = $dppk_time;
      
      $design = new design ( $title , $hmenu, 1, 'forum/index.htm' );
      $design->header();
      
      if (loggedin()) { 
        $uid = $_SESSION['authid']; 
    		$erst = escape($_SESSION['authname'],'string'); 
    	  db_query("UPDATE `prefix_user` set posts = posts+1 WHERE id = ".$uid);
      } else  { 
    	  $erst = $xnn;  
    		$uid = 0; 
      }
    #antispam
    }
    else { 
    $design = new design ( $title , $hmenu); 
    $design->header(); 
    echo 'Falscher Antispam<br /> 
    <a href="javascript:window.history.back();">Zur&uuml;ck</a>'; 
    $design->footer();  
    } 
    #antispam
          
      # topic alert ausfuehren.
      $topic_alerts_abf = "SELECT
          prefix_topics.name as topic,
          prefix_user.email as email,
          prefix_user.name as user
        FROM prefix_topic_alerts
          LEFT JOIN prefix_topics ON prefix_topics.id = prefix_topic_alerts.tid
          LEFT JOIN prefix_user   ON prefix_user.id   = prefix_topic_alerts.uid
        WHERE prefix_topic_alerts.tid = ".$tid;
          
      $topic_alerts_erg = db_query($topic_alerts_abf);
      while ($topic_alerts_row = db_fetch_assoc($topic_alerts_erg)) {
        $page = $_SERVER["HTTP_HOST"].$_SERVER["SCRIPT_NAME"];
        $text = sprintf ($lang['topicalertmessage'], $topic_alerts_row['user'], $topic_alerts_row['topic'], $page, $tid);
        icmail ($topic_alerts_row['email'], 'neue Antwort im Thema: "'.$topic_alerts_row['topic'].'"', $text);
        debug ($topic_alerts_row['email']);
      }
      db_query("DELETE FROM prefix_topic_alerts WHERE tid = ".$tid);
          
      # topic alert insert wenn gewaehlt.
      if (!empty($_POST['topic_alert']) AND $_POST['topic_alert'] == 'yes' AND loggedin()) {
        if (0 == db_result(db_query("SELECT COUNT(*) FROM prefix_topic_alerts WHERE uid = ".$_SESSION['authid']." AND tid = ".$tid),0)) {
          db_query("INSERT INTO prefix_topic_alerts (tid,uid) VALUES (".$tid.", ".$_SESSION['authid'].")");
        }
      }
      # topic alert ende
      
      db_query ("INSERT INTO `prefix_posts` (tid,fid,erst,erstid,time,txt) VALUES ( ".$tid.", ".$fid.", '".$erst."', ".$uid.", ".$time.", '".$txt."')");
      $pid = db_last_id();
    			
    	db_query("UPDATE `prefix_topics` SET last_post_id = ".$pid.", rep = rep + 1 WHERE id = ".$tid);
    	db_query("UPDATE `prefix_forums` SET posts = posts + 1, last_post_id = ".$pid." WHERE id = ".$fid );
    			
    	$page = ceil ( ($aktTopicRow['rep']+1)  / $allgAr['Fpanz'] );
    	
      # toipc als gelesen markieren
      $_SESSION['forumSEE'][$fid][$tid] = time();
       
    	wd ( array ( 
    	  $lang['backtotopic'] => 'index.php?forum-showposts-'.$tid.'-p'.$page.'#'.$pid,
    		$lang['backtotopicoverview'] => 'index.php?forum-showtopics-'.$fid
    	) , $lang['createpostsuccessful'] , 3 );
    }
    
    $design->footer();									
    ?>


    newpost.htm:
    <table width="100%" border="0" cellspacing="1" class="border" cellpadding="5">
      <tr>
    	  <th colspan="2" height="20" class="Chead">
    		  <b>{_lang_preview}</b>
    		</th>
    	</tr><tr>
        <td class="Cmite">{txt}</td>
      </tr>
    </table>
    <br /><br />
    {EXPLODE}
    <script language="JavaScript" type="text/javascript">
    <!--
      function form_check() {
    	  document.form.submit.disabled = true;
     	  document.form.submit.style.background = '#FF0000';
        document.form.submit.value = '{_lang_send}...';
        return true;
    	}
    //-->
    </script>
    
    <form action="index.php?forum-newpost-{tid}" method="POST" name="form" onSubmit="return form_check()">
    <script type='text/javascript' src='include/includes/js/bbcode.js'></script> 		
    <script type='text/javascript' src='include/includes/js/interface.js'></script>
    
    <table width="100%" border="0" cellspacing="1" class="border" cellpadding="5">
      <TR>
    	  <td colspan="2" height="20" class="Chead">
    		  <b>{_lang_writeananswer}</b>
    		</td>
    	</tr>{name}<tr>
    	  <td colspan="2" height="20" class="Cmite">
    		  <b>{_lang_writeyourpost}</td>
    		</td>
    	</tr><tr>
    	  <td class="Cmite" rowspan="2" valign="top">{SMILIES}</td>
    	  <td class="Cnorm">
          <!-- BB Code START -->
    	    <a href="javascript:bbcode_insert('b','Gib hier den Text an der formatiert werden soll.')"><img src="include/images/icons/bbcode_bold.gif" alt="Fett formatieren" title="Fett formatieren" width="23" height="22" border="0"></a>
                                    <a href="javascript:bbcode_insert('i','Gib hier den Text an der formatiert werden soll.')"><img src="include/images/icons/bbcode_italic.gif" alt="Kursiv formatieren" title="Kursiv formatieren" width="23" height="22" border="0"></a>
                                    <a href="javascript:bbcode_insert('u','Gib hier den Text an der formatiert werden soll.')"><img src="include/images/icons/bbcode_underline.gif" alt="Unterstrichen formatieren" title="Unterstrichen formatieren" width="23" height="22" border="0"></a>
                                    <a href="javascript:bbcode_insert('s','Gib hier den Text an der formatiert werden soll..')"><img src="include/images/icons/bbcode_strike.gif" alt="Durchgestrichen formatieren" title="Durchgestrichen formatieren" width="23" height="22" border="0"></a>
                                    &nbsp;
                                    <a href="javascript:bbcode_insert('left','Gib hier den Text an der formatiert werden soll.')"><img src="include/images/icons/bbcode_left.gif" alt="Links ausrichten" title="Links ausrichten" width="23" height="22" border="0"></a>
                                    <a href="javascript:bbcode_insert('center','Gib hier den Text an der formatiert werden soll.')"><img src="include/images/icons/bbcode_center.gif" alt="Mittig ausrichten" title="Mittig ausrichten" width="23" height="22" border="0"></a>
                                    <a href="javascript:bbcode_insert('right','Gib hier den Text an der formatiert werden soll.')"><img src="include/images/icons/bbcode_right.gif" alt="Rechts ausrichten" title="Rechts ausrichten" width="23" height="22" border="0"></a>
                                    &nbsp;
                                    <a href="javascript:bbcode_insert('list','Gib hier den Text ein der aufgelistet werden soll n Um die liste zu beenden einfach auf Abbrechen klicken.')"><img src="include/images/icons/bbcode_list.gif" alt="Liste erzeugen" title="Liste erzeugen" width="23" height="22" border="0"></a>
                                    <a href="javascript:bbcode_insert('emph','Gib hier den Text ein der hervorgehoben werden soll.')"><img src="include/images/icons/bbcode_emph.gif" alt="Text hervorheben" title="Text hervorheben" width="23" height="22" border="0"></a>
                                    <a href="javascript:bbcode_insert_with_value('color','Gib hier den Text an der formatiert werden soll.','Gib hier die Farbe an in HTML form z.B. #000000.')"><img src="include/images/icons/bbcode_color.gif" alt="Text f&auml;rben" title="Text f&auml;rben" width="23" height="22" border="0"></a>
                                    <a href="javascript:bbcode_insert_with_value('size','Gib hier den Text an der formatiert werden soll.','Gib hier die Gr&ouml;&szlig;e des textes in Pixel an. n Pixellimit liegt bei 20px !!!')"><img src="include/images/icons/bbcode_size.gif" alt="Textgr&ouml;&szlig;e ver&auml;ndern" title="Textgr&ouml;&szlig;e ver&auml;ndern" width="23" height="22" border="0"></a>
                                    &nbsp;                            
                                    <a href="javascript:bbcode_insert_with_value('url','Gib hier den namen des links an.','Gib hier die Adresse zu welcher verlinkt werden soll.')"><img src="include/images/icons/bbcode_hyperlink.gif" alt="Hyperlink einf&uuml;gen" title="Hyperlink einf&uuml;gen" width="23" height="22" border="0"></a>
                                    <a href="javascript:bbcode_insert_with_value('mail','Gib hier den namen des links an.','Gib hier die eMail - Adresse an.')"><img src="include/images/icons/bbcode_email.gif" alt="eMail hinzuf&uuml;gen" title="eMail hinzuf&uuml;gen" width="23" height="22" border="0"></a>
                                    &nbsp;
                                    <a href="javascript:bbcode_insert('img','Gib hier die Adresse des Bildes an.  Die Breite und H&ouml;he des Bildes ist auf 500x500 eingeschränkt und würde verkleinert dargstellt werden.')"><img src="include/images/icons/bbcode_image.gif" alt="Bild einf&uuml;gen" title="Bild einf&uuml;gen" width="23" height="22" border="0"></a>
                                    <a href="javascript:bbcode_insert('shot','Gib hier die Adresse des Screens an.  Die Breite und H&ouml;he des Bildes ist auf 80x80 eingeschränkt und wird verkleinert dargstellt.')"><img src="include/images/icons/bbcode_shot.gif" alt="Bild einf&uuml;gen" title="Screen einf&uuml;gen" width="23" height="22" border="0"></a>
                                    &nbsp;
                                    <a href="javascript:bbcode_code_insert('code')"><img src="include/images/icons/bbcode_code.gif" alt="Code einf&uuml;gen" title="Code einf&uuml;gen" width="23" height="22" border="0"></a>
                                    <a href="javascript:bbcode_code_insert('quote')"><img src="include/images/icons/bbcode_quote.gif" alt="Zitat einf&uuml;gen" title="Zitat einf&uuml;gen" width="23" height="22" border="0"></a>     
          <!-- BB Code ENDE -->
    		</td>
    	</tr><tr>
        <td width="80%" class="Cnorm"> 
          <textarea name="txt" rows="15" cols="55" tabindex="2">{txt}</textarea>
        </td>
      </tr><tr>
        <td class="Cmite">{_lang_options}</td>
        <td class="Cnorm"><input id="topic_alert" type="checkbox" value="yes" name="topic_alert" /><label for="topic_alert"> {_lang_mailonreply}</a></td>
      </tr><tr>
        <td class="Cmite">Antispam</td>
        <td class="Cnorm"> {ANTISPAM} <td>	
      </tr><tr class="Cmite">
        <td></td>
        <td><input type="submit" name="priview" value="{_lang_preview}" accesskey='v' />&nbsp; <input type="submit" name="submit" value="{_lang_formsub}" accesskey='s' / >&nbsp; {ANTISPAM} &nbsp;</td>
    	</tr>
    </table>
    </form>
    <br />
    <b>{_lang_overvieaboutthelast5posts}</b>
    <table width="100%" border="0" cellspacing="1" class="border" cellpadding="3">
      {EXPLODE}
    	<tr class="Cnorm">
    	  <td valign="top" width="20%">{erst}</td>
        <td width="80%">{txt}</td>
    	</tr>{EXPLODE}
    </table>
    0 Mitglieder finden den Beitrag gut.
  10. #70
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Dein Problem ist glaube ich einfach, dass du antispam definiert hast, aber im Template ANTISPAM anzeigen willst, allerdings ist Groß- und Kleinschreibung nicht egal, also beides klein oder beides groß, oder gemischt zwinker aber halt gleich.
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  11. #71
    User Pic
    mibo73 Mitglied
    Registriert seit
    25.07.2006
    Beiträge
    129
    Beitragswertungen
    0 Beitragspunkte
    Danke, das wars.

    Immer diese dummen kleinigkeiten.
    0 Mitglieder finden den Beitrag gut.
  12. #72
    User Pic
    SpeedyGonzales Mitglied
    Registriert seit
    24.10.2006
    Beiträge
    28
    Beitragswertungen
    0 Beitragspunkte
    Habe seit kurzem auch das Problem mit Spam im Forum und jetzt wollte ich auch die Antispam Funktion in die new_post.php und die newpost.htm einfügen.
    Habs soweit auch hinbekommen nur wird der Post auch bei falschem Ergebnis übernommen, es wird zwar angezeigt "Falscher Antispam" trotzdem wird der Post gespeichert.
    Und wen man eingeloggt ist wird auch der Antispam angezeigt ich denke das soll nicht so sein.

    Was ist da falsch bzw. fehlt und muss ergänzt werden?

    Hier mal meine Dateien:

    new_post.php
    <?php 
    #   Copyright by: Manuel
    #   Support: www.ilch.de
    
    
    defined ('main') or die ( 'no direct access' );
    
    
    if ($aktTopicRow['stat'] == 0 OR $forum_rights['reply'] == FALSE ) {
      if ( $aktTopicRow['stat'] == 0 ) {
    	  $forum_failure[] = $lang['topicclosed'];  
    	} else {
    	  $forum_failure[] = $lang['nopermission'];
    	}
    	check_forum_failure($forum_failure);
    }
    
    $title = $allgAr['title'].' :: Forum :: '.$aktForumRow['kat'].' :: '.$aktForumRow['name'].' :: '.$aktForumRow['name'].' :: neuer Beitrag';
    $hmenu  = $extented_forum_menu.'<a class="smalfont" href="index.php?forum">Forum</a><b> &raquo; </b><a class="smalfont" href="index.php?forum-showcat-'.$aktForumRow['cid'].'">'.$aktForumRow['kat'].'</a><b> &raquo; </b><a class="smalfont" href="index.php?forum-showtopics-'.$fid.'">'.$aktForumRow['name'].'</a><b> &raquo; </b>';
    $hmenu .= '<a class="smalfont" href="index.php?forum-showposts-'.$tid.'">'.$aktTopicRow['name'].'</a>'.$extented_forum_menu_sufix;
    
    
    $dppk_time = time();
    $time = time();
    if (!isset($_SESSION['klicktime'])) { $_SESSION['klicktime'] = 0; }
    
    $topic = '';
    $txt   = '';
    $xnn   = '';
    
    if (isset($_POST['txt'])) {
      $txt = trim(escape($_POST['txt'], 'textarea'));
    }
    if (isset($_POST['Gname'])) {
      $xnn = trim(escape_nickname($_POST['Gname']));
    }
    
    if (($_SESSION['klicktime'] + 15) > $dppk_time OR empty($txt) OR !empty($_POST['priview']) OR (empty($_POST['Gname']) AND !loggedin())) {
    
      $design = new design ( $title , $hmenu, 1);
      $design->header();
    
      $name = '';
      if ( !loggedin() ) {
        $name  = '<tr><td class="Cmite"0><b>'.$lang['name'].'</b></td>'; 
        $name .= '<td class="Cnorm"><input type="text" value="'.unescape($xnn).'" maxlength="15" name="Gname"></td></tr>';
      }
      
      $tpl = new tpl ('forum/newpost');
    
      $xtext = '';
      if ( $menu->getA(3) == 'z' ) {
        $row = db_fetch_object(db_query("SELECT txt,erst FROM prefix_posts WHERE id = ".$menu->getE(3)));
    	  $xtext = '[quote='.escape_nickname($row->erst).']'."\n".$row->txt."\n[/quote]";
      }
    
      if ( $menu->getA(3) == 'f' ) {
        $r = db_fetch_assoc(db_query("SELECT id,text,title FROM prefix_faqs WHERE id = ".$menu->getE(3)));
    	  $xtext = 'FAQ Artikel: [url=index.php?faqs-s'.$r['id'].'#FAQ'.$r['id'].']'.$r['title'].'[/url]'."\n".unescape($r['text']);
      }
    
      if (isset($_POST['priview'])) {
        $tpl->set_out('txt',FE_Vote2HTML(1,bbcode($txt),TRUE), 0);
      }
      if (empty($txt)) {
        $txt = $xtext;
      }
    
      $tpl = new tpl ('forum/newpost');
    
      $ar = array (
        'txt'    => escape_for_fields(unescape($txt)),
        'tid'    => $tid,
        'name'   => $name,
        'SMILIES'  => getsmilies(),
        'antispam' => get_antispam ('newpost', 0),
      );
      
      $tpl->set_ar_out($ar,1);
    			
      $erg = db_query('SELECT id,erst, txt FROM `prefix_posts` WHERE tid = "'.$tid.'" ORDER BY time DESC LIMIT 0,5');
      while ($row = db_fetch_assoc($erg)) {
        $row['txt'] = bbcode($row['txt']);
    
        //Forumex - begin
        $row['txt'] = FE_Vote2HTML($row['id'],$row['txt'],TRUE);
        //Forumex - end
    
        $tpl->set_ar_out($row, 2);
      }
      $tpl->out(3);
      
      
    } else {
    
    #antispam 
    if(chk_antispam ('newpost' ) != false) 
    { 
    #Antispam 
      # save post 
      $_SESSION['klicktime'] = $dppk_time; 
       
      $design = new design ( $title , $hmenu, 1, 'forum/index.htm' ); 
      $design->header(); 
       
      if (loggedin()) { 
        $uid = $_SESSION['authid']; 
            $erst = escape($_SESSION['authname'],'string'); 
          db_query("UPDATE `prefix_user` set posts = posts+1 WHERE id = ".$uid); 
      } else  { 
          $erst = $xnn;   
            $uid = 0; 
      } 
    #antispam 
    } 
    else { 
    $design = new design ( $title , $hmenu); 
    $design->header(); 
    echo 'Falscher Antispam<br /> 
    <a href="javascript:window.history.back();">Zur&uuml;ck</a>'; 
    $design->footer();   
    } 
    #antispam
    
      # save post
      $_SESSION['klicktime'] = $dppk_time;
      
      $design = new design ( $title , $hmenu, 1);
      $design->header();
      
      if (loggedin()) { 
        $uid = $_SESSION['authid']; 
    		$erst = escape($_SESSION['authname'],'string'); 
    	  db_query("UPDATE `prefix_user` set posts = posts+1 WHERE id = ".$uid);
      } else  { 
    	  $erst = $xnn;  
    		$uid = 0; 
      }
          
      # topic alert ausfuehren.
      $topic_alerts_abf = "SELECT
          prefix_topics.name as topic,
          prefix_user.email as email,
          prefix_user.name as user
        FROM prefix_topic_alerts
          LEFT JOIN prefix_topics ON prefix_topics.id = prefix_topic_alerts.tid
          LEFT JOIN prefix_user   ON prefix_user.id   = prefix_topic_alerts.uid
        WHERE prefix_topic_alerts.tid = ".$tid;
          
      $topic_alerts_erg = db_query($topic_alerts_abf);
      while ($topic_alerts_row = db_fetch_assoc($topic_alerts_erg)) {
        $page = $_SERVER["HTTP_HOST"].$_SERVER["SCRIPT_NAME"];
        $text = sprintf ($lang['topicalertmessage'], $topic_alerts_row['user'], $topic_alerts_row['topic'], $page, $tid);
        icmail ($topic_alerts_row['email'], 'neue Antwort im Thema: "'.$topic_alerts_row['topic'].'"', $text);
        debug ($topic_alerts_row['email']);
      }
      db_query("DELETE FROM prefix_topic_alerts WHERE tid = ".$tid);
          
      # topic alert insert wenn gewaehlt.
      if (!empty($_POST['topic_alert']) AND $_POST['topic_alert'] == 'yes' AND loggedin()) {
        if (0 == db_result(db_query("SELECT COUNT(*) FROM prefix_topic_alerts WHERE uid = ".$_SESSION['authid']." AND tid = ".$tid),0)) {
          db_query("INSERT INTO prefix_topic_alerts (tid,uid) VALUES (".$tid.", ".$_SESSION['authid'].")");
        }
      }
      # topic alert ende
      
      db_query ("INSERT INTO `prefix_posts` (tid,fid,erst,erstid,time,txt) VALUES ( ".$tid.", ".$fid.", '".$erst."', ".$uid.", ".$time.", '".$txt."')");
      $pid = db_last_id();
    			
    	db_query("UPDATE `prefix_topics` SET last_post_id = ".$pid.", rep = rep + 1 WHERE id = ".$tid);
    	db_query("UPDATE `prefix_forums` SET posts = posts + 1, last_post_id = ".$pid." WHERE id = ".$fid );
    	
      //Forumex - begin
      FE_CreateVote($pid,$txt);
      //Forumex - end
    		
    	$page = ceil ( ($aktTopicRow['rep']+1)  / $allgAr['Fpanz'] );
    	
      # toipc als gelesen markieren
      $_SESSION['forumSEE'][$fid][$tid] = time();
       
    	wd ( array ( 
    	  $lang['backtotopic'] => 'index.php?forum-showposts-'.$tid.'-p'.$page.'#'.$pid,
    		$lang['backtotopicoverview'] => 'index.php?forum-showtopics-'.$fid
    	) , $lang['createpostsuccessful'] , 3 );
    }
    
    $design->footer();									
    ?>



    newpost.htm
    <table width="100%" border="0" cellspacing="1" class="border" cellpadding="5">
      <tr>
    	  <th colspan="2" height="20" class="Chead">
    		  <b>{_lang_preview}</b>
    		</th>
    	</tr><tr>
        <td class="Cmite">{txt}</td>
      </tr>
    </table>
    <br /><br />
    {EXPLODE}
    <script language="JavaScript" type="text/javascript">
    <!--
      function form_check() {
    	  document.form.submit.disabled = true;
     	  document.form.submit.style.background = '#FF0000';
        document.form.submit.value = '{_lang_send}...';
        return true;
    	}
    //-->
    </script>
    
    <form action="index.php?forum-newpost-{tid}" method="POST" name="form" onSubmit="return form_check()">
    		
    <script type='text/javascript' src='include/includes/js/bbcode.js'></script>
    
    <table width="100%" border="0" cellspacing="1" class="border" cellpadding="5">
      <TR>
    	  <td colspan="2" height="20" class="Chead">
    		  <b>{_lang_writeananswer}</b>
    		</td>
    	</tr>{name}<tr>
    	  <td colspan="2" height="20" class="Cmite">
    		  <b>{_lang_writeyourpost}</td>
    		</td>
    	</tr><tr>
    	  <td class="Cmite" rowspan="2" valign="top">{SMILIES}</td>
    	  <td class="Cnorm">
          <!-- BB Code START -->
    	  {__BBCodeButtons__}
    		 <!-- BB Code ENDE -->
    		</td>
    	</tr><tr>
        <td width="80%" class="Cnorm"> 
          <textarea style="width: 98%" name="txt" rows="15" cols="55" tabindex="2">{txt}</textarea>
        </td>
      </tr><tr>
        <td class="Cmite">{_lang_options}</td>
        <td class="Cnorm"><input id="topic_alert" type="checkbox" value="yes" name="topic_alert" /><label for="topic_alert"> {_lang_mailonreply}</a></td>
    	</tr><tr>    
        <td class="Cmite">Antispam</td> 
        <td class="Cnorm"> {antispam} <td>
    </tr><tr class="Cmite">
        <td></td>
        <td><input type="submit" name="priview" value="{_lang_preview}" accesskey='v' />&nbsp;<input type="submit" name="submit" value="{_lang_formsub}" accesskey='s' /></td>
    	</tr>
    </table>
    </form>
    <br />
    <b>{_lang_overvieaboutthelast5posts}</b>
    <table width="100%" border="0" cellspacing="1" class="border" cellpadding="3">
      {EXPLODE}
    	<tr class="Cnorm">
    	  <td valign="top" width="20%">{erst}</td>
        <td width="80%">{txt}</td>
    	</tr>{EXPLODE}
    </table>
    0 Mitglieder finden den Beitrag gut.
  13. #73
    User Pic
    Elmoe Mitglied
    Registriert seit
    05.07.2006
    Beiträge
    112
    Beitragswertungen
    0 Beitragspunkte
    würd mich auch mal interessieren wie lange es dauert bis man mit php was anfangen kann und was ihr so zum lernen empfehlen würdet. pages, bücher oder sowas...
    danke
    MFG
    Besucht uns doch mal:
    externer Link
    Multigaming auf Bayrisch seit 2006!
    0 Mitglieder finden den Beitrag gut.
  14. #74
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Wenn man sich wirklich damit beschäftigt, kann man die Grundlagen wirklich in einer Woche, den Rest gerade ilch spezifische Sachen und halt auch andere Sachen lernst du durch Verändern/Anpassen der Dateien, wenn du das dann mal eine Weile gemacht hast, hast du genügend Fertigkeiten um eigene Scripte/Module zu schreiben, natürlich wenn du immer mal was machst, gute Übung ist auch Fragen von anderen (hier im Forum) umzusetzen, Vorraussetzung ist, dass man HTML beherrscht, sonst muss man das erstmal lernen.

    Es gibt auch im Internet genügend Anlaufstellen, wo einem die Grundlagen erklärt werden -> www.ilch.de/forum-showposts-15952-p1.html

    -----------------------------------------------------------------------------------

    Wenn du bei dem $design->footer(); in Zeile 121 eine 1 in die Klammer schreibst sollte es gehen.
    Bei neueren Ilchversionen > 1.1F sollte der Antispam nur für Gäste/User angezeigt werden, je nachdem was im Adminmenü eingetragen ist.


    Zuletzt modifiziert von Mairu am 21.05.2007 - 08:08:16
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  15. #75
    User Pic
    SpeedyGonzales Mitglied
    Registriert seit
    24.10.2006
    Beiträge
    28
    Beitragswertungen
    0 Beitragspunkte
    So hab es so gemacht wie du geschrieben hast, eine 1 bei $design->footer(); eingefügt, jetzt kommt immer die Meldung "Falscher Antispam" egal ob richtig oder falsch gerechnet und eingeloggt oder nicht.
    Woran kann das liegen?....nutze noch die Version 1.1E
    0 Mitglieder finden den Beitrag gut.
  16. #76
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Die 1 ist lediglich da, damit alles was in der Datei danach kommt, nicht mehr ausgeführt wird, das kann mit dem neuen Fehler eigentlich nichts zu tun haben.
    Ja dann empfehle ich dir upzudaten zwinker
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  17. #77
    User Pic
    SpeedyGonzales Mitglied
    Registriert seit
    24.10.2006
    Beiträge
    28
    Beitragswertungen
    0 Beitragspunkte
    So ich habe jetzt auf version 1.1H upgedatet was auch ohne Probleme funktionierte, nur was muss ich jetzt machen damit diese Spamerei im Forum aufhört.
    Muss ich was in den Dateien new_post.php, newpost.htm ändern oder geht das einfacher?
    0 Mitglieder finden den Beitrag gut.
  18. #78
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Das einfachste wäre das Forum nicht für Gäste freizugeben zwinker
    Ansonsten steht doch schon alles da?
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  19. #79
    User Pic
    Fr33man Mitglied
    Registriert seit
    12.05.2007
    Beiträge
    14
    Beitragswertungen
    0 Beitragspunkte
    Servus,
    Soweit hab ich (endlich) alles funktionstüchtig hinbekommen, nur eine Sache stört mich noch. hm... wie soll ich das am besten erklären...

    Hier erstmal ein ausschnitt meiner datei:
    die new_post.php
    if(loggedin())
    {
    
    # save post
      $_SESSION['klicktime'] = $dppk_time;
      
      $design = new design ( $title , $hmenu, 1);
      $design->header();
      
      if (loggedin()) { 
        $uid = $_SESSION['authid']; 
    		$erst = escape($_SESSION['authname'],'string'); 
    	  db_query("UPDATE `prefix_user` set posts = posts+1 WHERE id = ".$uid);
      } else  { 
    	  $erst = $xnn;  
    		$uid = 0; 
    }}
    else {
    #antispam
    if(chk_antispam ('newpost' ) != false) 
    { 
    #Antispam
      # save post
      $_SESSION['klicktime'] = $dppk_time;
      
      $design = new design ( $title , $hmenu, 1 );
      $design->header();
      
      if (loggedin()) { 
        $uid = $_SESSION['authid']; 
            $erst = escape($_SESSION['authname'],'string'); 
          db_query("UPDATE `prefix_user` set posts = posts+1 WHERE id = ".$uid);
      } else  { 
          $erst = $xnn;  
            $uid = 0; 
      }
    #antispam
    }
    else { 
    $design = new design ( $title , $hmenu); 
    $design->header(); 
    echo 'Falscher Antispam! <a href="javascript:window.history.back();">Nochmal Versuchen</a><br /><br />
            <strong>Wichtig:</strong> Nachdem du auf &quot;Nochmal Versuchen&quot; Gedrückt hast <strong>unbedingt</strong> die Seite Refreshen!
    				 Dies ist Wichtig um den Antispam zurückzusetzen.'; 
    $design->footer(1);  
    } 
    #antispam
    }


    die htm datei ist erstmal uniteressant.

    So, mir geht es jetzt darum in der 1. if(loggedin()) abfrage den "Inhalt", der an das Template übergeben wird ( 'ANTISPAM') mit "neuerm" Inhalt zu füllen.

    Momentan ist es ja so, dass wenn in der *.htm irgendwo {ANTISPAM} steht ja später auf der HP die Rechenaufgabe angezeigt wird. Was ja auch in Ordnung ist, _wenn_ man als Gast drauf ist. Wenn man jetzt aber als User einen neuen Beitrag erstellen will sieht auch er die Aufgabe, die er aber dank der 2 if(loggedin()) abfragen nicht beantworten muss. Jetzt hab ich mir gedacht, ich könnte doch den "Platzhalter" (so nen ich das {ANTISPAM} einfach mal) mit anderen Daten füllen kann, wenn die Seite den Besucher als "Logged in" erkannt hat.
    Dann soll der Platzhalter später nicht die Rechenaufgabe zeigen sonder sowas wie "User Benötigen kein Antispam"

    Ich hab selber schon etwas probiert, aber des haut net so hin, wie ich mir des denk.

    Meine Idee war:
    if(loggedin())
    
    
    {
    	$keinas = 'user brauchen kein AS';
    	
    	$as = array (
        'ANTISPAM' => $keinas,
      );
    
    # save post
      $_SESSION['klicktime'] = $dppk_time;
      
      $design = new design ( $title , $hmenu, 1);
      $design->header();
      
      if (loggedin()) { 
        $uid = $_SESSION['authid']; 
    		$erst = escape($_SESSION['authname'],'string'); 
    	  db_query("UPDATE `prefix_user` set posts = posts+1 WHERE id = ".$uid);
      } else  { 
    	  $erst = $xnn;  
    		$uid = 0; 
      }
      }
      
      
      else .....


    aber leider ging das nicht.. (kein wunder bei meinen bescheidenen php Kenntnissen zwinker
    Ich hoffe ihr könnt mir bei diesem (hoffentlich) kleineren Problem etwas helfen

    Mfg Fr33man
    Alles, was einen Anfang hat, hat auch ein Ende, Mr. Fr33man.
    www.StalKerZ.de - German Gaming | www.Xianlung.de - TS & Webspace Sponsor
    0 Mitglieder finden den Beitrag gut.
  20. #80
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Naja der Codeausschnitt von dir ist denke ich mal nicht der richtige.
    Such mal nach
    'ANTISPAM' => get_antispam ('newpost', 0),
    und dort dann
    'ANTISPAM' => loggedin() = '' : get_antispam ('newpost', 0),
    dann sollte es nur noch bei Gästen angezeigt werden.
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  21. #81
    User Pic
    Fr33man Mitglied
    Registriert seit
    12.05.2007
    Beiträge
    14
    Beitragswertungen
    0 Beitragspunkte
    Hm.. leider nein.
    Wenn ich dein
    'ANTISPAM' => loggedin() = '' : get_antispam ('newpost', 0),
    mit Copy&Paste gegen den
    'ANTISPAM' => get_antispam('newpost', 0),
    Austausche erhallte ich folgende Fehlermeldung
    Fatal error: Can't use function return value in write context in C:\Programme\xampp\htdocs\ilch\include\contents\forum\new_post.php on line 76


    Ich kann mir schon vorstellen, worauf dieser code von dir hinaus will, (ANTISPAM soll ,wenn Loggedin, 'nix' anzeigen ansonsten get_antispam) aber leider gehts irgendwie net. Irgendwo hakts da etwas..

    Mfg Fr33man

    :Edit: Ha, Selbst gelöst! Naja, also fast selbst zwinker ich hab auf deiner Seite das Packet "Kommentare_1.0b) Runtergeladen und in der Readme.htm stand unter änderungen genau das drin, was gebraucht wird
        'ANTISPAM' => (loggedin()?'':get_antispam ('newskom', 0))

    Das nurnoch an die new_post.php angepasst
        'ANTISPAM' => (loggedin()?'':get_antispam ('newpost', 0))
    Und es läuft

    Danke für deine Hilfe!!


    Zuletzt modifiziert von Fr33man am 16.06.2007 - 12:22:38
    Alles, was einen Anfang hat, hat auch ein Ende, Mr. Fr33man.
    www.StalKerZ.de - German Gaming | www.Xianlung.de - TS & Webspace Sponsor
    0 Mitglieder finden den Beitrag gut.
  22. #82
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Ja hab die falsche Taste erwischt grumml kein = sondern ?
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  23. #83
    User Pic
    Fr33man Mitglied
    Registriert seit
    12.05.2007
    Beiträge
    14
    Beitragswertungen
    0 Beitragspunkte
    Kein Problem.. niemand is unfehlbar zwinker
    Jetzt hab ich aber noch eine Frage, um das das Spätere Aussehen der Seite net ganz so verwirrend zu machen.

    Da man bei einem Falschen Antispam auf eine Fehlerseite kam über die man über einen Zurück link wieder auf die newpost.htm geschickt wurde aber der vorher geschriebenen Text dann weg war UND die Antispam Abfrage wieder die selbe ist (also die kleinen Bilder Aktualisieren sich nicht und und man das vermeintlich richtige Ergebnis eingibt welches aber doch falsch ist wieder auf die Fehlerseite kommen würde) hab ich unter die Antispam Abfrage in der new_post.htm eine weiter Zeile eingefügt, in der eben genau das stand
    <td class="Cmite">Info:</td>
    	<td class="Cnorm"><strong>Wichtig: Antispam Falsch = Nachricht weg! <br /> Nach falschem Antispam unbedingt Seite Refreshen!!</strong></td>
    	</tr>

    Jetzt, nach den neuen umbauten in der php Datei, sieht ein angemeldeter zwar die Abfrage nicht mehr, aber immer noch die Tabelle mit den Infos. Wenn ich die jetzt aber aus der Template rausnehme siehts ja aber der Gast nicht mehr grumml
    Daher hab ich folgendes in die php noch mit eingefügt (evt. etwas laienhaft zunge )
    if(loggedin()){
      $ar = array (
        'txt'    => escape_for_fields(unescape($txt)),
        'tid'    => $tid,
        'name'   => $name,
        'SMILIES'  => getsmilies(),
        'ANTISPAM' => (loggedin()?'User Brauchen kein Antispam' :''),
      );}else{
      $ar = array (
        'txt'    => escape_for_fields(unescape($txt)),
        'tid'    => $tid,
        'name'   => $name,
        'SMILIES'  => getsmilies(),
        'ANTISPAM' => (get_antispam('newpost', 0) & '<tr><td class="Cmite">Info:</td><td class="Cnorm"><strong>Wichtig: Antispam Falsch = Nachricht weg! <br /> Nach falschem Antispam unbedingt Seite Refreshen!!</strong></td></tr>'),
      );}

    Was auch soweit klappt, nur wird als Gast jetzt weder die Abfrage angezeigt noch die Info Zeile. Ich hab auch keine Ahnung ob & der richtige befehl dafür ist und ob das ganze auch wirklich funktionieren könnte. sauer
    Für eine kleine Hilfe wäre ich dankbar zwinker

    mfg Fr33man


    Zuletzt modifiziert von Fr33man am 16.06.2007 - 13:06:46
    Alles, was einen Anfang hat, hat auch ein Ende, Mr. Fr33man.
    www.StalKerZ.de - German Gaming | www.Xianlung.de - TS & Webspace Sponsor
    0 Mitglieder finden den Beitrag gut.
  24. #84
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    Ne & ist falsch einfach mit . also
    get_antispam('newpost', 0).'<tr>....
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  25. #85
    User Pic
    Fr33man Mitglied
    Registriert seit
    12.05.2007
    Beiträge
    14
    Beitragswertungen
    0 Beitragspunkte
    Jo, DANKE!! Läuft! Dafür geb ich dir einen Drink aus(Y)

    Mfg Fr33man
    Alles, was einen Anfang hat, hat auch ein Ende, Mr. Fr33man.
    www.StalKerZ.de - German Gaming | www.Xianlung.de - TS & Webspace Sponsor
    0 Mitglieder finden den Beitrag gut.
  26. #86
    User Pic
    SpeedyGonzales Mitglied
    Registriert seit
    24.10.2006
    Beiträge
    28
    Beitragswertungen
    0 Beitragspunkte
    @Fr33man,

    könntest du mal den Code deiner Newpost.php hier posten, bei mir will der Antispam einfach nicht funktionieren und ich weiß auch nicht mehr weiter. Wäre toll wenn du das machen würdest vieleicht funktionierts mit deiner Newpost.php bei mir.

    Danke schonmal Speedy
    0 Mitglieder finden den Beitrag gut.
  27. #87
    User Pic
    Fr33man Mitglied
    Registriert seit
    12.05.2007
    Beiträge
    14
    Beitragswertungen
    0 Beitragspunkte
    Jo, kann ich gerne machen. Aber zur info: Das ist alles für Ilch 1.1D

    new_post.php
    <?php 
    #   Copyright by: Manuel
    #   Support: www.ilch.de
    
    
    defined ('main') or die ( 'no direct access' );
    
    
    if ($aktTopicRow['stat'] == 0 OR $forum_rights['reply'] == FALSE ) {
      if ( $aktTopicRow['stat'] == 0 ) {
    	  $forum_failure[] = $lang['topicclosed'];  
    	} else {
    	  $forum_failure[] = $lang['nopermission'];
    	}
    	check_forum_failure($forum_failure);
    }
    
    $title = $allgAr['title'].' :: Forum :: '.$aktForumRow['kat'].' :: '.$aktForumRow['name'].' :: '.$aktForumRow['name'].' :: neuer Beitrag';
    $hmenu  = $extented_forum_menu.'<a class="smalfont" href="index.php?forum">Forum</a><b> &raquo; </b><a class="smalfont" href="index.php?forum-showcat-'.$aktForumRow['cid'].'">'.$aktForumRow['kat'].'</a><b> &raquo; </b><a class="smalfont" href="index.php?forum-showtopics-'.$fid.'">'.$aktForumRow['name'].'</a><b> &raquo; </b>';
    $hmenu .= '<a class="smalfont" href="index.php?forum-showposts-'.$tid.'">'.$aktTopicRow['name'].'</a>'.$extented_forum_menu_sufix;
    
    
    $dppk_time = time();
    $time = time();
    if (!isset($_SESSION['klicktime'])) { $_SESSION['klicktime'] = 0; }
    
    $topic = '';
    $txt   = '';
    $xnn   = '';
    
    if (isset($_POST['txt'])) {
      $txt = trim(escape($_POST['txt'], 'textarea'));
    }
    if (isset($_POST['Gname'])) {
      $xnn = trim(escape_nickname($_POST['Gname']));
    }
    
    if (($_SESSION['klicktime'] + 15) > $dppk_time OR empty($txt) OR !empty($_POST['priview']) OR (empty($_POST['Gname']) AND !loggedin())) {
    
      $design = new design ( $title , $hmenu, 1);
      $design->header();
    
      $name = '';
      if ( !loggedin() ) {
        $name  = '<tr><td class="Cmite"0><b>'.$lang['name'].'</b></td>'; 
        $name .= '<td class="Cnorm"><input type="text" value="'.unescape($xnn).'" maxlength="15" name="Gname"></td></tr>';
      }
      
      $tpl = new tpl ('forum/newpost');
    
      $xtext = '';
      if ( $menu->getA(3) == 'z' ) {
        $row = db_fetch_object(db_query("SELECT txt,erst FROM prefix_posts WHERE id = ".$menu->getE(3)));
    	  $xtext = '[quote='.escape_nickname($row->erst).']'."\n".$row->txt."\n[/quote]";
      }
    
      if ( $menu->getA(3) == 'f' ) {
        $r = db_fetch_assoc(db_query("SELECT id,text,title FROM prefix_faqs WHERE id = ".$menu->getE(3)));
    	  $xtext = 'FAQ Artikel: [url=index.php?faqs-s'.$r['id'].'#FAQ'.$r['id'].']'.$r['title'].'[/url]'."\n".unescape($r['text']);
      }
    
      if (isset($_POST['priview'])) {
        $tpl->set_out('txt', bbcode($txt), 0);
      }
      if (empty($txt)) {
        $txt = $xtext;
      }
    
      $tpl = new tpl ('forum/newpost');
      
      #a Hier wird entschieden, was in der Template Datei bei {ANTISPAM} stehen soll
    	#wenn eingeloggt: User Brauchen kein Antispam
    	if(loggedin()){
      $ar = array (
        'txt'    => escape_for_fields(unescape($txt)),
        'tid'    => $tid,
        'name'   => $name,
        'SMILIES'  => getsmilies(),
        'ANTISPAM' => (loggedin()?'User Brauchen kein Antispam' :''),
      );}
      else
    	#wenn Gast: Rechenaufgabe + Eine weitere Spalte mit Info
      {
      $ar = array (
        'txt'    => escape_for_fields(unescape($txt)),
        'tid'    => $tid,
        'name'   => $name,
        'SMILIES'  => getsmilies(),
        'ANTISPAM' => (get_antispam('newpost', 0).'<tr><td class="Cmite">Info:</td><td class="Cnorm"><strong>Wichtig: Antispam Falsch = Nachricht weg! <br /> Nach falschem Antispam unbedingt Seite Refreshen!!</strong></td></tr>'),
      );}
      #a Ende
      
      $tpl->set_ar_out($ar,1);
    			
      $erg = db_query('SELECT erst, txt FROM `prefix_posts` WHERE tid = "'.$tid.'" ORDER BY time DESC LIMIT 0,5');
      while ($row = db_fetch_assoc($erg)) {
        $row['txt'] = bbcode($row['txt']);
        $tpl->set_ar_out($row, 2);
      }
      $tpl->out(3);
      
      
    } else 
    #b Hier wird entschieden ob Antispam zum Posten nötig ist
    {
    	#Wenn eingeloggt, dann ganz normal ohne Spamschutz
    if(loggedin())
    {    
    
    		# save post
      $_SESSION['klicktime'] = $dppk_time;
      
      $design = new design ( $title , $hmenu, 1);
      $design->header();
      
      if (loggedin()) { 
        $uid = $_SESSION['authid']; 
    		$erst = escape($_SESSION['authname'],'string'); 
    	  db_query("UPDATE `prefix_user` set posts = posts+1 WHERE id = ".$uid);
      } else  { 
    	  $erst = $xnn;  
    		$uid = 0; 
      }}
      else  
    	# Wenn Gast, muss die Aufgabe gelöst werden
      {
      
    		#wenn Antispam !nicht Falsch, dann wird der Post gespeichert
    if(chk_antispam ('newpost' ) != false) 
    { 
    			# save post
      $_SESSION['klicktime'] = $dppk_time;
      
      $design = new design ( $title , $hmenu, 1 );
      $design->header();
      
      if (loggedin()) { 
        $uid = $_SESSION['authid']; 
            $erst = escape($_SESSION['authname'],'string'); 
          db_query("UPDATE `prefix_user` set posts = posts+1 WHERE id = ".$uid);
      } else  { 
          $erst = $xnn;  
            $uid = 0; 
      }}
      
    		#Wenn Falsch dann umleitung zu einer Fehlerseite mit Zurück-Link + Info
    else { 
    $design = new design ( $title , $hmenu); 
    $design->header(); 
    echo 'Falscher Antispam! <a href="javascript:window.history.back();">Nochmal Versuchen</a><br /><br />
            <strong>Wichtig:</strong> Nachdem du auf &quot;Nochmal Versuchen&quot; Gedrückt hast <strong>unbedingt</strong> die Seite Refreshen!
    				 Dies ist Wichtig um den Antispam zurückzusetzen.'; 
    $design->footer(1);  #Die "1" bricht das Script hier ab
    }}
    #b Fertig
    
    
          
      # topic alert ausfuehren.
      $topic_alerts_abf = "SELECT
          prefix_topics.name as topic,
          prefix_user.email as email,
          prefix_user.name as user
        FROM prefix_topic_alerts
          LEFT JOIN prefix_topics ON prefix_topics.id = prefix_topic_alerts.tid
          LEFT JOIN prefix_user   ON prefix_user.id   = prefix_topic_alerts.uid
        WHERE prefix_topic_alerts.tid = ".$tid;
          
      $topic_alerts_erg = db_query($topic_alerts_abf);
      while ($topic_alerts_row = db_fetch_assoc($topic_alerts_erg)) {
        $page = $_SERVER["HTTP_HOST"].$_SERVER["SCRIPT_NAME"];
        $text = sprintf ($lang['topicalertmessage'], $topic_alerts_row['user'], $topic_alerts_row['topic'], $page, $tid);
        icmail ($topic_alerts_row['email'], 'neue Antwort im Thema: "'.$topic_alerts_row['topic'].'"', $text);
        debug ($topic_alerts_row['email']);
      }
      db_query("DELETE FROM prefix_topic_alerts WHERE tid = ".$tid);
          
      # topic alert insert wenn gewaehlt.
      if (!empty($_POST['topic_alert']) AND $_POST['topic_alert'] == 'yes' AND loggedin()) {
        if (0 == db_result(db_query("SELECT COUNT(*) FROM prefix_topic_alerts WHERE uid = ".$_SESSION['authid']." AND tid = ".$tid),0)) {
          db_query("INSERT INTO prefix_topic_alerts (tid,uid) VALUES (".$tid.", ".$_SESSION['authid'].")");
        }
      }
      # topic alert ende
      
      db_query ("INSERT INTO `prefix_posts` (tid,fid,erst,erstid,time,txt) VALUES ( ".$tid.", ".$fid.", '".$erst."', ".$uid.", ".$time.", '".$txt."')");
      $pid = db_last_id();
    			
    	db_query("UPDATE `prefix_topics` SET last_post_id = ".$pid.", rep = rep + 1 WHERE id = ".$tid);
    	db_query("UPDATE `prefix_forums` SET posts = posts + 1, last_post_id = ".$pid." WHERE id = ".$fid );
    			
    	$page = ceil ( ($aktTopicRow['rep']+1)  / $allgAr['Fpanz'] );
    	
      # toipc als gelesen markieren
      $_SESSION['forumSEE'][$fid][$tid] = time();
       
    	wd ( array ( 
    	  $lang['backtotopic'] => 'index.php?forum-showposts-'.$tid.'-p'.$page.'#'.$pid,
    		$lang['backtotopicoverview'] => 'index.php?forum-showtopics-'.$fid
    	) , $lang['createpostsuccessful'] , 3 );
    }
    
    $design->footer();									
    ?>


    newpost.htm
    <table width="100%" border="0" cellspacing="1" class="border" cellpadding="5">
      <tr>
    	  <th colspan="2" height="20" class="Chead">
    		  <b>{_lang_preview}</b>
    		</th>
    	</tr><tr>
        <td class="Cmite">{txt}</td>
      </tr>
    </table>
    <br /><br />
    {EXPLODE}
    <script language="JavaScript" type="text/javascript">
    <!--
      function form_check() {
    	  document.form.submit.disabled = true;
     	  document.form.submit.style.background = '#FF0000';
        document.form.submit.value = '{_lang_send}...';
        return true;
    	}
    //-->
    </script>
    
    <form action="index.php?forum-newpost-{tid}" method="POST" name="form" onSubmit="return form_check()">
    		
    <script type='text/javascript' src='include/includes/js/bbcode.js'></script>
    
    <table width="100%" border="0" cellspacing="1" class="border" cellpadding="5">
      <TR>
    	  <td colspan="2" height="20" class="Chead">
    		  <b>{_lang_writeananswer}</b>
    		</td>
    	</tr>{name}<tr>
    	  <td colspan="2" height="20" class="Cmite">
    		  <b>{_lang_writeyourpost}</td>
    		</td>
    	</tr><tr>
    	  <td class="Cmite" rowspan="2" valign="top">{SMILIES}</td>
    	  <td class="Cnorm">
          <!-- BB Code START -->
    	  
        
        <a href="javascript:simple('b')"><img style="padding-left: 4%; float: left;" src="include/images/icons/button.bold.gif" alt="b" title="{_lang_bold}" border="0"></a>
        <a href="javascript:simple('i')"><img style="padding-left: 4%; float: left;" src="include/images/icons/button.italic.gif" alt="i" title="{_lang_italic}" border="0"></a>
    	<a href="javascript:simple('u')"><img style="padding-left: 4%; float: left;" src="include/images/icons/button.underline.gif" alt="u" title="{_lang_underlined}" border="0"></a>
        <a href="javascript:simple('code')"><img style="padding-left: 4%; float: left;" src="include/images/icons/button.code.gif" alt="Code" title="{_lang_code}" border="0"></a>
    	<a href="javascript:simple_liste()"><img style="padding-left: 4%; float: left;" src="include/images/icons/button.insertunorderedlist.gif" alt="{_lang_list}" title="{_lang_list}" border="0"></a>
        <a href="javascript:simple('url')"><img style="padding-left: 4%; float: left;" src="include/images/icons/button.link.gif" alt="Url" title="{_lang_link}" border="0"></a>
        <a href="javascript:simple('img')"><img style="padding-left: 4%; float: left;" src="include/images/icons/button.image.gif" alt="{_lang_picture}" title="{_lang_picture}" border="0"></a>
    
    		 <!-- BB Code ENDE -->
    		</td>
    	</tr><tr>
        <td width="80%" class="Cnorm"> 
          <textarea style="width: 98%" name="txt" rows="15" cols="55" tabindex="2">{txt}</textarea>
        </td>
      </tr><tr>
        <td class="Cmite">{_lang_options}</td>
        <td class="Cnorm"><input id="topic_alert" type="checkbox" value="yes" name="topic_alert" /><label for="topic_alert"> {_lang_mailonreply}</a></td>
    	</tr>
    	<tr>
    	<td class="Cmite"> Antispam </td>
    	<td class="Cnorm">{ANTISPAM}</td>
    	</tr>
    	
    	
    	<tr class="Cmite">
        <td></td>
        <td><input type="submit" name="priview" value="{_lang_preview}" accesskey='v' />&nbsp;<input type="submit" name="submit" value="{_lang_formsub}" accesskey='s' /></td>
    	</tr>
    </table>
    </form>
    <br />
    <b>{_lang_overvieaboutthelast5posts}</b>
    <table width="100%" border="0" cellspacing="1" class="border" cellpadding="3">
      {EXPLODE}
    	<tr class="Cnorm">
    	  <td valign="top" width="20%">{erst}</td>
        <td width="80%">{txt}</td>
    	</tr>{EXPLODE}
    </table>


    Wer will kann sichs auch als Zip saugen: Spam Reloadet hab ichs mal genannt lachen

    Mfg Fr33man
    Alles, was einen Anfang hat, hat auch ein Ende, Mr. Fr33man.
    www.StalKerZ.de - German Gaming | www.Xianlung.de - TS & Webspace Sponsor
    0 Mitglieder finden den Beitrag gut.
  28. #88
    User Pic
    armin Mitglied
    Registriert seit
    22.01.2006
    Beiträge
    170
    Beitragswertungen
    0 Beitragspunkte
    Hallo

    wir nutzen die neueste Version von ILCH.

    Ich habe das Script mal heruntergeladen und eingebaut. Also die Dateien ersetzt.

    Beim antworten auf nen thread geht der Antispam. beim neu eröffnen leider nicht.

    Und genau das ist unser problem. das öffentliche forum wird von viagra verkäufern geflutet. und soviele brauch ich nunmal auch nicht (räusper)

    Könnt ihr das ändern?

    vielen herzlichen dank.
    gruss
    armin
    Phantasie ich wichtiger als Wissen
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu Allgemein

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten