• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Quellcode wird zerdroschen

B

bdt600

Guest
Wenn ich hergehe und die PHP-Tags per Hand selber tippe, dann kommst das bei raus:

PHP:
<?php

  // Parameter übernehmen
  $file = isset($_GET['file']) ? './upload_private/' . $_GET['file'] : '';

  // Flag für Dummy-Erzeugung
  $createDummy = true;

  // Variable initialisieren
  $img = 0;

  // Prüfen, ob Datei existiert
  if (file_exists($file))
  {
  // Typ ermitteln
  $data = exif_imagetype($file);

  // Wenn Typ erkannt
  if ($data !== false)
  {
  // Bild einlesen
  switch ($data)
  {
  case IMAGETYPE_GIF:  $img = imagecreatefromgif($file);  break;
  case IMAGETYPE_JPEG: $img = imagecreatefromjpeg($file); break;
  case IMAGETYPE_PNG:  $img = imagecreatefrompng($file);  break;
  }

  // Wenn Bild eingelesen wurde
  if ($img)
  {
  // Dummy muss nicht erzeugt werden
  $createDummy = false;

  // Bild ausgeben
  switch ($data)
  {
  case IMAGETYPE_GIF:  header("Content-type: image/gif");  imagegif($img);  exit; break;
  case IMAGETYPE_JPEG: header("Content-type: image/jpeg"); imagejpeg($img); exit; break;
  case IMAGETYPE_PNG:  header("Content-type: image/png");  imagePng($img);  exit; break;
  }
  }
  }
  }

  // Irgendetwas ist schief gelaufen, Dummy erzeugen
  if ($createDummy)
  {
  // Dummy erzeugen
  $img = imagecreatetruecolor (16,16);
  // Weiß initialisieren
  $white  = imagecolorallocate($img, 255, 255, 255);
  // Image füllen
  imageFill($img, 0, 0, $white);
  // Rot initialisieren
  $red = imagecolorallocate($img, 255, 0, 0);
  // Linien diagonl zeichnen
  imageLine($img, 0,0,15,15, $red);
  imageLine($img, 0,15,15,0, $red);
  // Dummy ausgeben
  header("Content-type: image/jpeg");
  imagejpeg($img);
  exit;
  }
?>
Beim Paste werden alle Blanks am Anfang gekillt und der eingerückte Quellcode ist zerdroschen. Benutze ich allerdings den Code-Button und paste dort den Quellcode rein, sieht es so aus:
PHP:
<?php

  // Parameter übernehmen
  $file = isset($_GET['file']) ? './upload_private/' . $_GET['file'] : '';
 
  // Flag für Dummy-Erzeugung
  $createDummy = true;
 
  // Variable initialisieren
  $img = 0;
 
  // Prüfen, ob Datei existiert
  if (file_exists($file))
  {
    // Typ ermitteln
    $data = exif_imagetype($file);
   
    // Wenn Typ erkannt
    if ($data !== false)
    {
        // Bild einlesen
        switch ($data)
        {
          case IMAGETYPE_GIF:  $img = imagecreatefromgif($file);  break;
          case IMAGETYPE_JPEG: $img = imagecreatefromjpeg($file); break;
          case IMAGETYPE_PNG:  $img = imagecreatefrompng($file);  break;
        }
       
        // Wenn Bild eingelesen wurde
        if ($img)
        {
          // Dummy muss nicht erzeugt werden
          $createDummy = false;
         
          // Bild ausgeben
          switch ($data)
          {
              case IMAGETYPE_GIF:  header("Content-type: image/gif");  imagegif($img);  exit; break;
              case IMAGETYPE_JPEG: header("Content-type: image/jpeg"); imagejpeg($img); exit; break;
              case IMAGETYPE_PNG:  header("Content-type: image/png");  imagePng($img);  exit; break;
          }
        }
    }
  }
 
  // Irgendetwas ist schief gelaufen, Dummy erzeugen
  if ($createDummy)
  {
      // Dummy erzeugen
      $img = imagecreatetruecolor (16,16);
      // Weiß initialisieren
      $white  = imagecolorallocate($img, 255, 255, 255);
      // Image füllen
      imageFill($img, 0, 0, $white);
      // Rot initialisieren
      $red = imagecolorallocate($img, 255, 0, 0);
      // Linien diagonl zeichnen
      imageLine($img, 0,0,15,15, $red);
      imageLine($img, 0,15,15,0, $red);
      // Dummy ausgeben
      header("Content-type: image/jpeg");
      imagejpeg($img);
      exit;     
  }
