Acronym Mod (SQL-Tabelle+constants.php+bbcode.php)

Allgemeiner Support zum phpBB 2 Board und phpBB 2 Modifikationen
Forumsregeln
Auch wenn hier der Support für phpBB 2 weiterhin aufrecht erhalten bleibt, weisen wir darauf hin, dass das phpBB 2 nicht mehr offiziell unterstützt und weiterentwickelt wird!
Antworten
Twins

Acronym Mod (SQL-Tabelle+constants.php+bbcode.php)

Beitrag von Twins »

Deine phpBB Version: 2.0.
Typ Deines phpBB Forums: Premodded phpBB
MODs: Nein
Dein Wissensstand: Einsteiger
Link zu Deinem Forum: [url]http://[/url]

PHP Version:
MySQL Version:


Was hast Du gemacht, bevor das Problem aufgetreten ist?
Acronym Mod teilweise gelöscht


Was hast Du bereits versucht um das Problem zu lösen?




Fehlerbeschreibung und Nachricht

Hallo!

Ich möchte in meinen Forum gerne den "Acromym-Mod" ausbauen.Ich habe das auch gemacht , nur bei folgenden 3 Schritten ein Problem (ich mache diue Installation rückwärts):
[includes/bbcode.php]

Code: Alles auswählen

