Runonce: Unterschied zwischen den Versionen

Aus Contao Community Documentation

K
Zeile 12: Zeile 12:
 
===Löschen einer Datei===
 
===Löschen einer Datei===
  
===Daten in die Datenbank schreiben===
+
<?php @error_reporting(0); @ini_set("display_errors", 0);
 +
try {
 +
    $file = TL_ROOT . '/system/modules/demo/delete_me.gif';
 +
    $objFiles = Files::getInstance();
 +
    $objFiles->delete(substr($file, strlen(TL_ROOT)));
 +
} catch (Exception $e) { $errors[] = $e->getMessage(); }
 +
?>
 +
 
 +
===Datenbank Insert / Update===
 +
<?php @error_reporting(0); @ini_set("display_errors", 0);
 +
$objDatabase = Database::getInstance();
 +
//
 +
// Update database
 +
try { $objDatabase->execute("UPDATE `tl_demo_table` SET `demo_counter`=0 WHERE `demo_browser`='Unknown'");
 +
} catch (Exception $e) { $errors[] = $e->getMessage(); }
 +
//
 +
// Insert database
 +
try { $objDatabase->execute("INSERT INTO `tl_demo_table` (`id`, `demo_counter`) VALUES (0, '10')");
 +
} catch (Exception $e) { $errors[] = $e->getMessage(); }
 +
?>

Version vom 7. Juni 2010, 22:58 Uhr


betrifft
TYPOlight Version ab 2.7
Contao Version ab 2.9


Hinweis.png Hinweis: In Arbeit...


Liveupdate nutzt diese, die Extensions nutzen diese auch: die Datei TL_ROOT/system/runonce.php

Diese Datei tut genau das, was der Name schon vermuten läßt. Sie wird nur einmal ausgeführt und anschließend gelöscht. Bei jedem Seitenaufruf wird dazu geprüft, ob diese vorhanden ist und ggf. ausgeführt.

Anwendungsbeispiele

Löschen einer Datei

<?php @error_reporting(0); @ini_set("display_errors", 0); 
try { 
    $file = TL_ROOT . '/system/modules/demo/delete_me.gif';
    $objFiles = Files::getInstance();
    $objFiles->delete(substr($file, strlen(TL_ROOT)));
} catch (Exception $e) { $errors[] = $e->getMessage(); }
?>

Datenbank Insert / Update

<?php @error_reporting(0); @ini_set("display_errors", 0); 
$objDatabase = Database::getInstance();
//
// Update database
try { $objDatabase->execute("UPDATE `tl_demo_table` SET `demo_counter`=0 WHERE `demo_browser`='Unknown'");
} catch (Exception $e) { $errors[] = $e->getMessage(); }
//
// Insert database
try { $objDatabase->execute("INSERT INTO `tl_demo_table` (`id`, `demo_counter`) VALUES (0, '10')"); 
} catch (Exception $e) { $errors[] = $e->getMessage(); }
?>
Ansichten
Meine Werkzeuge

Contao Community Documentation

Programmierer brauchen viel Bit, auch wenn es Beck's ist.

Christian Schiffler
Navigation
Verstehen
Verwenden
Entwickeln
Verschiedenes
Werkzeuge