Jump to content

Php kernel file help


mtb211

Recommended Posts

 

Hi ,

I reposted this and the erstell.php is our code... the index ive attached is 3rd party but its a good file, and ive only been working with php for 2 weeks, but know other CCL

 

 

Okay basically I have a kernel file within my server named erstell.php

The index.php file it creates is a bit boring and I found a better index.php file on the internet.

Im not exactly sure where i add the new index.php within the erstell.php

 

I can attach the code for each file below

Line 34 is wher the index is created.(ps can someone tell me how to insert the forum code box?

 

<html>
<head>
<title>Unbenanntes Dokument</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>

<?php

$dir = $uname;
$user = $_POST['user'];
$pass = $_POST['pass'];

// Aktuelles Verzeichnis ermitteln
$thisdir = str_replace(strrchr($_SERVER['SCRIPT_FILENAME'],'/'), '', $_SERVER['SCRIPT_FILENAME']);

// Gewünschtes Verzeichnis erstellen
$oldumask = umask(0);
mkdir($dir,0777);
umask($oldumask);
// Daten für .htaccess erstellen
$htaccess = 'AuthType Basic
AuthUserFile '.$thisdir.'/'.$dir.'/.htpasswd
AuthName "Geschuetzer Bereich"
order deny,allow
allow from all
require valid-user';

// Daten für .htpasswd erstellen
$htpasswd = $uname.':'.crypt($pw, substr(md5(uniqid(rand())), 0, 2));

// Testdatei erstellen (wird angezeigt beim erfolgreichen Login)
$handle = fopen($dir.'/index.php', 'w');
fwrite($handle, '

<?
echo "Hier sind die Bereitgestellten Dateien<br><br>";
$action=opendir("./");
while($datei=readdir($action)){
if(!preg_match("!(\.|\..)$!", $datei)){
if ($datei!="index.php" && $datei!=".htaccess" && $datei!=".htpasswd" ) {
echo "
<a href=\"$datei\">

$datei</a><br>"; } } } ?>');
fclose($handle);

// .htaccess erstellen
$handle = fopen($dir.'/.htaccess', 'w');
fwrite($handle, $htaccess);
fclose($handle);

// .htpasswd erstellen
$handle = fopen($dir.'/.htpasswd', 'w');
fwrite($handle, $htpasswd);
fclose($handle);

?>
</body>
</html>

This is the end of the erstell.php

 

ill copy and paste the index.php file I found on the internet ... works great , but where do i add this to erstell.php?

 

 

 

dirlistv2 - index.php

 

 

 

$startdir = '.';

/*
Show Thumbnails? - Set to true if you wish to use the
scripts auto-thumbnail generation capabilities.
This requires that GD2 is installed.
*/
$showthumbnails = true;

/*
Show Directories - Do you want to make subdirectories available?
If not set this to false
*/
$showdirs = true;

/*
Force downloads - Do you want to force people to download the files
rather than viewing them in their browser?
*/
$forcedownloads = false;

/*
Hide Files - If you wish to hide certain files or directories
then enter their details here. The values entered are matched
against the file/directory names. If any part of the name
matches what is entered below then it is now shown.
*/
$hide = array(
            'dlf',
            'index.php',
            'Thumbs',
               
         );
         
/*
Show index files - if an index file is found in a directory
to you want to display that rather than the listing output
from this script?
*/         
$displayindex = false;

/*
Allow uploads? - If enabled users will be able to upload
files to any viewable directory. You should really only enable
this if the area this script is in is already password protected.
*/
$allowuploads = false;

/*
Overwrite files - If a user uploads a file with the same
name as an existing file do you want the existing file
to be overwritten?
*/
$overwrite = false;

/*
Index files - The follow array contains all the index files
that will be used if $displayindex (above) is set to true.
Feel free to add, delete or alter these
*/

$indexfiles = array (
            'index.html',
            'index.htm',
            'default.htm',
            'default.html'
         );
         
/*
File Icons - If you want to add your own special file icons use
this section below. Each entry relates to the extension of the
given file, in the form <extension> => <filename>.
These files must be located within the dlf directory.
*/
$filetypes = array (
            'png' => 'jpg.gif',
            'jpeg' => 'jpg.gif',
            'bmp' => 'jpg.gif',
            'jpg' => 'jpg.gif',
            'gif' => 'gif.gif',
            'zip' => 'archive.png',
            'rar' => 'archive.png',
            'exe' => 'exe.gif',
            'setup' => 'setup.gif',
            'txt' => 'text.png',
            'htm' => 'html.gif',
            'html' => 'html.gif',
            'fla' => 'fla.gif',
            'swf' => 'swf.gif',
            'xls' => 'xls.gif',
            'doc' => 'doc.gif',
            'sig' => 'sig.gif',
            'fh10' => 'fh10.gif',
            'pdf' => 'pdf.gif',
            'psd' => 'psd.gif',
            'rm' => 'real.gif',
            'mpg' => 'video.gif',
            'mpeg' => 'video.gif',
            'mov' => 'video2.gif',
            'avi' => 'video.gif',
            'eps' => 'eps.gif',
            'gz' => 'archive.png',
            'asc' => 'sig.gif',
         );
         
/*
That's it! You are now ready to upload this script to the server.

Only edit what is below this line if you are sure that you know what you
are doing!
*/
error_reporting(0);
if(!function_exists('imagecreatetruecolor')) $showthumbnails = false;
$leadon = $startdir;
if($leadon=='.') $leadon = '';
if((substr($leadon, -1, 1)!='/') && $leadon!='') $leadon = $leadon . '/';
$startdir = $leadon;

if($_GET['dir']) {
   //check this is okay.
   
   if(substr($_GET['dir'], -1, 1)!='/') {
      $_GET['dir'] = $_GET['dir'] . '/';
   }
   
   $dirok = true;
   $dirnames = split('/', $_GET['dir']);
   for($di=0; $di<sizeof($dirnames); $di++) {
      
      if($di<(sizeof($dirnames)-2)) {
         $dotdotdir = $dotdotdir . $dirnames[$di] . '/';
      }
      
      if($dirnames[$di] == '..') {
         $dirok = false;
      }
   }
   
   if(substr($_GET['dir'], 0, 1)=='/') {
      $dirok = false;
   }
   
   if($dirok) {
       $leadon = $leadon . $_GET['dir'];
   }
}

if($_GET['download'] && $forcedownloads) {
   $file = str_replace('/', '', $_GET['download']);
   $file = str_replace('..', '', $file);

   if(file_exists($leadon . $file)) {
      header("Content-type: application/x-download");
      header("Content-Length: ".filesize($leadon . $file));
      header('Content-Disposition: attachment; filename="'.$file.'"');
      readfile($leadon . $file);
      die();
   }
}

if($allowuploads && $_FILES['file']) {
   $upload = true;
   if(!$overwrite) {
      if(file_exists($leadon.$_FILES['file']['name'])) {
         $upload = false;
      }
   }
   
   if($upload) {
      move_uploaded_file($_FILES['file']['tmp_name'], $leadon . $_FILES['file']['name']);
   }
}

$opendir = $leadon;
if(!$leadon) $opendir = '.';
if(!file_exists($opendir)) {
   $opendir = '.';
   $leadon = $startdir;
}

clearstatcache();
if ($handle = opendir($opendir)) {
   while (false !== ($file = readdir($handle))) {
      //first see if this file is required in the listing
      if ($file == "." || $file == "..")  continue;
      $discard = false;
      for($hi=0;$hi<sizeof($hide);$hi++) {
         if(strpos($file, $hide[$hi])!==false) {
            $discard = true;
         }
      }
      
      if($discard) continue;
      if (@filetype($leadon.$file) == "dir") {
         if(!$showdirs) continue;
      
         $n++;
         if($_GET['sort']=="date") {
            $key = @filemtime($leadon.$file) . ".$n";
         }
         else {
            $key = $n;
         }
         $dirs[$key] = $file . "/";
      }
      else {
         $n++;
         if($_GET['sort']=="date") {
            $key = @filemtime($leadon.$file) . ".$n";
         }
         elseif($_GET['sort']=="size") {
            $key = @filesize($leadon.$file) . ".$n";
         }
         else {
            $key = $n;
         }
         $files[$key] = $file;
         
         if($displayindex) {
            if(in_array(strtolower($file), $indexfiles)) {
               header("Location: $file");
               die();
            }
         }
      }
   }
   closedir($handle);
}

//sort our files
if($_GET['sort']=="date") {
   @ksort($dirs, SORT_NUMERIC);
   @ksort($files, SORT_NUMERIC);
}
elseif($_GET['sort']=="size") {
   @natcasesort($dirs);
   @ksort($files, SORT_NUMERIC);
}
else {
   @natcasesort($dirs);
   @natcasesort($files);
}

//order correctly
if($_GET['order']=="desc" && $_GET['sort']!="size") {$dirs = @array_reverse($dirs);}
if($_GET['order']=="desc") {$files = @array_reverse($files);}
$dirs = @array_values($dirs); $files = @array_values($files);


?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Directory Listing of <?=dirname($_SERVER['PHP_SELF']).'/'.$leadon;?></title>
<link rel="stylesheet" type="text/css" href="dlf/styles.css" />
<?
if($showthumbnails) {
?>
<script language="javascript" type="text/javascript">
<!--
function o(n, i) {
   document.images['thumb'+n].src = 'dlf/i.php?f='+i;

}

function f(n) {
   document.images['thumb'+n].src = 'dlf/trans.gif';
}
//-->
</script>
<?
}
?>
</head>
<body>
<div id="container">
  <h1>Directory Listing of <?=dirname($_SERVER['PHP_SELF']).'/'.$leadon;?></h1>
  <div id="breadcrumbs"> <a href="<?=$_SERVER['PHP_SELF'];?>">home</a>
  <?
     $breadcrumbs = split('/', $leadon);
     if(($bsize = sizeof($breadcrumbs))>0) {
        $sofar = '';
        for($bi=0;$bi<($bsize-1);$bi++) {
         $sofar = $sofar . $breadcrumbs[$bi] . '/';
         echo ' > <a href="'.$_SERVER['PHP_SELF'].'?dir='.urlencode($sofar).'">'.$breadcrumbs[$bi].'</a>';
      }
     }

   $baseurl = $_SERVER['PHP_SELF'] . '?dir='.$_GET['dir'] . '&';
   $fileurl = 'sort=name&order=asc';
   $sizeurl = 'sort=size&order=asc';
   $dateurl = 'sort=date&order=asc';
   
   switch ($_GET['sort']) {
      case 'name':
         if($_GET['order']=='asc') $fileurl = 'sort=name&order=desc';
         break;
      case 'size':
         if($_GET['order']=='asc') $sizeurl = 'sort=size&order=desc';
         break;
         
      case 'date':
         if($_GET['order']=='asc') $dateurl = 'sort=date&order=desc';
         break; 
      default:
         $fileurl = 'sort=name&order=desc';
         break;
   }
  ?>
  </div>
  <div id="listingcontainer">
    <div id="listingheader">
   <div id="headerfile"><a href="<?=$baseurl . $fileurl;?>">File</a></div>
   <div id="headersize"><a href="<?=$baseurl . $sizeurl;?>">Size</a></div>
   <div id="headermodified"><a href="<?=$baseurl . $dateurl;?>">Last Modified</a></div>
   </div>
    <div id="listing">
   <?
   $class = 'b';
   if($dirok) {
   ?>
   <div><a href="<?=$_SERVER['PHP_SELF'].'?dir='.urlencode($dotdotdir);?>" class="<?=$class;?>"><img src="dlf/dirup.png" alt="Folder" /><strong>..</strong> <em>-</em> <?=date ("M d Y h:i:s A", filemtime($dotdotdir));?></a></div>
   <?
      if($class=='b') $class='w';
      else $class = 'b';
   }
   $arsize = sizeof($dirs);
   for($i=0;$i<$arsize;$i++) {
   ?>
   <div><a href="<?=$_SERVER['PHP_SELF'].'?dir='.urlencode($leadon.$dirs[$i]);?>" class="<?=$class;?>"><img src="dlf/folder.png" alt="<?=$dirs[$i];?>" /><strong><?=$dirs[$i];?></strong> <em>-</em> <?=date ("M d Y h:i:s A", filemtime($leadon.$dirs[$i]));?></a></div>
   <?
      if($class=='b') $class='w';
      else $class = 'b';   
   }
   
   $arsize = sizeof($files);
   for($i=0;$i<$arsize;$i++) {
      $icon = 'unknown.png';
      $ext = strtolower(substr($files[$i], strrpos($files[$i], '.')+1));
      $supportedimages = array('gif', 'png', 'jpeg', 'jpg');
      $thumb = '';
      
      if($showthumbnails && in_array($ext, $supportedimages)) {
         $thumb = '<span><img src="dlf/trans.gif" alt="'.$files[$i].'" name="thumb'.$i.'" /></span>';
         $thumb2 = ' onmouseover="o('.$i.', \''.urlencode($leadon . $files[$i]).'\');" onmouseout="f('.$i.');"';
         
      }
      
      if($filetypes[$ext]) {
         $icon = $filetypes[$ext];
      }
      
      $filename = $files[$i];
      if(strlen($filename)>43) {
         $filename = substr($files[$i], 0, 40) . '...';
      }
      
      $fileurl = $leadon . $files[$i];
      if($forcedownloads) {
         $fileurl = $_SESSION['PHP_SELF'] . '?dir=' . urlencode($leadon) . '&download=' . urlencode($files[$i]);
      }

   ?>
   <div><a href="<?=$fileurl;?>" class="<?=$class;?>"<?=$thumb2;?>><img src="dlf/<?=$icon;?>" alt="<?=$files[$i];?>" /><strong><?=$filename;?></strong> <em><?=round(filesize($leadon.$files[$i])/1024);?>KB</em> <?=date ("M d Y h:i:s A", filemtime($leadon.$files[$i]));?><?=$thumb;?></a></div>
   <?
      if($class=='b') $class='w';
      else $class = 'b';   
   }   
   ?></div>
   <?
   if($allowuploads) {
      $phpallowuploads = (bool) ini_get('file_uploads');      
      $phpmaxsize = ini_get('upload_max_filesize');
      $phpmaxsize = trim($phpmaxsize);
      $last = strtolower($phpmaxsize{strlen($phpmaxsize)-1});
      switch($last) {
         case 'g':
            $phpmaxsize *= 1024;
         case 'm':
            $phpmaxsize *= 1024;
      }
   
   ?>
   <div id="upload">
      <div id="uploadtitle"><strong>File Upload</strong> (Max Filesize: <?=$phpmaxsize;?>KB)</div>
      <div id="uploadcontent">
         <?
         if($phpallowuploads) {
         ?>
         <form method="post" action="<?=$_SERVER['PHP_SELF'];?>?dir=<?=urlencode($leadon);?>" enctype="multipart/form-data">
         <input type="file" name="file" /> <input type="submit" value="Upload" />
         </form>
         <?
         }
         else {
         ?>
         File uploads are disabled in your php.ini file. Please enable them.
         <?
         }
         ?>
      </div>
      
   </div>
   <?
   }
   ?>
  </div>
</div>

</body>
</html> 

Link to comment
Share on other sites

sorry! i was just hoping I could have a little help understanding the erstell.php code since i did not program it... This file creates the index.php file correct? or is it just coping the index.php file ?

 

thanks in advance

Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.