[Support] SA:MP Control Panel

  • geht es nun auch für linux?

    nö das wird aber derzeit gemacht.


    15€ Verkaufen
    Ok lasse ich lieber sonst kommt "ihr"


    Warum steht dort mein Copyright ?
    Weil die neuen Systeme von mir sind wenn es dir nicht passt geh doch rechtlich vor ?


    Woher ist der WebFTP Script?
    Westi aber kann man schnell finden tipp in google.de "webftp script" ein und schon hast du da was


    Hintergrund von sa-rl.de?
    Ja ist er und wenn sa-rl.de will können sie ja rechtlich vorgehen.


    Ich hoffe eure Fragen sind geklärt.

  • Ja ist er und wenn sa-rl.de will können sie ja rechtlich vorgehen.

    Der Hintergrund ist aber nicht auf deinem Server, wurde via <img> von SA-RL's Server eingebunden ^^

  • Warum steht dort mein Copyright ?
    Weil die neuen Systeme von mir sind wenn es dir nicht passt geh doch rechtlich vor ?


    Achja,
    Also wenn ich mir nun WBB Runterlade, 1 System von mir Reinbaue, dann kann ich das Woltlab Cobyright Rausholen und meins Reinmachen ? und es auch verkaufen als mein Werk ?
    NAya, das denke ich ja nicht.

    Stahlbau Azubi deswegen kaum Aktiv

  • Ich hab jetzt mal gegooglet und nix derartiges gefunden, nur so fertig "Web FTP" Seiten, welche man dann wie ein FTP Client nutzt. Etwas ähnliches wie in deinem Panel vorhanden ist hab ich nicht gefunden.


    Hab mir auch mal Westi's Panel angeschaut und festgestellt das man ohne weiteres das da gar nicht so einfach raus bekommt, dann frag ich mich wieso du dir soviel mühe machst um sowas angeblich rauszubauen anstatt einfach selbst etwas zu machen, wenn der rest ja sowieso von dir ist...

  • Ich hab jetzt mal gegooglet und nix derartiges gefunden, nur so fertig "Web FTP" Seiten, welche man dann wie ein FTP Client nutzt. Etwas ähnliches wie in deinem Panel vorhanden ist hab ich nicht gefunden.


    Hab mir auch mal Westi's Panel angeschaut und festgestellt das man ohne weiteres das da gar nicht so einfach raus bekommt, dann frag ich mich wieso du dir soviel mühe machst um sowas angeblich rauszubauen anstatt einfach selbst etwas zu machen, wenn der rest ja sowieso von dir ist...

    Hey,


    ich gebe nicht an ein eigenes gemacht zu haben, das WebFTP script von Westi blieb so wie es war nur ein wenig ein dem Quellentext (style Mäsig) editiert.
    Ich habe viele dinge neu geschrieben und natürlich auch verändert.


    Ich werde später dir das Web FTP geschichten zeugs von dort raus kopieren :)


    Neuer demo Link:
    http://95.115.255.24/555/index.php?mode=login


    Die WebFTP Funktion: (Hoffe das sie dir was bringt)

    Spoiler anzeigen

    class FileManagerCore
    {
    function RemoveFolder($dir, $DeleteMe = true)
    {
    if(!$dh = @opendir($dir)) return;
    while(false !== ($obj = readdir($dh)))
    {
    if($obj == '.' || $obj == '..') continue;
    if(!@unlink($dir.'/'.$obj)) FileManagerCore::RemoveFolder($dir.'/'.$obj, true);
    }

    Spoiler anzeigen
    closedir($dh);
    if ($DeleteMe)
    {
    @rmdir($dir);
    }

    Spoiler anzeigen
    MiscCore::SuccessFunc('Der Ordner wurde erfolgreich gelöscht. <br /><a href="?mode=files&dir='.$_GET['redir'].'">Zurück</a><br />');
    }

    Spoiler anzeigen
    function RemoveFile($folder, $path)
    {
    $filepath = $folder.'/'.$path;
    $filepath = str_replace("../", "", $filepath);

    Spoiler anzeigen
    @unlink($filepath) or MiscCore::ErrorFunc("Sorry, there was an undisclosed error. Probably the file doesn't exist.");
    MiscCore::SuccessFunc('Die Datei wurde erfolgreich gelöscht. ('.$path.') <br /><a href="?mode=files&dir='.$_GET['redir'].'">Zurück</a><br />');
    }
    function EditFiles($path, $file, $returnurl = false)
    {
    if(!isset($file) || !isset($path))
    {
    MiscCore::ErrorFunc('Diese Datei existiert nicht.');
    }

    Spoiler anzeigen
    $dir = explode('/', $_GET['edit']);

    Spoiler anzeigen
    if(!FileManagerCore::CheckBlackList($dir[0]) || !FileManagerCore::CheckBlackList($dir[1]))
    {
    MiscCore::ErrorFunc("Sie können diese Datei nicht bearbeiten.");
    }

    Spoiler anzeigen
    $filepath = $path.$file;
    $filepath = str_replace("../", "", $filepath);

    Spoiler anzeigen
    if(!FileManagerCore::CheckExtBlackList($filepath))
    {
    MiscCore::ErrorFunc("Diese Datei existiert nicht.", true);
    }

    Spoiler anzeigen
    if ($_SERVER['REQUEST_METHOD'] == 'POST')
    {
    if(!isset($_POST['newfile']))
    {
    MiscCore::ErrorFunc('Bitte geben sie neue Daten für diese Datei ein.');
    }

    Spoiler anzeigen
    if(!file_exists($filepath))
    {
    MiscCore::ErrorFunc("Diese Datei existiert nicht.", true);
    }

    Spoiler anzeigen
    $f = fopen($filepath, 'w') ;
    $result = stripslashes($_POST['newfile']);
    fwrite($f, $result);
    fclose($f);

    Spoiler anzeigen
    MiscCore::SuccessFunc('Die Datei wurde erfolgreich gespeichert.<br /><a href="?mode=files&dir='.$_GET['redir'].'">Zurück</a> <a href="?mode=files&edit='.$_GET['edit'].'&redir='.$_GET['redir'].'">Bearbeiten</a><br />');
    }
    else
    {
    if(!file_exists($filepath))
    {
    MiscCore::ErrorFunc("Diese Datei existiert nicht.", true);
    }

    Spoiler anzeigen
    $f = fopen($filepath, 'r');
    $data = @fread($f, filesize($filepath));
    fclose($f);

    Spoiler anzeigen
    echo '<h3>Bearbeitungs Datei: '.htmlentities($file).'</h3>';

    Spoiler anzeigen
    echo '<form method="POST">';
    echo '<textarea name="newfile" rows="20" cols="78" style="font-family: Consolas, \'Courier New\'; font-size: 12px;">'.htmlentities($data).'</textarea>';
    echo '<br />';
    echo '<input type="submit" class="button" name="submit" value="Speichern" />&nbsp;&nbsp;<a href="?mode=files&dir='.$_GET['redir'].'"><span class="button">Abbrechen</span></a>';
    echo '</form>';
    }
    }

    Spoiler anzeigen
    function CreateFile($basedir, $path)
    {
    $filepath = $basedir.'/'.$path;
    $filepath = str_replace("../", "", $filepath);

    Spoiler anzeigen
    $handle = fopen($filepath, 'x+');
    fwrite($handle, '');
    fclose($handle);
    }

    Spoiler anzeigen
    function CreateFolder($path, $folder)
    {
    $oldumask = umask(0);
    mkdir ($path.''.$folder, 0777);
    umask($oldumask);
    }

    Spoiler anzeigen
    function UploadFiles($path)
    {
    $returnage = "";

    Spoiler anzeigen
    if($_SERVER['REQUEST_METHOD'] == 'POST')
    {
    if (isset($_FILES['file']) == false OR $_FILES['file']['error'] == UPLOAD_ERR_NO_FILE)
    {
    MiscCore::ErrorFunc('Sie haben keine Datei zum Hochladen ausgewählt.');
    }

    Spoiler anzeigen
    if ($_FILES['file']['error'] != UPLOAD_ERR_OK || !FileManagerCore::CheckExtBlackList($_FILES['file']['name']))
    {
    $_SESSION['file_error'] = true;
    MiscCore::ErrorFunc('Die Datei die sie Hochladen wollen ist zu groß.', true);
    }

    Spoiler anzeigen
    $newfile = $path.'/'.$_FILES['file']['name'];
    move_uploaded_file($_FILES['file']['tmp_name'], $newfile);

    Spoiler anzeigen
    MiscCore::SuccessFunc('Die Datei wurde erfolgreich Hochgeladen. <br /><a href="?mode=files&dir='.$_GET['redir'].'">Zurück</a><br />');
    }
    else
    {
    $returnage .= '<form action="" method="POST" enctype="multipart/form-data">';
    $returnage .= '<input type="file" name="file" size="30">';
    $returnage .= '<input type="submit" class="button" value="Datei Hochladen" />';
    $returnage .= '</form>';
    return $returnage;
    }
    }

    Spoiler anzeigen
    function DownloadFile($basedir, $file)
    {
    $backup = $basedir.'/'.$file;
    header('Content-type: application/octet-stream');
    header("Content-Length: ".filesize($backup));
    header('Content-Disposition: attachment; filename="'.$file.'"');
    readfile($backup);
    exit;
    }

    Spoiler anzeigen
    function RenameFile($oldpath, $newpath)
    {
    rename($oldpath, $newpath);
    }

    Spoiler anzeigen
    function ViewDirectory($basedir, $folder = "")
    {
    global $file_folder_blacklist;

    Spoiler anzeigen
    $_SESSION['f_folder'] = $basedir.'/'.$folder;

    Spoiler anzeigen
    $path = $basedir.'/'.$folder;

    Spoiler anzeigen
    $disallowed = array("../", "..");
    $path = MiscCore::WeedKiller($path, $disallowed);

    Spoiler anzeigen
    $dir = explode('/', $_GET['dir']);

    Spoiler anzeigen
    echo '<strong>Datei/Ordner Pfad:</strong> /';
    print '<a href="?mode=files">~</a>/';
    $string = "";
    $msg = "";
    $i = 0;

    Spoiler anzeigen
    foreach($dir as $content)
    {
    str_replace("/", "", $content);
    $i++;
    if($i == 1) $string .= $content;
    else $string .= '/'.$content;

    Spoiler anzeigen
    if(strlen($string) < 4) continue;
    $msg .= '<a href="?mode=files&dir='.$string.'">'.$content.'</a>/';
    }

    Spoiler anzeigen
    echo $msg;

    Spoiler anzeigen
    foreach($dir as $blocked)
    {
    if(!FileManagerCore::CheckBlackList($blocked)) MiscCore::ErrorFunc("Der Zugang zu diesem Bereich ist von ihrer Ip Adresse verweigert!", true);
    }

    Spoiler anzeigen
    echo '<br /><br />';

    Spoiler anzeigen
    echo '<strong>Zeige Optionen:</strong> <input type="checkbox" name="" value="1" onclick="ShowBox(\'filemgr_toolbar\', this)">';
    echo '<div id="filemgr_toolbar" style="display:none;">';

    Spoiler anzeigen
    MiscCore::InfoFunc('<form name="filecreate" method="post" action="">
    <label>Name: <input type="text" name="textfield">&nbsp;&nbsp;&nbsp;</label>
    <label>Ordner: <input name="result" type="radio" value="folder">&nbsp;&nbsp;&nbsp;</label>
    <label>Datei: <input name="result" type="radio" value="file">&nbsp;&nbsp;&nbsp;</label>
    <input name="create" type="submit" value="Erstellen" class="button">
    </form>'.
    FileManagerCore::UploadFiles($_SESSION['f_folder']));
    echo "<br /><strong>Hilfe:</strong> Öffne die Option in dem sie auf das Bild klicken. <br />Schliese die Option in dem sie nochmals auf das Bild klicken.";
    echo "</div>";

    Spoiler anzeigen
    $index = 0;
    if($handle = @opendir($path))
    {
    echo '<br /><br />'; /*<strong>Directories</strong><br />';*/
    while(false !== ($file = readdir($handle)))
    {
    if ($file != "." && $file != "..")
    {
    $fName = $file;

    Spoiler anzeigen
    /* Getting teh folders: */
    if(is_dir($path.'/'.$file))
    {

    Spoiler anzeigen
    $dis[1] = true;
    if(!FileManagerCore::CheckBlackList($fName)) continue;
    if(!FileManagerCore::CheckExtBlackList($fName)) continue;
    if(!is_readable($path.'/'.$file) || !is_writeable($path.'/'.$file)) continue;
    echo '<table width="570" border="0" cellpadding="3" cellspacing="0">
    <tr>
    <td width="4%">
    <div id="fileicon-a'.$index.'" style="display: block;">
    <a style="cursor: crosshair;" alt="Klicken sie hier um die Optionen zu zeigen." onclick="ShowBoxRaw(\'filecontent-'.$index.'\', this, \'block\'); ShowBoxRaw(\'fileicon-a'.$index.'\', this, \'none\'); ShowBoxRaw(\'fileicon-b'.$index.'\', this, \'block\');">
    <img src="index.php?image_create=folder" alt="" style="border: 0px; padding: 0px; margin: 0px;" />
    </a>
    </div>
    <div id="fileicon-b'.$index.'" style="display: none;">
    <a style="cursor: crosshair;" alt="Klicken sie hier um die Optionen zu schließen." onclick="ShowBoxRaw(\'filecontent-'.$index.'\', this, \'none\'); ShowBoxRaw(\'fileicon-a'.$index.'\', this, \'block\'); ShowBoxRaw(\'fileicon-b'.$index.'\', this, \'none\');">
    <img src="index.php?image_create=folder" alt="" style="border: 0px; padding: 0px; margin: 0px;" />
    </a>
    </div>
    </td>
    <td width="96%"><a href="?mode=files&dir='.$_GET['dir'].'/'.$file.'">'.$file.'</a></td>
    </table>';

    Spoiler anzeigen
    echo '<div class="filecontent" id="filecontent-'.$index.'" ondblclick="ShowBoxRaw(\'filecontent-'.$index.'\', this, \'none\'); ShowBoxRaw(\'fileicon-a'.$index.'\', this, \'block\'); ShowBoxRaw(\'fileicon-b'.$index.'\', this, \'none\');">'.
    "\n".'<div class="filepadding"><table width="290" border="0" cellspacing="0" cellpadding="2">'.
    "\n".'<tr>'.
    "\n".'<td width="16"><a href="?mode=files&fdelete='.$_GET['dir'].'/'.$file.'&redir='.$_GET['dir'].'"><img src="index.php?image_create=_delete" alt="Löschen" style="border: 0px; padding: 0px; margin: 0px; a:link { border: 0px; }" /></a></td>'.
    "\n".'<td width="65">Löschen</td>'.
    "\n".'<td><strong>Bearbeitet am:</strong> '.date("d/m/Y H:i:s", filemtime(_DIRECTORY.'/'.$_GET['dir'].'/'.$file)).'</td>'.
    "\n".'</tr><tr>'.
    "\n".'<td width="16"><a href="?mode=files&dir='.$_GET['dir'].'/'.$file.'"><img src="index.php?image_create=folder" alt="" style="border: 0px; padding: 0px; margin: 0px;" /></a></td>'.
    "\n".'<td width="65">Öffnen</td>'.
    "\n".'<td><strong>Dateiberechtigung:</strong> '.FileManagerCore::ViewPermsColour(_DIRECTORY.'/'.$_GET['dir'].'/'.$file).'</td>'.
    "\n".'</tr><tr>'.
    "\n".'<td width="16"></td>'.
    "\n".'<td width="65"></td>'.
    "\n".'<td>&nbsp;</td>'.
    "\n".'</tr>'.
    "\n".'</table></div>'.
    "\n".'</div>';
    $index++;
    }
    }
    }
    closedir($handle);
    }

    Spoiler anzeigen
    if($handle = @opendir($path))
    {
    //echo '<br /><strong>Files</strong><br />';
    echo "<br />";
    while($file = readdir($handle))
    {
    if ($file != "." && $file != "..")
    {
    $fName = $file;
    /* Getting teh files */
    if(!is_dir($path.'/'.$file))
    {
    if(!FileManagerCore::CheckBlackList($fName)) continue;
    if(!FileManagerCore::CheckExtBlackList($fName)) continue;
    if(!is_readable($path.'/'.$file) || !is_writeable($path.'/'.$file)) continue;
    echo '<table width="570" border="0" cellpadding="3" cellspacing="0">
    <tr>
    <td width="4%">
    <div id="fileicon-a'.$index.'" style="display: block;">
    <a style="cursor: crosshair;" alt="Klicken sie hier um die Optionen zu zeigen." onclick="ShowBoxRaw(\'filecontent-'.$index.'\', this, \'block\'); ShowBoxRaw(\'fileicon-a'.$index.'\', this, \'none\'); ShowBoxRaw(\'fileicon-b'.$index.'\', this, \'block\');">
    <img src="index.php?image_create='.MiscCore::ReturnExtension($fName).'" alt="" style="border: 0px; padding: 0px; margin: 0px;" />
    </a>
    </div>
    <div id="fileicon-b'.$index.'" style="display: none;">
    <a style="cursor: crosshair;" alt="Klicken sie hier um die Optionen zu schließen." onclick="ShowBoxRaw(\'filecontent-'.$index.'\', this, \'none\'); ShowBoxRaw(\'fileicon-a'.$index.'\', this, \'block\'); ShowBoxRaw(\'fileicon-b'.$index.'\', this, \'none\');">
    <img src="index.php?image_create='.MiscCore::ReturnExtension($fName).'" alt="" style="border: 0px; padding: 0px; margin: 0px;" />
    </a>
    </div>
    </td>
    <td width="96%">'.$fName.'</td>
    </tr>
    </table>';
    echo '<div class="filecontent" id="filecontent-'.$index.'" ondblclick="ShowBoxRaw(\'filecontent-'.$index.'\', this, \'none\'); ShowBoxRaw(\'fileicon-a'.$index.'\', this, \'block\'); ShowBoxRaw(\'fileicon-b'.$index.'\', this, \'none\');">'.
    '<div class="filepadding"><table width="290" border="0" cellspacing="0" cellpadding="2">'.
    '<tr>'.
    '<td width="16"><a href="?mode=files&download='.$_GET['dir'].'/'.$file.'"><img src="index.php?image_create=_download" alt="Download File" style="border: 0px; padding: 0px; margin: 0px; a:link { border: 0px; }" /></a></td>'.
    '<td width="65">Download</td>'.
    '<td><strong>Größe:</strong> '.FileManagerCore::GetFileSize(_DIRECTORY.'/'.$_GET['dir'].'/'.$file).'</td>'.
    '</tr><tr>'.
    '<td width="16"><a href="?mode=files&edit='.$_GET['dir'].'/'.$file.'&redir='.$_GET['dir'].'"><img src="index.php?image_create=_edit" alt="Edit File" style="border: 0px; padding: 0px; margin: 0px; a:link { border: 0px; }" /></a></td>'.
    '<td width="65">Bearbeiten</td>'.
    '<td><strong>Bearbeitet am:</strong> '.date("d/m/Y H:i:s", filemtime(_DIRECTORY.'/'.$_GET['dir'].'/'.$file)).'</td>'.
    '</tr><tr>'.
    '<td width="16"><a href="?mode=files&delete='.$_GET['dir'].'/'.$file.'&redir='.$_GET['dir'].'"><img src="index.php?image_create=_delete" alt="Delete File" style="border: 0px; padding: 0px; margin: 0px;" /></a></td>'.
    '<td width="65">Löschen</td>'.
    '<td><strong>Dateiberechtigung:</strong> '.FileManagerCore::ViewPermsColour(_DIRECTORY.'/'.$_GET['dir'].'/'.$file).'</td>'.
    '</tr>'.
    '</table></div>'.
    '</div>';
    $index++;
    }
    }
    }
    closedir($handle);
    }
    else
    {
    MiscCore::ErrorFunc("Die Konfigurationen/Einstellungen sind nicht abgeschlossen!<br>
    Bitte Überprüfen sie ihre einstellungen.");
    }
    }

    Spoiler anzeigen
    function CheckBlackList($file)
    {
    if (FILEBLACKLIST != "")
    {
    $blacklist = explode(" ", FILEBLACKLIST);

    Spoiler anzeigen
    if(in_array(strtolower($file), $blacklist)) return false;
    else return true;
    }
    else return true;
    }

    Spoiler anzeigen
    function CheckExtBlackList($file)
    {
    if (EXTBLACKLIST != "")
    {
    $blacklist = explode(" ", EXTBLACKLIST);

    Spoiler anzeigen
    foreach ($blacklist as $black)
    {
    if(preg_match("/$black\$/i", $file))
    {
    return false;
    }
    }
    return true;
    }
    else return true;
    }

    Spoiler anzeigen
    function FileManagerCheckVar()
    {
    if($_GET['create'] || $_GET['delete'] || $_GET['edit'] || $_GET['copy'] || $_GET['dir']) return 0;
    else return 1;
    }

    Spoiler anzeigen
    function ParsePerms($mode)
    {
    if (($mode & 0xC000) === 0xC000) {$t = "s";}
    elseif (($mode & 0x4000) === 0x4000) {$t = "d";}
    elseif (($mode & 0xA000) === 0xA000) {$t = "l";}
    elseif (($mode & 0x8000) === 0x8000) {$t = "-";}
    elseif (($mode & 0x6000) === 0x6000) {$t = "b";}
    elseif (($mode & 0x2000) === 0x2000) {$t = "c";}
    elseif (($mode & 0x1000) === 0x1000) {$t = "p";}
    else {$t = "?";}
    $o["r"] = ($mode & 00400) > 0; $o["w"] = ($mode & 00200) > 0; $o["x"] = ($mode & 00100) > 0;
    $g["r"] = ($mode & 00040) > 0; $g["w"] = ($mode & 00020) > 0; $g["x"] = ($mode & 00010) > 0;
    $w["r"] = ($mode & 00004) > 0; $w["w"] = ($mode & 00002) > 0; $w["x"] = ($mode & 00001) > 0;
    return array("t"=>$t,"o"=>$o,"g"=>$g,"w"=>$w);
    }

    Spoiler anzeigen
    function ViewPerms($mode)
    {
    if (($mode & 0xC000) === 0xC000) {$type = "s";}
    elseif (($mode & 0x4000) === 0x4000) {$type = "d";}
    elseif (($mode & 0xA000) === 0xA000) {$type = "l";}
    elseif (($mode & 0x8000) === 0x8000) {$type = "-";}
    elseif (($mode & 0x6000) === 0x6000) {$type = "b";}
    elseif (($mode & 0x2000) === 0x2000) {$type = "c";}
    elseif (($mode & 0x1000) === 0x1000) {$type = "p";}
    else {$type = "?";}

    Spoiler anzeigen
    $owner["read"] = ($mode & 00400)?"r":"-";
    $owner["write"] = ($mode & 00200)?"w":"-";
    $owner["execute"] = ($mode & 00100)?"x":"-";
    $group["read"] = ($mode & 00040)?"r":"-";
    $group["write"] = ($mode & 00020)?"w":"-";
    $group["execute"] = ($mode & 00010)?"x":"-";
    $world["read"] = ($mode & 00004)?"r":"-";
    $world["write"] = ($mode & 00002)? "w":"-";
    $world["execute"] = ($mode & 00001)?"x":"-";

    Spoiler anzeigen
    if ($mode & 0x800) {$owner["execute"] = ($owner["execute"] == "x")?"s":"S";}
    if ($mode & 0x400) {$group["execute"] = ($group["execute"] == "x")?"s":"S";}
    if ($mode & 0x200) {$world["execute"] = ($world["execute"] == "x")?"t":"T";}

    Spoiler anzeigen
    return $type.join("",$owner).join("",$group).join("",$world);
    }

    Spoiler anzeigen
    function ViewPermsColour($file)
    {
    $o = $file;
    if(!is_readable($o)) { return "<font color=red><acronym title=\"Diese Datei ist nicht lesbar!\">".FileManagerCore::ViewPerms(fileperms($o))."</acronym></font>"; }
    elseif(!is_writable($o)) { return "<font color=white><acronym title=\"Diese Datei ist nicht schreibbar!\">".FileManagerCore::ViewPerms(fileperms($o))."</acronym></font>"; }
    else { return "<font color=green><acronym title=\"Diese Datei ist nicht les- und schreibbar.\">".FileManagerCore::ViewPerms(fileperms($o))."</acronym></font>"; }
    }

    Spoiler anzeigen
    function CreateFileDirectoryImage($type = "NULL")
    {
    global $base64redirects, $base64images;

    Spoiler anzeigen
    foreach($base64redirects as $extension=>$rawnames)
    {
    if(in_array($type, $rawnames))
    {
    $type = $extension; $found = true;
    break;
    }
    }
    if(!$found) $type = "unknown";

    Spoiler anzeigen
    $image = $base64images[$type];

    Spoiler anzeigen
    header("Content-type: image/gif");
    header("Cache-control: public");
    header("Expires: ".date("r",mktime(0,0,0,1,1,2030)));
    header("Cache-control: max-age=".(60*60*24*7));
    header("Last-Modified: ".date("r", filemtime(__FILE__)));
    echo base64_decode($image);
    exit;
    }

    Spoiler anzeigen
    function GetFileSize($file)
    {
    $size = filesize($file);
    if (!is_numeric($size))
    {
    return false;
    }
    else
    {
    if ($size >= 1073741824) {$size = round($size/1073741824*100)/100 ." GB";}
    elseif ($size >= 1048576) {$size = round($size/1048576*100)/100 ." MB";}
    elseif ($size >= 1024) {$size = round($size/1024*100)/100 ." KB";}
    else {$size = $size . " B";}
    return $size;
    }
    }
    }


    Einmal editiert, zuletzt von EinfachMax ()