function acronym_pass($message)
{
   static $orig, $repl;
Wenn ich diesen Code entferne, wird in der viewtopic.php in der Zeile 1300 eine Fehler ausgegeben.
Und wenn ich aus includes/constants.php:

Code: Alles auswählen

ne('ACRONYMS_TABLE', $table_prefix.'acronyms');
das enfterne und die Tabelle "phpbb_acronyms" lösche, kommt ein SQL-Error, das diese Tabelle nicht vorhanden wäre.

Code: Alles auswählen

Allgemeiner Fehler
Couldn't obtain acronyms data

DEBUG MODE

SQL Error : 1146 Table 'usr_web98_1.ACRONYMS_TABLE' doesn't exist

SELECT * FROM ACRONYMS_TABLE

Line : 1026
File : bbcode.php
viewtopic.php [1290-1310]

Code: Alles auswählen

if ( $board_config['allow_bbcode'] )
   {
      if ( $user_sig != '' && $user_sig_bbcode_uid != '' )
      {
         $user_sig = ( $board_config['allow_bbcode'] ) ? bbencode_second_pass($user_sig, $user_sig_bbcode_uid) : preg_replace('/\:[0-9a-z\:]+\]/si', ']', $user_sig);
      }

      if ( $bbcode_uid != '' )
      {
         $message = ( $board_config['allow_bbcode'] ) ? bbencode_second_pass($message, $bbcode_uid) : preg_replace('/\:[0-9a-z\:]+\]/si', ']', $message);
      }
   }

   if ( $user_sig != '' )
   {
      $user_sig = make_clickable($user_sig);
   }
   $message = make_clickable($message);

   // BEGIN CMX News Mod
   // Strip out the delimiter. 
Wer kann mir helfen? Wo liegt da das Problem?

Gruß Twins!
Benutzeravatar
oxpus
Administrator
Beiträge: 28737
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Die Tabelle anlegen lt. Mod. Also entweder den genannten SQL-Befehl mit phpmyadmin ausführen oder die genannte Installations-Datei hochladen und mit dem Browser starten.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Twins

Beitrag von Twins »

[quote="oxpus - Di 14.Jun, 2005 21:32";p="35499"]Die Tabelle anlegen lt. Mod. Also entweder den genannten SQL-Befehl mit phpmyadmin ausführen oder die genannte Installations-Datei hochladen und mit dem Browser starten.[/quote]
Sorry, ich verstehe deine Anweisung nicht.Bitte nochmal für ganz dumme.
Benutzeravatar
oxpus
Administrator
Beiträge: 28737
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Führe das mit phpmyadmin aus:

Code: Alles auswählen

CREATE TABLE `phpbb_acronyms` (
`acronym_id` MEDIUMINT NOT NULL AUTO_INCREMENT,
`acronym` VARCHAR( 80 ) NOT NULL ,
`description` VARCHAR( 255 ) NOT NULL ,
PRIMARY KEY ( `acronym_id` )
);
Dann ist die Fehlermeldung weg.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Twins

Beitrag von Twins »

Ich weiß, das habc ich schon gemacht.Ich möchte diesen Mod aber entfernen, weil ich den nicht brauche und nicht will.Entfernt habe ich den schon, auser die Tabelle und einpaar kleine Einträge in der constants.php und bbcode.php sind noch da.Wenn ich die (laut Installationsanleitung) wird eine Fehlermeödung herausgeben.
Benutzeravatar
AmigaLink
Beiträge: 5843
Registriert: Mi 03.Mär, 2004 09:05
Wohnort: NRW
Kontaktdaten:

Beitrag von AmigaLink »

Du musst schon alles entfernen!
In der bbcode.php exestiert noch die abfrage der acronymtabelle. Wenn die entfernt ist, kannst du auch den eintrag aus der constants.php löschen. Vorher nicht!
[center].: Web Relax .::. Essen mit Freude .::. AmigaLink.de :.
______________________________________

Kein Support per PM, ICQ oder eMail!!!
[/center]
Benutzeravatar
oxpus
Administrator
Beiträge: 28737
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Ach entfernen.
Wenn man nur "Wie installiere ich das hier" liest, übersieht man das schon mal :(
Zuletzt geändert von oxpus am Mi 15.Jun, 2005 23:57, insgesamt 1-mal geändert.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Twins

Beitrag von Twins »

[quote="AmigaLink - Mi 15.Jun, 2005 20:45";p="35615"]Du musst schon alles entfernen!
In der bbcode.php exestiert noch die abfrage der acronymtabelle. Wenn die entfernt ist, kannst du auch den eintrag aus der constants.php löschen. Vorher nicht![/quote]
Wenn ich das aus der bbcode.php enfterne:

Code: Alles auswählen

function acronym_pass($message)
{
   static $orig, $repl;

   if( !isset($orig) )
   {
      global $db, $board_config;
      $orig = $repl = array();

      $sql = 'SELECT * FROM ' . ACRONYMS_TABLE;
      if( !$result = $db->sql_query($sql) )
      {
         message_die(GENERAL_ERROR, "Couldn't obtain acronyms data", "", __LINE__, __FILE__, $sql);
      }
      
      $acronyms = $db->sql_fetchrowset($result);

      if( count($acronyms) )
      {
         usort( $acronyms, 'acronym_sort' );
      }

      for ($i = 0; $i < count($acronyms); $i++)
      {
         $orig[] = '#\b(' . phpbb_preg_quote( $acronyms[$i]['acronym'], "/") . ')\b#';
         //$orig[] = "/(?<=.\W|\W.|^\W)" . phpbb_preg_quote($acronyms[$i]['acronym'], "/") . "(?=.\W|\W.|\W$)/";
         $repl[] = '<acronym title="' . $acronyms[$i]['description'] . '">' . $acronyms[$i]['acronym'] . '</acronym>'; ;
      }
   }
   
   if( count( $orig ) )
   {
      $segments = preg_split( '#(<acronym.+?>.+?</acronym>|<.+?>)#s' , $message, -1, PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE);

      $message = '';

      foreach( $segments as $seg )
      {
         if( $seg[0] != '<' && $seg[0] != '[' )
         {
            $message .= str_replace('"', '"', substr(preg_replace('#(\>(((?>([^><]+|(?R)))*)\<))#se', "preg_replace(\$orig, \$repl, '\\0')", '>' . $seg . '<'), 1, -1));
         }
         else
         {
            $message .= $seg;
         }
      }
   }
   
   return $message;
}
Das steht in der Installationsanleitung, wenn ich das lösche, wird eine Fehlermeldung in der viewtoopic.php in der Zeile 1369 dieser Fehler ausgeben:

Code: Alles auswählen

Fatal error: Call to undefined function: acronym_pass() in /srv/www/htdocs/web98/html/twinstantin/viewtopic.php on line 1369
Und wenn ich die Tabelle/oder den Eintrag aus der constans.php lösche, wird eine Fehlermeldung ausgeben, das diese Tabelle nicht vorhanden wäre (debug Mode).
Zuletzt geändert von Twins am Do 16.Jun, 2005 16:03, insgesamt 1-mal geändert.
Benutzeravatar
oxpus
Administrator
Beiträge: 28737
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

:hh:
Auch da musst Du alles entfernen, was Du durch den Acronym Mod eingebaut hast!
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Twins

Beitrag von Twins »

[quote="oxpus - Do 16.Jun, 2005 16:12";p="35704"]:hh:
Auch da musst Du alles entfernen, was Du durch den Acronym Mod eingebaut hast![/quote]
Mach du doch, die komplett Anleitung rückwärts, aber dann kommt dieser Fehler:

Code: Alles auswählen

Fatal error: Call to undefined function: acronym_pass() in /srv/www/htdocs/web98/html/twinstantin/viewtopic.php on line 1369
#
EDIT
Problem gelöst, ich habe folgendes aus der viewtopic.php gelöscht:

Code: Alles auswählen

	$message = acronym_pass( $message );
Dieser Zeile hat die Fehlermeldung verursacht.
Zuletzt geändert von Twins am Do 16.Jun, 2005 18:06, insgesamt 1-mal geändert.
Benutzeravatar
AmigaLink
Beiträge: 5843
Registriert: Mi 03.Mär, 2004 09:05
Wohnort: NRW
Kontaktdaten:

Beitrag von AmigaLink »

Logisch, denn auch die Zeile war vom Acronym MOD!
Wie bereits gesagt. Wenn du einen MOD ausbaust, musst du schon sehr gewissenhaft alles ausbauen was von diesem MOD eingefügt wurde. Sonst kommt es zu fehlern. :)
[center].: Web Relax .::. Essen mit Freude .::. AmigaLink.de :.
______________________________________

Kein Support per PM, ICQ oder eMail!!!
[/center]
Benutzeravatar
oxpus
Administrator
Beiträge: 28737
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Eben und das steht in der Anleitung für den Einbau auch drinnen!
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Titus
Beiträge: 235
Registriert: Fr 18.Mär, 2005 22:23

Beitrag von Titus »

[quote="oxpus - Do 16.Jun, 2005 19:06";p="35740"]Eben und das steht in der Anleitung für den Einbau auch drinnen![/quote]
man sollte evtl anmerken das er es nicht eingebaut hat, sondern IMO aus dem Orion ausbauen möchte, wenn er jetzt eine "ältere/neuere" anleitung hat, oder wegen performancegründen ein paar änderungen gemacht wurden die natürlich nicht in der anleitung stehen hat er ein problem :cool:
Benutzeravatar
oxpus
Administrator
Beiträge: 28737
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Aber diese Funktion MUSS in der Anleitung stehen, ist sie doch DIE zentrale Funktion im Mod ;)
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Twins

Beitrag von Twins »

In der Anleitung stand ja nichts von viewtopic.php.Ich bin darauf nur durch die Fehlermeldung gekommen, cback hat manche Mods auch in anderen Scripts definiert, also in der "normalen" Anleitung, deswegen gibt es bei Orion da manchmal Unterschiede und das habe ich erst vor kurzem erfahren.
Antworten