Проблем с индексирането на картинки

mario_gangstera

Registered
Значи като използвам този код:

<?php
// PHP Gallery Without Database
// By Dido_net

$dir = "./img/"; // Директорията с картинките...
$picsOnRow = 3; // Картинки на ред...
$picsWidth = 120; // Ширина на картинките в пиксели...
$position = 1; // Позиция. 1 = Ляво, 2 = Центрирано, 3 = Дясно...
$tableBorder = 5; // Бордер на таблицата...
$fileTypes = array("jpg", "gif", "png"); // Файлови формати...

if($position==1)$pos=' align="left"';
if($position==2)$pos=' align="center"';
if($position==3)$pos=' align="right"';
echo "<table border=\"".$tableBorder."\"".$pos.">";
if ($handle = @opendir($dir)) {
$fileCount = 0;
while (false !== ($file = readdir($handle))) {
if ($file != "." && $file != "..") {

$ext = end(explode(".", $file));
if(in_array($ext, $fileTypes)){
if($fileCount == 0){ $fileCount = 1; echo "\n<tr>\n"; }
if($fileCount == $picsOnRow) $closeTr = "</tr>\n<tr>\n";
echo '<td><a href="'.$dir.$file.'" target="_blank"><img src="'.$dir.$file.'" width="'.$picsWidth.'" border="0"></a>'."</td>\n";
echo $closeTr;
$closeTr = false;
if($fileCount == $picsOnRow) $fileCount = 0;
$fileCount++;
}
}
}
closedir($handle);
} else echo "Can't read dir <b>( ".$dir." )</b>";
echo '</tr>';
echo '</table>'."\n";
echo base64_decode('PHRhYmxlIGFsaWduPSJjZW50ZXIiPg0KPHRyPjx0ZD48YnIgLz48YnIgLz48YSBzdHlsZT0iZm9udC1mYW1pbHk6VGFob21hO2ZvbnQtc2l6ZToxMnB4O2NvbG9yOmdyYXk7dGV4dC1kZWNvcmF0aW9uOm5vbmU7ImhyZWY9Imh0dHA6Ly93ZWItdG91cmlzdC5uZXQvbG9naW4vbG9naW4vdmlldy5waHA/c3Q9MjAxNiIgdGFyZ2V0PSJfYmxhbmsiPlBHV0QgdjEuMCBieSBEaWRvX25ldDwvYT48L3RkPjwvdHI+DQo8L3RhYmxlPg==');
?>

---------------------------
Започва да ми изкарва ерори:

Strict Standards: Only variables should be passed by reference in E:\AppServ\www\A-DEMO\demo.php on line 21

Strict Standards: Only variables should be passed by reference in E:\AppServ\www\A-DEMO\demo.php on line 21

Strict Standards: Only variables should be passed by reference in E:\AppServ\www\A-DEMO\demo.php on line 21

Strict Standards: Only variables should be passed by reference in E:\AppServ\www\A-DEMO\demo.php on line 21

Strict Standards: Only variables should be passed by reference in E:\AppServ\www\A-DEMO\demo.php on line 21

Strict Standards: Only variables should be passed by reference in E:\AppServ\www\A-DEMO\demo.php on line 21

Strict Standards: Only variables should be passed by reference in E:\AppServ\www\A-DEMO\demo.php on line 21

Strict Standards: Only variables should be passed by reference in E:\AppServ\www\A-DEMO\demo.php on line 21

Strict Standards: Only variables should be passed by reference in E:\AppServ\www\A-DEMO\demo.php on line 21

Strict Standards: Only variables should be passed by reference in E:\AppServ\www\A-DEMO\demo.php on line 21

Strict Standards: Only variables should be passed by reference in E:\AppServ\www\A-DEMO\demo.php on line 21

Strict Standards: Only variables should be passed by reference in E:\AppServ\www\A-DEMO\demo.php on line 21

Това е 21 ред:

$ext = end(explode(".", $file));
 
Код:
<?php
$dir = "./img/"; // Директорията с картинките...
$picsOnRow = 3; // Картинки на ред...
$picsWidth = 120; // Ширина на картинките в пиксели...
$position = 1; // Позиция. 1 = Ляво, 2 = Центрирано, 3 = Дясно...
$tableBorder = 5; // Бордер на таблицата...
$fileTypes = array("jpg", "gif", "png"); // Файлови формати...

if($position==1)$pos=' align="left"';
if($position==2)$pos=' align="center"';
if($position==3)$pos=' align="right"';
echo "<table border=\"".$tableBorder."\"".$pos.">";
if ($handle = opendir($dir)) {
$fileCount = 0;
while (false !== ($file = readdir($handle))) {
if ($file != "." && $file != "..") {

$ext = end(explode(".", $file));
if(in_array($ext, $fileTypes)){
if($fileCount == 0){ $fileCount = 1; echo "\n<tr>\n"; }
if($fileCount == $picsOnRow) $closeTr = "</tr>\n<tr>\n";
echo '<td><a href="'.$dir.$file.'" target="_blank"><img src="'.$dir.$file.'" width="'.$picsWidth.'" border="0"></a>'."</td>\n";
echo $closeTr;
$closeTr = false;
if($fileCount == $picsOnRow) $fileCount = 0;
$fileCount++;
}
}
}
closedir($handle);
} else echo "Can't read dir <b>( ".$dir." )</b>";
echo '</tr>';
echo '</table>'."\n"; 
?>
 
На хоста е error_reporting-а е сетнат на E_ALL, напиши в началото на страницата :

Код:
error_reporting(E_ALL ^ E_STRICT);
Или направо го направи 0.
:?:
 
F1r3Fl3x каза:
На хоста е error_reporting-а е сетнат на E_ALL, напиши в началото на страницата :

Код:
error_reporting(E_ALL ^ E_STRICT);
Или направо го направи 0.
:?:

като сложих това ми дава пак грешка

Как да направя така че да ми изкарва изображението 200x200

print "<tr><td><a href="$dir$file">$file</a></td></tr>";

аз пробвах така но ми изкарва кутийки:

print "<tr><td><a href="$dir$file"><img src="$file"></img></a></td></tr>";

771088x.jpg


И как се слага странициране защото си нямам и на представа :?

Код:
<?php

$dir = "img/"; // Избираме директорията, от която ще индексираме файловете
if(!is_dir($dir))
{
mkdir($dir); // Проверяваме дали директорията съществува, ако не я създаваме
}
$dh = opendir($dir); // Подготвяме за четене (отваряме) директорията
print "<h3>Индекс на $dir</h3><table width="90%" align="center" border="1"><tr><td style="text-align:center">ИМЕ НА ФАЙЛА:</td></tr>";
while($file = readdir($dh)) // Четем файловете от директорията (този цикъл помага да индексираме всички файлове)
{
if($file != "." and $file != "..") // Не индексираме "." и ".."
{
$lower = strtolower($file);
if(!eregi(".ht",$file)) // Така можете да не индексирате дадени файлове
{
print "<tr><td><a href="$dir$file">$file</a></td></tr>"; // Когато поставяте линк не забравяйте да добавите и променливата $dir
}
}
}
print "</table>";

?>
 

Горе