?>

Warum werden die Blanks beim Paste entfernt?
 
Werbung:
Hmm, eigentlich hatte ich ja mal auf eine Reaktion der Verantwortlichen dieses Forums gehofft. :( Aber keine Antwort ist ja auch eine Antwort :(
 
Ist mir auch schon aufgefallen.
Wenn man Codes nicht direkt im Codefenster einfügt, kann es außerdem passieren dass die Codes ganz am Ende des Posts eigefügt werden. Das sieht man allerdings erst, nachdem man den Post abgeschickt hat. Sie sind während dem Bearbeiten also wie in einer "unsichtbaren" Ebene.

Wenn das Code-Fenster größer wäre, könnte ich aber damit leben.
 
Werbung:
Das scheint aber keinen Verantwortlichen des Forums zu interessieren. Traurig aber wahr.
 
Ich bedanke mich bei den Verantwortliches des Forum, dass sie innerhalb von 2 Wochen immer noch nicht in der Lage waren, irgendeine Reaktion zu zeigen. :( Kopfschüttel :(
Wirklich toll, wie sich hier um Probleme gekümmert wird :(
 
:mad: 5 Wochen keine Reaktion der Verantwortlichen des Forums. Ganz tolle Leistung :mad:
 
Werbung:
Wir verwenden hier eine Foren-Software die nicht von uns direkt stammt. Ich habe heute nochmal ein Update auf die heute erschiene Version durchgeführt, ggf. löst sich damit das Problem. Ansonsten müsstest Du bitte einen Bug auf xenforo.com eröffnen. Selber fixen können wir das nicht.

Grüße,

Carsten
 
PHP:
<?php

  // Parameter übernehmen
  $file = isset($_GET['file']) ? './upload_private/' . $_GET['file'] : '';

  // Flag für Dummy-Erzeugung
  $createDummy = true;

  // Variable initialisieren
  $img = 0;

  // Prüfen, ob Datei existiert
  if (file_exists($file))
  {
    // Typ ermitteln
    $data = exif_imagetype($file);
  
    // Wenn Typ erkannt
    if ($data !== false)
    {
        // Bild einlesen
        switch ($data)
        {
          case IMAGETYPE_GIF:  $img = imagecreatefromgif($file);  break;
          case IMAGETYPE_JPEG: $img = imagecreatefromjpeg($file); break;
          case IMAGETYPE_PNG:  $img = imagecreatefrompng($file);  break;
        }
      
        // Wenn Bild eingelesen wurde
        if ($img)
        {
          // Dummy muss nicht erzeugt werden
          $createDummy = false;
        
          // Bild ausgeben
          switch ($data)
          {
              case IMAGETYPE_GIF:  header("Content-type: image/gif");  imagegif($img);  exit; break;
              case IMAGETYPE_JPEG: header("Content-type: image/jpeg"); imagejpeg($img); exit; break;
              case IMAGETYPE_PNG:  header("Content-type: image/png");  imagePng($img);  exit; break;
          }
        }
    }
  }

  // Irgendetwas ist schief gelaufen, Dummy erzeugen
  if ($createDummy)
  {
      // Dummy erzeugen
      $img = imagecreatetruecolor (16,16);
      // Weiß initialisieren
      $white  = imagecolorallocate($img, 255, 255, 255);
      // Image füllen
      imageFill($img, 0, 0, $white);
      // Rot initialisieren
      $red = imagecolorallocate($img, 255, 0, 0);
      // Linien diagonl zeichnen
      imageLine($img, 0,0,15,15, $red);
      imageLine($img, 0,15,15,0, $red);
      // Dummy ausgeben
      header("Content-type: image/jpeg");
      imagejpeg($img);
      exit;   
  }
?>

Das sieht besser aus.
 
Zurück
Oben