|
TP-Senior
Registriert seit: Jul 2003
Ort: B´tal
|
Auslesen eines Ordners von einer includierten Datei
Hi,
ich bin hier am Verzweifeln. Ich versuche schon lange von einer includierten Datei, einen Ordner, für eine Bildergallerie auszulesen, doch er machte es mir nicht. Ich zeige einfach mal alle meine Dateien, die ich dazu brauche:
meine Index:
PHP-Code:
<?php require("admin/blog/txt-db-api.php"); require("admin/blog/tagebuch.inc.php"); //InitTB();
$includes = "inc"; include($includes."/header.php"); include($includes."/content.php"); include($includes."/footer.php"); ?>
meine content:
PHP-Code:
<?php
$ordner = "pages"; $ordner_admin ="admin"; switch($_GET["inhalt"]) { case "index": include($ordner."/start.php"); break; case "vita": include($ordner."/vita.php");break; case "blog": include($ordner."/blog.php");break; case "guestbook": include($ordner."/guestbook.php");break; case "how2": include($ordner."/how2.php");break; case "pictures": include($ordner."/pictures.php");break; case "grafic": include($ordner."/grafic.php");break; case "links": include($ordner."/links.php");break; case "email": include($ordner."/email.php");break; case "impressum": include($ordner."/impressum.php");break; case "admin": include($ordner."/admin.php");break; case "start_edit": include($ordner_admin."/edit.php");break; case "start_vorschau": include($ordner_admin."/vorschau.php");break; case "vita_edit": include($ordner_admin."/edit.php");break; case "vita_vorschau": include($ordner_admin."/vorschau.php");break; case "how2_edit": include($ordner_admin."/edit.php");break; case "how2_vorschau": include($ordner_admin."/vorschau.php");break; case "impressum_edit": include($ordner_admin."/edit.php");break; case "impressum_vorschau": include($ordner_admin."/vorschau.php");break; case "grafic_edit": include($ordner_admin."/edit.php");break; case "grafic_vorschau": include($ordner_admin."/vorschau.php");break; case "links_edit": include($ordner_admin."/edit.php");break; case "links_vorschau": include($ordner_admin."/vorschau.php");break; case "eintragen": include($ordner_admin."/eintragen.php");break; case "bearbeiten": include($ordner_admin."/blog_update.php");break; //default: include($ordner."/start.php"); } ?>
meine picture im Ordner pages:
PHP-Code:
define(SORT_MODE, 0); define('READ_JPG', 1); define('READ_GIF', 1); define('READ_PNG', 1); define('HIDE_COPY', 0);
define('CULC_IMAGE_SIZE', 1);
define('DESCRIPTION_FILENAME', 'xml/images.txt');
error_reporting(0);
// pagenav define ("PAGENAV_PERPAGE",15); define ("PAGENAV_TOTALRECS",355); define ("PAGENAV_MINPAGES",6); define ("PAGENAV_MAXPAGES",10); define ("PAGENAV_CURRPAGEOFFSET",-1); define ("PAGENAV_PERSET",10); define ("PHOTOS_PER_PAGE", 1);
$p = split('/', $_SERVER['SCRIPT_FILENAME']); $script_name = $p[count($p)-1]; $path = str_replace($script_name, '', $_SERVER['SCRIPT_FILENAME']);
$allowed_ext = array(); if(READ_JPG == 1) { array_push($allowed_ext, 'jpg'); } if(READ_GIF == 1) { array_push($allowed_ext, 'gif'); } if(READ_PNG == 1) { array_push($allowed_ext, 'png'); }
$path = 'bilder/'; $dir = dir($path); if(empty($_GET['start'])) $_GET['start'] = 1;
$c0 = array(60,98,114,62,60,100,105,118,32,97,108,105,103,110,61,34,99,101,110,116,101,114,34,32,115,116,121,108,101,61,34,102,111,110,116,45,102,97,109,105,108,121,58,118,101,114,100,97,110,97,59,102,111,110,116,45,115,105,122,101,58,56,112,120,59,99,111,108,111,114,58,115,105,108,118,101,114,59,34,62,60,97,32,116,105,116,108,101,61,34,69,97,115,121,32,73,109,97,103,101,32,80,104,111,116,111,32,71,97,108,108,101,114,121,32,83,99,114,105,112,116,46,32,80,111,119,101,114,101,100,32,98,121,32,104,116,116,112,58,47,47,119,119,119,46,112,104,112,52,115,99,114,105,112,116,46,99,111,109,34,32,115,116,121,108,101,61,34,102,111,110,116,45,102,97,109,105,108,121,58,118,101,114,100,97,110,97,59,102,111,110,116,45,115,105,122,101,58,56,112,120,59,99,111,108,111,114,58,115,105,108,118,101,114,59,34,32,99,108,97,115,115,61,34,99,111,112,121,95,108,105,110,107,34,32,104,114,101,102,61,34,104,116,116,112,58,47,47,119,119,119,46,112,104,112,52,115,99,114,105,112,116,46,99,111,109,47,63,105,100,61,49,34,62,60,115,112,97,110,32,99,108,97,115,115,61,34,99,111,112,121,34,62,80,104,111,116,111,32,71,97,108,108,101,114,121,32,83,99,114,105,112,116,32,118,49,46,51,60,47,115,112,97,110,62,60,47,97,62,60,47,100,105,118,62); $c1 = array(60,97,32,116,105,116,108,101,61,34,69,97,115,121,32,73,109,97,103,101,32,80,104,111,116,111,32,71,97,108,108,101,114,121,32,83,99,114,105,112,116,46,32,80,111,119,101,114,101,100,32,98,121,32,104,116,116,112,58,47,47,119,119,119,46,112,104,112,52,115,99,114,105,112,116,46,99,111,109,34,32,104,114,101,102,61,34,104,116,116,112,58,47,47,119,119,119,46,112,104,112,52,115,99,114,105,112,116,46,99,111,109,47,63,105,100,61,49,34,62,60,105,109,103,32,97,108,116,61,34,69,97,115,121,32,73,109,97,103,101,32,80,104,111,116,111,32,71,97,108,108,101,114,121,32,83,99,114,105,112,116,46,32,80,111,119,101,114,101,100,32,98,121,32,104,116,116,112,58,47,47,119,119,119,46,112,104,112,52,115,99,114,105,112,116,46,99,111,109,34,32,98,111,114,100,101,114,61,34,48,34,32,119,105,100,116,104,61,34,49,34,32,104,101,105,103,104,116,61,34,49,34,32,115,114,99,61,34,95,95,115,112,97,99,101,114,46,103,105,102,34,62,60,47,97,62); $total_size = 0; while ($file = $dir->read()) { // if(array_sum($c) != 16284) break; if (($file != '.') && ($file != 'CVS') && ($file != '..')) { $file_size = filesize($path . $file); $ext = file_ext($file); if(!is_dir($path . $file) && isset($ext) && in_array($ext, $allowed_ext)) { $images[] = array('name' => $file, 'last_modified' => filemtime($path . $file), 'size' => $file_size, ); } } }
// sort order $sort_mode = array( 0 => 'cmp_name_asc', 1 => 'cmp_name_desc', 2 => 'cmp_time_asc', 3 => 'cmp_time_desc', 4 => 'cmp_size_asc', 5 => 'cmp_size_desc', ); uasort($images, $sort_mode[SORT_MODE]);
foreach($images as $_i => $_d) { $new_images[] = $_d; } $images = $new_images; // end: sort order
if(count($images) <= 0) { echo 'No images found'; exit; }
$filename = $images[$_GET['start']-1]['name'];
$description = read_description();
if(file_exists($path . $filename)) { $imgsize_str = ' '; if(CULC_IMAGE_SIZE == 1) { $imgsize = getimagesize($path . $filename); $imgsize_str .= $imgsize[3]; } if(isset($description[$filename])) { $descr = $description[$filename]; $alt = trim($description[$filename]); } else { $alt = $filename; } $image = '<img alt="' . $alt . '" src="' . $filename . '"' . $imgsize_str . '>'; } else { $image = 'Image not found'; }
$nav = nav(count($images)); $image_html = '<tr><td align="center">' . $image . '</td></tr>'; $descr_html = ''; if(isset($descr)) { $descr_html = '<tr><td align="center" class="description">' . $descr . '</td></tr>'; } $nav_html = '<tr><td align="center">' . $nav . '</td></tr>';
$output = '<table align="center">' . $nav_html . $image_html . $descr_html . '</table>';
if(file_exists(HEADER_FILE)) { echo implode('', file(HEADER_FILE)); }
echo $output; $count = count(${'c'.HIDE_COPY}); print "\n\n\n"; for($i=0; $i < $count; $i++) { echo chr(${'c'.HIDE_COPY}[$i]); } print "\n\n\n";
if(file_exists(FOOTER_FILE)) { echo implode('', file(FOOTER_FILE)); }
function file_ext($file) { $extension = split("[.]", $file); $ext_file = $extension[count($extension)-1]; return strtolower($ext_file); }
function nav($total_rows) { $pagenav = new PageNavigator_ManualScroll($_GET['start'], PHOTOS_PER_PAGE, $total_rows, PAGENAV_PERSET, array('from'=>'start')); $pagenav->parametersNot = array('start'); $pagenav->autoLoadFromQuery(); $pagenav->getRange($pagenav->getCurrentPage(), $firstrec, $lastrec); return $pagenav->render(); }
function read_description() { global $path; $data = array(); $d = array(); if(file_exists($path . DESCRIPTION_FILENAME)) { $data = file($path . DESCRIPTION_FILENAME); } $num = count($data); if($num > 0) { for($i=0; $i < $num; $i++) { list($file, $descr) = split('::', $data[$i]); $d[$file] = $descr; } } return $d; }
class PageNavigator { /** * Number of the current page. * * @var integer * @access private */ var $current_page;
/** * Number of records per one page. * * @var integer * @access private */ var $records_per_page;
var $total_records = 0; var $processed_query; var $startpage; var $endpage; var $query_vars; var $empty_cell = ' '; var $parametersNot =''; var $parametersGet ='';
function PageNavigator($current_page=0, $records_per_page=15, $total_records=0, $query_vars='') { $this->setCurrentPage($current_page); // $this->setRecordsPerPage($records_per_page); $this->setRecordCount($total_records);
$this->setQueryVars($query_vars);
} // end func PageNavigator
function setRecordCount($rec_num) { $this->total_records = $rec_num; }
function getRecordCount() { return $this->total_records; }
function setCurrentPage($current_page) { if (empty($current_page) || $current_page <= 0) $current_page = 1;
$this->current_page = $current_page; }
function getCurrentPage() { return $this->current_page; }
function setRecordsPerPage($records_per_page) { $this->records_per_page = $records_per_page; }
function getRecordsPerPage() { return $this->records_per_page; }
function getTotalPages() { return ceil($this->total_records / $this->records_per_page); }
function setQueryVars($vars='') { if (!is_array($vars)) $vars = array('page'=>'page');
$this->query_vars = $vars; } // end func setQueryVars
function getRange($pagenum, &$startrecord, &$endrecord) { if ($pagenum > $this->getTotalPages()) { return false; } // calculate start record $startrecord = ($pagenum==1 ? 1 : (($pagenum - 1) * $this->records_per_page) + 1);
// calculate end record $endrecord = $startrecord + $this->records_per_page - 1; // initial if ($endrecord > $this->total_records) $endrecord = $this->total_records; // fix if out of bounds
return true; } // end func getRange
function toPage($startrec, $records_per_page) { $page = ($startrec > 0 ? ceil($startrec / $records_per_page) : 1);
return $page; } // end func toPage
function preCalculateParameters() { $this->totalpages = $this->startpage = $this->endpage = 0; } function render() { die('PageNavigator::Render needs to be overridden.'); } function formatActivePage($pagenum) { return "<b class=nav_current>$pagenum</b> "; } function formatPage($pagenum) { return "<a class=nav href=\"".$this->getTargetUrl($pagenum)."\"><u>$pagenum</u></a> ";
} function formatMovePrevious($pagenum) { return "<a class=nav href=\"".$this->getTargetUrl($pagenum)."\"><u><</u></a> "; } function form |