пишу скрипт фотогалерие.
есть скрипт создания маленькой копии каритнки
minikartinki.php
и усрипт вывода картинок
kartinkiobych.php
НО
не работает а выдаёт
Warning: Division by zero in Z:\home\localhost\www\foto2\minikartinki.php on line 7
как я понимаю не срабатывают функии
resizeimg()
getimagesize()
и не создаютя миникопии
помогите разобраться
minikartinki.php
function resizeimg($f,$min,$w,$h)
{
$koaf=$w/$h;
$razmer=getimagesize($f);
$src_koaf=$rasmer[0]/$rasmer[1];
if(($rasmer[0]<$w)&&($rasmer[1]<$h)) return true;
if($koaf<$src_koaf)$h=$w/$src_koaf;
else $w=$h*$src_koaf;
$pust=imagecreatetruecolor($w,$h);
if($rasmer[2]==2) $img=imagecreatefromjpeg($f);
else if($rasmer[2]==1) $img=imagecreatefromgif($f);
else if($rasmer[2]==3) $img=imagecreatefrompng($f);
if(!imagecopyresampled($pust,$img,0,0,0,0,$w,$h,$rasmer[0],$rasmer[1]))
return false;
$pats=pathinfo($min);
if(($path["extension"]=="jpg")||($path["extension"]=="JPG")) imagejpeg($pust,$min);
else if(($path["extension"]=="gif")||($path["extension"]=="GIF")) imagegif($pust,$min);
else if(($path["extension"]=="png")||($path["extension"]=="PNG")) imagepng($pust,$min);
imagedestroy($pust);
imagedestroy($img);
return true;
}
kartinkiobych.php
<html><body>
<?php
echo "<tble align=center border=1<tr>";
$z=0;
$kart=opendir("./foto");
$foto="foto.txt";
include"minikartinki.php";
include"func.php";
$mass=read($foto);
while(($file=readdir($kart)) !=false)
{
if($file !="." && $file !=".." && $file !="Thumbs.db")
{
if($mass[$z][0]==$file) $zap=$mass[$z][1];
if(!file_exists("./fotomini/$file"))
{
resizeimg("foto/$file","fotomin/$file",130,100);
}
$size_r=getimagesize("foto/$file");
print_r ("<td align='center'><a href='foto/$file' target='_blank'>
<img src='fotomini/$file' border='1' alt=$file></a><br>
<I>$file<br>$size_r[0]x$size_r[1]<br>$zap</I></td>");
$zap="";
$z++;
if(($z/4)==is_integer($z/4)) echo"</tr><tr>";
}
}
closedir($kart);
?>
</body></html>
Спустя 23 минуты, 47 секунд (12.11.2009 - 20:28) Romms написал(а):
судя по ошибке у Вас гдето деления на 0(как всем известно на нуль делить нельзя)
Показжыте нам содержания рядка 7 в файле Z:\home\localhost\www\foto2\minikartinki.php(в этом ряде и есть ошибка
)
Показжыте нам содержания рядка 7 в файле Z:\home\localhost\www\foto2\minikartinki.php(в этом ряде и есть ошибка
![wink.gif](http://phpforum.ru/html/emoticons/wink.gif)
Спустя 9 минут, 36 секунд (12.11.2009 - 20:38) mihai написал(а):
содержимое рядка7 из файла minikartinki.php
ПЕРЕД ВАМИ
ПЕРЕД ВАМИ
Спустя 28 минут, 37 секунд (12.11.2009 - 21:06) Grazor написал(а):
mihai
если это весь код, то тут ноль $rasmer[1]
проверьте, существует ли файл "foto/$file", возможно ошибка в адресе. или высота картинки действительно 0
если это весь код, то тут ноль $rasmer[1]
проверьте, существует ли файл "foto/$file", возможно ошибка в адресе. или высота картинки действительно 0
![dry.gif](http://phpforum.ru/html/emoticons/dry.gif)
Спустя 13 часов, 33 минуты, 26 секунд (13.11.2009 - 10:40) mihai написал(а):
такой файл "foto/$file", конечно же существует
и картинка по высоте конечно же не 0
может быть вот тут что то не работает
(($file=readdir($kart))
и картинка по высоте конечно же не 0
может быть вот тут что то не работает
(($file=readdir($kart))
Спустя 20 минут, 59 секунд (13.11.2009 - 11:01) twin написал(а):
Неравенства строгие надо ставить.
А вообще тебя подводит транслит. Посмотри внимательно:
Размер по английски size - никаких ошибок.
А вообще тебя подводит транслит. Посмотри внимательно:
$razmer=getimagesize($f);
$src_koaf=$rasmer[0]/$rasmer[1];
Размер по английски size - никаких ошибок.
Спустя 1 час, 6 минут, 13 секунд (13.11.2009 - 12:07) Grazor написал(а):
twin
точно!
![laugh.gif](http://phpforum.ru/html/emoticons/laugh.gif)
Спустя 6 часов, 1 минута, 42 секунды (13.11.2009 - 18:09) mihai написал(а):
twin
Grazor
Транслитера́ция — передача одной письменности средствами другой письменности.
ребят я ничего не понял
если можно пальцем пакажите
Grazor
Транслитера́ция — передача одной письменности средствами другой письменности.
![sad.gif](http://phpforum.ru/html/emoticons/sad.gif)
ребят я ничего не понял
если можно пальцем пакажите
Спустя 9 минут, 41 секунда (13.11.2009 - 18:18) Krevedko написал(а):
razmer и rasmer
найди 5 отличий
найди 5 отличий
![biggrin.gif](http://phpforum.ru/html/emoticons/biggrin.gif)
Спустя 17 минут, 35 секунд (13.11.2009 - 18:36) Gabriel написал(а):
Krevedko
не задавай невыполнимых задач
не задавай невыполнимых задач
Спустя 17 часов, 48 минут, 5 секунд (14.11.2009 - 12:24) twin написал(а):
Цитата |
Транслитера́ция — передача одной письменности средствами другой письменности. ребят я ничего не понял если можно пальцем пакажите |
Транслитерация, это замена символов одного алфавита символами другого. То есть ты пишешь razmer и читаешь по русски - размер. А потом пишешь rasmer и так же точно читаешь по русски. Потому что фонемы созвучны.
А вот если бы ты не пользовался транслитом, а писал настоящий перевод, то не ошибся бы. Потому что размер по английски size и переменная так и была бы $size
Спустя 2 часа, 8 минут, 44 секунды (14.11.2009 - 14:33) mihai написал(а):
большое спасибо
да это моя не внимательность
twin
я пишу с книжки а там все эти переменные
придуманы автором
я их не меняю чтобы хоть тут не ошибиться
исправил переменную
но
всё равно не работает
-картинки закачиваются в папку foto и при нажатии
на маленькую картинку большая картинка показывается
-а вот маленькие картнки в папке fotomin не создаются
да это моя не внимательность
twin
я пишу с книжки а там все эти переменные
придуманы автором
я их не меняю чтобы хоть тут не ошибиться
исправил переменную
но
всё равно не работает
-картинки закачиваются в папку foto и при нажатии
на маленькую картинку большая картинка показывается
-а вот маленькие картнки в папке fotomin не создаются
![user posted image](http://adminint.ru/1.jpg)
Спустя 1 час, 1 минута, 52 секунды (14.11.2009 - 15:34) twin написал(а):
Позволь полюбопытствовать, что это за книжка? Мой тебе совет - используй её по прямому назначению, а именно как туалетную бумагу. Если для переменных используется транслит, это говорит о очень низком уровне автора.
Неравенства исправил?
Неравенства исправил?
Спустя 1 час, 57 минут, 47 секунд (14.11.2009 - 17:32) mihai написал(а):
twin
какое неравенство
покажи
какое неравенство
покажи
Спустя 14 минут, 32 секунды (14.11.2009 - 17:47) twin написал(а):
while(($file=readdir($kart)) !== false)
Спустя 25 минут, 42 секунды (14.11.2009 - 18:13) mihai написал(а):
twin
исправил
не фига
миникартинки не создаются
исправил
не фига
миникартинки не создаются
Спустя 55 минут, 20 секунд (14.11.2009 - 19:08) twin написал(а):
Разумеется. Просто если бы я тебе сразу показал ошибку, ты бы эту не исправил. Ищи различия опять в путях:
if(!file_exists("./fotomini/$file"))
{
resizeimg("foto/$file","fotomin/$file",130,100);
Спустя 24 минуты, 34 секунды (14.11.2009 - 19:32) mihai написал(а):
ты имеешь ввиду
вот так то тоже не рабает
вот так то тоже не рабает
if(!file_exists("fotomini/$file"))
{
resizeimg("foto/$file","fotomin/$file",130,100);
Спустя 2 минуты, 41 секунда (14.11.2009 - 19:35) mihai написал(а):
при нажатии на маленьку картинку
большие то показываются нормально
а вот маленькие почемуто не создаются
большие то показываются нормально
а вот маленькие почемуто не создаются
Спустя 37 минут, 21 секунда (14.11.2009 - 20:12) twin написал(а):
Да ёшкин кот... Где welbox2, когда надо пальцем натыкать, его нет.
if(!file_exists("fotomini/$file"))
{
resizeimg("foto/$file","fotomin/$file",130,100);
![biggrin.gif](http://phpforum.ru/html/emoticons/biggrin.gif)
if(!file_exists("fotomini/$file"))
{
resizeimg("foto/$file","fotomin/$file",130,100);
Спустя 49 минут (14.11.2009 - 21:01) mihai написал(а):
Спустя 32 минуты, 57 секунд (14.11.2009 - 21:34) twin написал(а):
не открывается
Спустя 5 минут, 33 секунды (14.11.2009 - 21:40) Krevedko написал(а):
if(!file_exists("fotomini/$file"))
{
resizeimg("foto/$file","fotomini/$file",130,100);
{
resizeimg("foto/$file","fotomini/$file",130,100);
Спустя 2 часа, 6 минут, 47 секунд (14.11.2009 - 23:47) mihai написал(а):
Krevedko
спасибо
опять моя невнимательность
НО
так то же нифига не работает
спасибо
опять моя невнимательность
НО
так то же нифига не работает
Спустя 5 часов, 47 минут, 58 секунд (15.11.2009 - 05:35) twin написал(а):
Открыть архив так и не смог. Вот поправил, что увидел. Не проверял правда.
Свернутый текст
function resizeimg($f, $min, $w, $h)
{
$ratio = $w / $h;
$size = getimagesize($f);
$src_ratio = $size[0] / $size[1];
if($size[0] < $w && $size[1] < $h)
return true;
if($ratio < $src_ratio)
$h = $w / $src_ratio;
else
$w = $h * $src_ratio;
$dest = imagecreatetruecolor($w, $h);
if($size[2] == 2)
$img = imagecreatefromjpeg($f);
elseif($size[2] == 1)
$img = imagecreatefromgif($f);
elseif($size[2] == 3)
$img = imagecreatefrompng($f);
if(!imagecopyresampled($dest, $img, 0, 0, 0, 0, $w, $h, $size[0], $size[1]))
return false;
$path = pathinfo($min);
if($path['extension'] == 'jpg' || $path['extension'] == 'JPG')
imagejpeg($dest, $min);
elseif($path['extension'] == 'gif' || $path['extension'] == 'GIF')
imagegif($dest, $min);
elseif($path['extension'] == 'png' || $path['extension'] == 'PNG')
imagepng($dest, $min);
imagedestroy($img);
imagedestroy($dest);
return true;
}
Свернутый текст
<html><body>
<?php
echo '<tble align=center border=1<tr>';
$z = 0;
$kart = opendir('./foto');
$foto = './foto.txt';
include './minikartinki.php';
include './func.php';
$mass = read($foto);
while(($file = readdir($kart)) !== false)
{
if($file !== '.' && $file !== '..' && $file !== 'Thumbs.db')
{
if($mass[$z][0] == $file)
$zap = $mass[$z][1];
if(!file_exists('./fotomini/'. $file))
{
resizeimg('./foto/'. $file, './fotomini/'. $file, 130, 100);
}
$size_r = getimagesize('./foto/'. $file);
print_r ('<td align="center">
<a href="foto/'. $file .'" target="_blank">
<img src="fotomini/'. $file .'" border="1" alt="'. $file .'"></a>
<br><I>'. $file .'<br>'. $size_r[0] .'x'. $size_r[1] .'<br>'. $zap .'</I></td>');
$zap = '';
$z++;
if(($z % 4) == 0) echo '</tr><tr>';
}
}
closedir($kart);
?>
</body></html>
Спустя 7 часов, 5 минут, 28 секунд (15.11.2009 - 12:40) mihai написал(а):
twin
спасибо заработало
щас буду разбираться
вот только вопрос
ты вот тут с кавычками ни чего не напутал
хотя блин работает,
не пойму как
спасибо заработало
щас буду разбираться
вот только вопрос
ты вот тут с кавычками ни чего не напутал
print_r ('<td align="center">
<a href="foto/'. $file .'" target="_blank">
<img src="fotomini/'. $file .'" border="1" alt="'. $file .'"></a>
<br>
<I>'. $file .'<br>'. $size_r[0] .'x'. $size_r[1] .'<br>'. $zap .'</I></td>');
хотя блин работает,
не пойму как
Спустя 5 минут, 10 секунд (15.11.2009 - 12:45) twin написал(а):
С кавычками напутал ты, а я исправил.
Говорю же - выкинь эту книжку, купи более другую.
В html валидно писать двойные кавычки, в php строка в апострофах обрабатывается быстрее. Конкатенация делает код более читабельным и управляемым. Так что.
![smile.gif](http://phpforum.ru/html/emoticons/smile.gif)
В html валидно писать двойные кавычки, в php строка в апострофах обрабатывается быстрее. Конкатенация делает код более читабельным и управляемым. Так что.
Спустя 8 минут, 6 секунд (15.11.2009 - 12:53) mihai написал(а):
не понимаю
я всегда думал что
интерпритатор читает вот так
echo "";
или
echo " sss 'ddd' rrr";
ну или вот так
echo " sss \"ddd\" rrr"
а у тебя
'"c"foto/'. $file .'" target="_blank"><img src="fotomini/'. $file .'" border="1" alt="'. $file .'"
я всегда думал что
интерпритатор читает вот так
echo "";
или
echo " sss 'ddd' rrr";
ну или вот так
echo " sss \"ddd\" rrr"
а у тебя
'"c"foto/'. $file .'" target="_blank"><img src="fotomini/'. $file .'" border="1" alt="'. $file .'"
Спустя 26 минут, 33 секунды (15.11.2009 - 13:20) twin написал(а):
Интерпретатор читает одно кавычки внутри других, как символ. Вот проверь:
<pre>
<?php
echo '"';
echo "'";
echo '\'';
echo "\"";
?>
</pre>
Спустя 14 минут, 9 секунд (15.11.2009 - 13:34) mihai написал(а):
ну вот это понятно
а вот это как понять
одинарная кавычка открылась,
одинарная кавычка закрылась
<br><I>'
и как дальше
. $file . уже не читается
<a href="foto/'. $file .'"
а вот это как понять
print_r ('<td align="center">
/*бла бла бла*/
<br><I>'. $file .'<br>'. $size_r[0] .'x'. $size_r[1] .'<br>'. $zap .'</I></td>');
одинарная кавычка открылась,
одинарная кавычка закрылась
<br><I>'
и как дальше
. $file . уже не читается
Спустя 52 минуты, 46 секунд (15.11.2009 - 14:27) twin написал(а):
понял ничего там я тут потому что.
Можно как то яснее вопросы формулировать?
Можно как то яснее вопросы формулировать?
Спустя 10 минут, 25 секунд (15.11.2009 - 14:37) Krevedko написал(а):
[QUOTE=mihai,15.11.2009 - 10:34] ну вот это понятно
<a href="foto/'. $file .'"
это как раз-таки непонятно. там не так написано а вот так
ты не переменную кавчками выделяешь, а наоборот...делаешь переменную вне кавычек. не путай
<a href="foto/'. $file .'"
это как раз-таки непонятно. там не так написано а вот так
(кавычка открывается)'<td align="center">
<a href="foto/'(кавчка закрывается, идет пых-переменная). $file .(кавычка открывается)'"
....тут идет еще хтмл и закрывается одинарная кавычка обязательно '
ты не переменную кавчками выделяешь, а наоборот...делаешь переменную вне кавычек. не путай
Спустя 25 минут, 15 секунд (15.11.2009 - 15:03) mihai написал(а):
ну правильно
разве так можно,
как это работает?
echo "(ковычка открывается) идёт код (ковычка закрывается)"
тут идёт какой то код, а потом опять
'(ковычка открывется) идёт код (ковычка закрывается)';
разве так можно,
как это работает?
Спустя 9 минут, 33 секунды (15.11.2009 - 15:12) Krevedko написал(а):
будет работать..только так
echo "(ковычка открывается) идёт код (ковычка закрывается)"
.тут идёт какой то код, а потом опять.
'(ковычка открывется) идёт код (ковычка закрывается)';
ну и разные виды кавычек наверное не стоит использовать )
echo "(ковычка открывается) идёт код (ковычка закрывается)"
.тут идёт какой то код, а потом опять.
'(ковычка открывется) идёт код (ковычка закрывается)';
ну и разные виды кавычек наверное не стоит использовать )
Спустя 28 минут, 50 секунд (15.11.2009 - 15:41) mihai написал(а):
аааааааааааа
блин так дело в пристыковке при помощи точки,
ПОНЯЛ
блин так дело в пристыковке при помощи точки,
ПОНЯЛ
![biggrin.gif](http://phpforum.ru/html/emoticons/biggrin.gif)
Спустя 5 дней, 1 час, 23 минуты (20.11.2009 - 17:04) mihai написал(а):
и ещё
там же в книге написано
что для работы с фунциями для изображения
над подключит библиотеки
для это надо снять комментарии со строк
в файле php.ini
НО
в файле конфигураций я не нашёл
такую строку
что подскажите
нужна она или нет
там же в книге написано
что для работы с фунциями для изображения
над подключит библиотеки
для это надо снять комментарии со строк
в файле php.ini
extension=php_cpdf.dll
php_mbstring.dll
extension=php_gb2.dll
php_exif.dll</span>
НО
в файле конфигураций я не нашёл
такую строку
extension=php_cpdf.dll</span>
что подскажите
нужна она или нет
Спустя 1 год, 7 месяцев, 6 дней, 1 час, 28 минут, 44 секунды (26.06.2011 - 17:33) Гость_ZERO написал(а):
![ph34r.gif](http://phpforum.ru/html/emoticons/ph34r.gif)
Спустя 6 минут, 55 секунд (26.06.2011 - 17:40) XCross написал(а):
Пришел, насрал, ушел
![dry.gif](http://phpforum.ru/html/emoticons/dry.gif)