imho.ws |
![]() |
![]() |
![]() |
# 1 |
Newbie
Регистрация: 23.10.2006
Сообщения: 14
![]() |
помощь по php
у меня есть php код. но я не могу изменить кго, как мне надо... вот код
PHP код:
![]() |
![]() |
![]() |
# 2 |
мод
IMHO Кодер-200(6,7,8) Регистрация: 29.03.2003
Адрес: Saint-Petersburg, Russia
Пол: Male
Сообщения: 2 734
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
1. Поидее нет. Я бы вообще этот путь вынес куда-нибудь в настройки, в переменную или константу, чтобы проще было бы менять...
Что именно не получается? 2. Думаю Вам все же нужно было написать в раздел "Веб-программирование и скрипты"
__________________
Я делаю Линукс! Присоединяйтесь к свободным людям! Связаться со мной всегда можно по джабберу: Hubbitus@jabber.ru Pahan-Hubbitus. |
![]() |
![]() |
# 4 |
Banned
Регистрация: 11.06.2008
Сообщения: 57
![]() |
Yoyoman, простите за глупый вопрос, а этот скрипт можно ли запустить, чтобы проследить откуда и как вызывается, просто вижу функции, но не вижу, где массив $files создался. Я конечно не всё понимаю, но если бы скрипт был готов для запуска без дополнительных заморочек, то вам бы помогли быстрее. По сути в вашей проблеме одним изменением opendir делу не поможешь.
|
![]() |
![]() |
# 5 |
Newbie
Регистрация: 23.10.2006
Сообщения: 14
![]() |
этот скрипт рабочий. просто в body надо вставить
PHP код:
страница: www.hungarianstreets.ws/gallery_action Последний раз редактировалось Yoyoman; 13.06.2008 в 20:22. Причина: дополнение |
![]() |
![]() |
# 6 |
Banned
Регистрация: 11.06.2008
Сообщения: 57
![]() |
В общем на первый взгляд секрет кроется в проверке is_file($file), когда в актуальной директории идёт отпрос, то всё нормально, проверка проходит, ежели в opendir(".") подсунуть другую директорию, то проверка не прокатит, поскольку искомый файл не находится в актуальной директории, в которой is_file функция идёт проверка, следовательно туда надо пихнуть проверяемую директорию и по сути это можно сделать передачей параметра, посмотрю, получится ли, если не получится ни у кого раньше.
|
![]() |
![]() |
# 7 |
Banned
Регистрация: 11.06.2008
Сообщения: 57
![]() |
В общем, времени до полного ума доводить нету, но думаю, из того, что я накалякал, станет ясно, почему у тебя не шло. Я раскоментировал то, что мешало работе, всё у меня и создаётся, и показывается в указанной мною директории.
Код:
<?php $columns = 5; $thmb_width = 120; $thmb_height = 80; $mydir="./mojadirektorija/"; function resizeImage($originalImage,$toWidth,$toHeight){ // Get the original geometry and calculate scales list($width, $height) = getimagesize($originalImage); $xscale=$width/$toWidth; $yscale=$height/$toHeight; // Recalculate new size with default ratio if ($yscale>$xscale){ $new_width = round($width * (1/$yscale)); $new_height = round($height * (1/$yscale)); } else { $new_width = round($width * (1/$xscale)); $new_height = round($height * (1/$xscale)); } // Resize the original image $imageResized = imagecreatetruecolor($new_width, $new_height); $imageTmp = imagecreatefromjpeg ($originalImage); imagecopyresampled($imageResized, $imageTmp, 0, 0, 0, 0, $new_width, $new_height, $width, $height); return $imageResized; } function generateThumbnails(){ global $thmb_width,$thmb_height,$mydir; // Open the actual directory if ($handle = opendir($mydir)) { while ($file = readdir($handle)) { if (is_file($mydir.$file)){ if (strpos($file,'_th.jpg')){ $isThumb = true; } else { $isThumb = false; } if (!$isThumb) { // Process the file string //$dirName = substr($file,0,strpos($file,basename($mydir.$file))); $dirName=$mydir; //if (strlen($dirName) < 1) $dirName = '.'; //$fileName = basename($file); $fileName=$file; $fileMain = substr($fileName,0,strrpos($fileName,'.')); $extName = substr($fileName,strrpos($fileName,'.'), strlen($fileName)-strrpos($fileName,'.')); // Check if the actual file is a jpeg image if (($extName == '.jpg') || ($extName == '.jpeg') || ($extName == '.JPG')){ $thmbFile = $dirName.'/'.$fileMain.'_th.jpg'; // If a thumbnail dosn't exists tahn create a new one if (!file_exists($thmbFile)){ $aaa=resizeImage($mydir.$file,$thmb_width,$thmb_height); imagejpeg($aaa,$thmbFile,80); } } } } } } } function getNormalImage($file){ $base = substr($file,0,strrpos($file,'_th.jpg')); if (file_exists($base.'.jpg')) return $base.'.jpg'; elseif (file_exists($base.'.jpeg')) return $base.'.jpeg'; elseif (file_exists($base.'.JPG')) return $base.'.JPG'; else return ""; } function displayPhotos(){ global $columns,$mydir; generateThumbnails(); $act = 0; // Open the actual directory if ($handle = opendir($mydir)) { // Read all file from the actual directory while ($file = readdir($handle)) { $files[] = $mydir.$file; } //Close directories and sort files in a decending order closedir($handle); sort($files); reset($files); foreach ($files as $k => $file) { if ($file != $mydir."." && $file != $mydir.".." && $file != $mydir."index.php~" && $file != $mydir."index.php" ) { $com = getNormalImage($file).'.html'; // Check whether tha actual item is a valid file if (is_file($file)){ // Check whether the actual image is a thumbnail if (strpos($file,'_th.jpg')){ ++$act; if ($act > $columns) { echo '</tr><tr><td class="photo"><A HREF="showpic.php?kep='.getNormalImage($file).'" onClick="return popup(this, \'stevie\')"><img src="'.$file.'" alt="'.$file.'"/></A><br><a href="'.$com.'" target=\"_blank\">komment</a></td>'; $act = 1; } else { echo '<td class="photo"><A HREF="showpic.php?kep='.getNormalImage($file).'" onClick="return popup(this, \'stevie\')"><img src="'.$file.'" alt="'.$file.'"/></A><br><a href="'.$com.'" target=\"_blank\">komment</a></td>'; } } } } } }} ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> </head> <body> <table width="100%" border="0"> <tr> <?php displayPhotos(); ?> </tr> </table> </body> |
![]() |
![]() |
# 9 |
Banned
Регистрация: 11.06.2008
Сообщения: 57
![]() |
Ява или яваскрипт? Не мешайте всё в одну кучу!
К тому же в яваскрипте тоже есть возможность выхватывать то, что в адрессной строке находится, но покуда вам прямо так надо, то можно заранее в переменную скрипта яваскрипт загнать пхпшным эхом необходимые значения. типа <script..... var variable="<?php echo $_GET['peremennaja'];?>"; </script> |
![]() |
![]() |
# 10 |
Newbie
Регистрация: 23.10.2006
Сообщения: 14
![]() |
:\ думал, 4то зная ето - полу4ится. нет
![]() ![]() вот ява скрипт: head Код:
<script language="JavaScript"> function kinyit(sec) { thisSec = eval('e' + sec); if (thisSec != null){ if (thisSec.length){ if (thisSec[0].style.display != 'none'){ for (var i=0;i<thisSec.length;i++) {thisSec[i].style.display = 'none'} } else{ for (var i=0;i<thisSec.length;i++) {thisSec[i].style.display = 'inline'} } } else{ if (thisSec.style.display != 'none') {thisSec.style.display = 'none'} else{thisSec.style.display = 'inline'} } } } </script> Код:
<a href="javascript:ywzc();kinyit(1)">Asdfg</a><br> <table border="0"> <tr id="e1" style="display:none"> <td> <p align="center"> asd<br>asd<br>asd<br>asdswgsrh</p> </td> </tr> </table> http://asd.ws/nеws.php?id=1 и тогда он откривает "е1". и т.д. я попытался следуйшьим образом: Код:
<script language="JavaScript"> var id="<?php echo $_GET['id'];?>"; function kinyit(sec) { thisSec = eval('e' + sec); if (thisSec != null){ if (thisSec.length){ if (thisSec[0].style.display != 'none'){ for (var i=0;i<thisSec.length;i++) {thisSec[i].style.display = 'none'} } else{ for (var i=0;i<thisSec.length;i++) {thisSec[i].style.display = 'inline'} } } else{ if (thisSec.style.display != 'none') {thisSec.style.display = 'none'} else{thisSec.style.display = 'inline'} } } } return kinyit(id); </script> ![]() был бы полностью рад, если обяснил бы ![]() ![]() p.s.: gallery script: www.hungarianstreets.ws/gallery.php?gal=menu ![]() Последний раз редактировалось Yoyoman; 15.06.2008 в 10:50. |
![]() |
![]() |
# 11 |
Banned
Регистрация: 11.06.2008
Сообщения: 57
![]() |
Не, так нельзя, ты же видишь, что у тебя по ссылке параметр 1 передаётся inyit(1), который в функции навешивается на букву 'e', а это название id, e1. Следовательно, если ты хочешь передать в ссылку параметр из гет
<a href="javascript:ywzc();kinyit(1)">Asdfg</a><br> то код яваскрипта надо оставить, как есть, а в ссылку и пихнуть пхп запрос. Код:
<a href="javascript:ywzc();kinyit(<?php echo $_GET['id']; ?>)">Asdfg</a><br> Код:
<script language="JavaScript"> function kinyit(sec) { thisSec = eval('e' + sec); if (thisSec != null){ if (thisSec.length){ if (thisSec[0].style.display != 'none'){ for (var i=0;i<thisSec.length;i++) {thisSec[i].style.display = 'none'} } else{ for (var i=0;i<thisSec.length;i++) {thisSec[i].style.display = 'inline'} } } else{ if (thisSec.style.display != 'none') {thisSec.style.display = 'none'} else{thisSec.style.display = 'inline'} } } } kinyit(<?php echo $_GET['id']; ?>); </script> |
![]() |
![]() |
# 13 |
Banned
Регистрация: 11.06.2008
Сообщения: 57
![]() |
В исходнике пишет? Смею предположить, что у тебя яваскрипт грузится в самом начале страницы, прежде чем tr с id загрузится и в этот момент естественно он ещё его не видит, поскольку функция вызывается до того, как тот элемент в хтмл появится, посему вынеси этот код в конец страницы, до </html>, а в главном коду, что я до этого дал, естественно убери эту строку....
<script language="JavaScript"> kinyit(<?php echo $_GET['id']; ?>); </script> Последний раз редактировалось Viro_man; 15.06.2008 в 19:30. |
![]() |
![]() |
# 14 |
Newbie
Регистрация: 23.10.2006
Сообщения: 14
![]() |
PHP код:
PHP код:
p.s.: mysql table: hzzp://hungarianstreets.ws/mysql.zip > category is 4th column, photo is 2nd, id is 1st Последний раз редактировалось Yoyoman; 14.07.2008 в 01:04. |
![]() |
![]() |
# 15 |
мод
IMHO Кодер-200(6,7,8) Регистрация: 29.03.2003
Адрес: Saint-Petersburg, Russia
Пол: Male
Сообщения: 2 734
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Видимо потому что не выполняется никогда условие...
Жуткий код, понять по нему что-либо крайне сложно. Вы бы хоть нормальный дамп таблицы выложили, а не этот в HTML, с дублирующимся столбцом и без названий. Ну и еще не плохо было бы описать что именно нужно сделать и не получается. Видится мне на подобное такую кучу запросов, да потом еще и запросу в цикле не уместно как-то....
__________________
Я делаю Линукс! Присоединяйтесь к свободным людям! Связаться со мной всегда можно по джабберу: Hubbitus@jabber.ru Pahan-Hubbitus. |
![]() |
![]() |
# 16 |
Newbie
Регистрация: 23.10.2006
Сообщения: 14
![]() |
енто у меня гелрея. есть название фото, категория, команда, имя 4ела, город, е-маил аплоудера и "столбец VOTE". VOTE нузсен для того, 4то когда юзер зака4ивает фото, то тогда посетители могут голосовать. И Cronjob (который казсдый день проигрываетса) определяет: или удалить, или поставить VOTE на 0. и тут я рассматриваю только где vote=0. у меня есть file 'showpic.php', который открываетса при назсатии на thumbnail.
И вот сей4ас мне захотелось сделать 'photo viewer'. тоесть кнопку 'next' и 'prev'. Но не просто след. фото, а след. фото из именно тойзсе категории. и я решил ето сделать 4ерез while-loop... но он входит в безконе4ний цикл.... п.с.: тут столько запросов потаму, 4то когда я пишу: PHP код:
![]() |
![]() |
![]() |
# 17 |
Banned
Регистрация: 11.06.2008
Сообщения: 57
![]() |
Yoyoman, а ты можешь запихнуть после каждого фетча $row
print_r($row); и выдать результат сюда, я конечно не мыслю особо в базах данных, но настораживает твой запрос из массива по типу $row['MIN(photo)'], неужели в массиве он так и откладывается, а не как $row['photo'] |
![]() |
![]() |
# 18 | |
мод
IMHO Кодер-200(6,7,8) Регистрация: 29.03.2003
Адрес: Saint-Petersburg, Russia
Пол: Male
Сообщения: 2 734
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
В массиве конечно он так и "откладывается", если не задан алиас.
Более того, когда одно значение, удобнее вообще е обращаться к нему по имени, а сделать так (очень давно это RaZeR подсказал, с тех пор пользуюсь ![]() PHP код:
Цитата:
Еще раз говорю, в Вашем коге, а особенно таблице, фиг разберешься без поллитры, Вы бы хоть отступы в коде делали! Выложите нормальный дамп таблицы и полный код файла, я постараюсь посмотреть и указать почему не работает.
__________________
Я делаю Линукс! Присоединяйтесь к свободным людям! Связаться со мной всегда можно по джабберу: Hubbitus@jabber.ru Pahan-Hubbitus. |
|
![]() |
![]() |
# 19 | |
КОТовский
Регистрация: 12.03.2003
Адрес: ОренБюргер
Пол: Male
Сообщения: 1 569
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Не стал создавать новую, т.к. эта вполне подходит по названию.
Занялся на досуге изучением PHP. Поставил задачу: скопировать файлы из каталога1 в каталог2 (mp3-шники, у некоторых в начале присутствует нумерация. Её то я и убираю) Написал код PHP код:
Цитата:
Пока ни один не подошёл. Размеры файлов разные, от 3-х байт и выше. в php.ini safe_mode = Off upload_max_filesize = Был 2M увеличил до 200м Названия файлов и русские и аглицкие. Как вы понимаете мне важен сам факт работы кода и "разбор полётов", аналогичное на VB давно бы реализовал. Не могу понять в чем может быть причина нежелания копировать файлы. Подскажите плиз...
__________________
Все мы финансовые гении и эффективные менеджеры, только не у всех одногруппник или сосед по даче - президент. Последний раз редактировалось Alex Dark; 23.02.2011 в 09:51. |
|
![]() |
![]() |
# 20 |
Administrator
Регистрация: 06.05.2003
Адрес: Московская Подводная Лодка
Пол: Male
Сообщения: 12 059
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
уверен что скопировал именно так, как оно у тебя?
ругается на 28 строку, а на 28й строке в том что здесь - и ругаться то особо не на что: скобка там фигурная...
__________________
все "спасибы" - в приват и в репутацию! не засоряйте форум!!!! ~~~~~~~~~~~~~~~~~~~~~~ The time has come it is quite clear, our antichrist is M.M.
|
![]() |