Themaverfehlung

Also die Zeiten von register_globals sind glücklicherweise vorbei. Einige meiner Vorgänger
(!=neverpanic) hatten damit glaube ich irgendwie ihre Probleme.

Ein Lösungsansatz:

  1. <?
  2. function onFile ($myObj) {
  3.     global $CMS_FILE_FILTER, $myFile, $media, $CMS_MEDIA_IMAGE, $CMS_MEDIA_PDF, $CMS_MEDIA_FLASH, $CMS_MEDIA_PPT, $CMS_MEDIA_XLS, $CMS_MEDIA_PRG, $CMS_MEDIA_DOC, $CMS_NEWSLETTER_ATTACHMENT_MAXSIZE, $myX, $myY;
  4.     …
  5. }
  6. ?>

Ein anderer:
( Hierzu muss man wissen das das HkOrder Objekt in der Session instanziert wird um die Daten der mehrseitigen Bestellung vorzuhalten )

  1. <?
  2. class HkOrder extends HkOrderAdapter{
  3.     …
  4.     function saveRechnungPdf () {
  5.             …
  6.             $pdf->MultiCell (30, 4, $_SESSION[‘überweisTräger’]);
  7.             …
  8.     }
  9. }
  10. ?>

Abstraktion ist was tolles, vorallem kann man damit 1000 Nutzlose Codezeilen erstellen, wenn man keine Ahnung hat.
Wer sich das ausgedacht hat? Fragt mich nicht, sowas findet man zu Haufen in unserem Quellcode.
An den “…” Stellen sind je 20-30 Zeilen Code – immer identisch.
Hier die einzigen unterschiedlichen Code-Zeilen der Klassen:

  1. <?php
  2. class CmsPdf extends CmsFile {
  3.     …
  4.     function upload ($file, $destination = "/", $user=NULL) {
  5.         …
  6.         if ($ext != ‘pdf’) {
  7.             $this->setError ("Bitte wählen Sie eine PDF-Datei aus.");
  8.             return (false);
  9.         }
  10.         return (parent::upload ($file, $destination, $user));
  11.     }
  12. }
  13. class CmsSwf extends CmsFile {
  14.     …
  15.     function upload ($file, $destination = "/", $user=NULL) {
  16.         …
  17.         if ($ext != ‘swf’) {
  18.             $this->setError ("Bitte wählen Sie eine SWF-Datei aus.");
  19.             return (false);
  20.         }
  21.         return (parent::upload ($file, $destination, $user));
  22.     }
  23. }
  24. class CmsPpt extends CmsFile {
  25.     …
  26.     function upload ($file, $destination = "/", $user=NULL) {
  27.         …
  28.         if ($ext != ‘ppt’) {
  29.             $this->setError ("Bitte wählen Sie eine PPT-Datei aus.");
  30.             return (false);
  31.         }
  32.         return (parent::upload ($file, $destination, $user));
  33.     }
  34. }
  35. class CmsXls extends CmsFile {
  36.     …
  37.     function upload ($file, $destination = "/", $user=NULL) {
  38.         …
  39.         if ($ext != ‘xls’) {
  40.             $this->setError ("Bitte wählen Sie eine XLS-Datei aus.");
  41.             return (false);
  42.         }
  43.         return (parent::upload ($file, $destination, $user));
  44.     }
  45. }
  46. class CmsExe extends CmsFile {
  47.     …
  48.     function upload ($file, $destination = "/", $user=NULL) {
  49.         …
  50.         if ($ext != ‘exe’) {
  51.             $this->setError ("Bitte wählen Sie eine EXE-Datei aus.");
  52.             return (false);
  53.         }
  54.         return (parent::upload ($file, $destination, $user));
  55.     }
  56. }
  57. class CmsDoc extends CmsFile {
  58.     …
  59.     function upload ($file, $destination = "/", $user=NULL) {
  60.         …
  61.         if ($ext != ‘doc’) {
  62.             $this->setError ("Bitte wählen Sie eine DOC-Datei aus.");
  63.             return (false);
  64.         }
  65.         return (parent::upload ($file, $destination, $user));
  66.     }
  67. }
  68. class CmsZip extends CmsFile {
  69.     …
  70.     function upload ($file, $destination = "/", $user=NULL) {
  71.         …
  72.         if ($ext != ‘zip’) {
  73.             $this->setError ("Bitte wählen Sie eine ZIP-Datei aus.");
  74.             return (false);
  75.         }
  76.         return (parent::upload ($file, $destination, $user));
  77.     }
  78. }
  79. ?>

Achja allein diese Zeilen sind in einer Datei 22 mal vorhanden. Kein Wunder das die Datei 1600 Zeilen (49.778 Bytes) groß ist.

  1. <?php
  2. if (!isset ($SITE_DIR) || (isset ($SITE_DIR) && $SITE_DIR == )) {
  3.     $this->setError ("SITE_DIR wurde nicht gesetzt.");
  4.     return (false);
  5. }
  6. ?>

Ich räum den Saustall nich auf!

One Response to “Themaverfehlung”

  1. Clemens Says:

    Heureka! Ich hab die Lösung gefunden: rm -rf webC*v5 ;)
    Dann besteht nur nach das Problem mit den Backups und den Versionen auf den Servern…

Leave a Reply

Ihr Browser versucht gerade eine Seite aus dem sogenannten Internet auszudrucken.

Das Internet ist ein weltweites Netzwerk von Computern, das den Menschen ganz neue Möglichkeiten der Kommunikation bietet.

Da einige von neuen Dingen nichts verstehen, halten wir es für notwendig, sie davor zu schützen. Dies ist im beidseitigen Interesse, da unnötige Angstzustände bei Ihnen verhindert werden, ebenso wie es uns vor profilierungs- und machtsüchtigen Menschen schützt.

Sollten Sie der Meinung sein, dass Sie diese Internetseite dennoch sehen sollten, so können Sie jederzeit durch normalen Gebrauch eines Internetbrowsers darauf zugreifen. Dazu sind aber minimale Computerkenntnisse erforderlich. Sollten Sie diese nicht haben, vergessen Sie einfach dieses Internet und lassen uns in Ruhe.

Die Umgehung dieser Ausdrucksperre ist nach §95a UrhG verboten.
Quelle: http://www.gesetze-im-internet.de/urhg/__95a.html