Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.38 veröffentlicht (30.04.24)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
Task erstellen meldet bei Aktivierung PHP-Fehler
#1
Hallo,

ich habe ein eine Task erstellt, welcher bei Aktivierung des PlugIns eingetragen und bei Deaktivierung wieder ausgetragen werden soll.

Grundlage waren diese und diese Anleitung.

1. Im PlugIn ist die Aktivierung wie folgt definiert:
PHP-Code:
function pluginname_activate()
{
  
global $db;

require_once 
MYBB_ROOT '/inc/functions_task.php';

$new_task = [
    
'title'            => '$lang->sprachvariable_task_title',
    
'description'    => '$lang->sprachvariable_task_title_desc',
    
'file'            => 'dateiname',
    
'minute'        => '0',
    
'hour'            => '0',
    
'day'            => '*',
    
'month'            => '*',
    
'weekday'        => '*',
    
'nextrun'        => TIME_NOW,
    
'enabled'        => '1',
    
'logging'        => '1',
];

$new_task['nextrun'] = fetch_next_run($new_task);

$db->insert_query('tasks'$new_task);
$cache->update_tasks();

Will ich das ACP aufrufen erhalte ich eine PHP-Fehlermeldung zur Zeile:

PHP-Code:
$cache->update_tasks(); 
kommentiere ich die Zeile mit "//" aus, kann ich das ACP aufrufen und das PlugIn aktivieren. Es wird der Task in der Aufgabenplanung eingetragen (siehe jedoch Punkt 2) und wird auch manuell/zeitgesteuert korrekt ausgeführt. Testweise die Bezeichnung "new_task" auf z.B. "name_tast" bringt keinen Erfolg.

2. Die Sprachvariablen werden jedoch nicht ausgegeben, egal welche der nachstehenden fünf Varianten ich versuche:

Variante 1.
PHP-Code:
'title'        => '$lang->sprachvariable_task_title',
'description'    => '$lang->sprachvariable_task_title_desc'
Variante 2.
PHP-Code:
'title'        => '($lang->sprachvariable_task_title)',
'description'    => '($lang->sprachvariable_task_title_desc)'
Variante 3.
PHP-Code:
'title'        => '{$lang->sprachvariable_task_title}',
'description'    => '{$lang->sprachvariable_task_title_desc}'
Variante 4.
PHP-Code:
'title'            => $db->escape_string($lang->sprachvariable_task_title),
'description'    => $db->escape_string($lang->sprachvariable_task_title_desc), 
Variante 5.
PHP-Code:
'title'            => $db->escape_string{$lang->sprachvariable_task_title},
'description'    => $db->escape_string{$lang->sprachvariable_task_title_desc}, 
Die Sprachvariablen sind selbstverständlich in ./inc/languages/sprache/admin/sprachvariable.php definiert.
Was kann da noch inkorrekt sein?

3. Im PlugIn ist die Deaktivierung wie folgt definiert:
PHP-Code:
function pluginname_deactivate() {
$db->delete_query('tasks''file=\'export_user_language\'');
$cache->update_tasks();    
rebuild_settings();

Hier muss gleichfalls die "cache"-Zeile auskommentiert werden. Beim Deaktivieren wird eine PHP-Fehlermeldung zu
PHP-Code:
$db->delete_query('tasks''file=\'dateiname\''); 
angezeigt.

Die Anleitung sind doch eigentlich selbsterklärend und daher einfach zu handhaben, aber irgendwo muss ich noch etwas berücksichtigen oder anpassen  ...aber was? Vermute mal, das nicht korrekt/vollständig in die Datenbank geschrieben wird. *grübel

Vielelicht ist jemand so nett die Ursache und Abhilfe zu den drei vorgenannten Punkten der bei mir entstandenen Fehlerverhalten mitteilen zu können.

Vorab besten Dank für Hilfestellungen.
Sollte ich der Ansicht sein helfen zu können biete ich Hilfe(n) an!  ...ich bitte jedoch nicht darum helfen zu dürfen!
Tools [Unixzeit ⇔ Realzeit] ♦ [BOM-Finder] ♦ [SQL-Prefix-Changer] ♦ [USV-Rechner] ♦ [PlugIns]
Zitieren


Nachrichten in diesem Thema
Task erstellen meldet bei Aktivierung PHP-Fehler - von Gerti - 28.10.2020, 15:43

Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
  Bei Aktivierung Spalte in Datenbank umbenennen. Gerti 2 1.156 23.10.2020, 14:07
Letzter Beitrag: Gerti
  Die Philosophie bei der Aktivierung / Installation Juventiner 1 1.418 29.03.2015, 16:12
Letzter Beitrag: frostschutz