PHP . SU
Программирование на PHP, MySQL и другие веб-технологии
Страниц (1): [1]
Найдено сообщений: 14
Onuchin Artem
Отправлено: 23 Марта, 2009 - 17:20:24 • Тема: Отдать пользователю альбом файлов • Форум: Программирование на PHP
Ответов: 16 Просмотров: 778
Скачивание сразу нескольких файлов можно организовать с помощью IFRAME
index.php
PHP:
скопировать код в буфер обмена
<?PHP
foreach ( new DirectoryIterator( 'c:/apache/localhost/www/test/janisjoplin' ) as $fileInfo )
if ( ! $fileInfo -> isDot ( ) )
$files [ ] = $fileInfo -> getFilename ( ) ;
?>
<html>
<head>
<style>
iframe {
display: none;
}
</style>
</head>
<body>
<h1>Janis Joplin</h1>
<?PHP foreach ( $files as $file ) : ?>
<iframe src="downloader.php?file=<?PHP echo $file ?> ">
<?PHP echo $file ?>
</iframe>
<?PHP endforeach ; ?>
</body>
</html>
downloader.php - нужен, чтобы послать правильные заголовки
PHP:
скопировать код в буфер обмена
<?PHP
$file = $_GET [ 'file' ] ;
//check_file($file); //ОБЯЗАТЕЛЬНО ПРОВЕРИТЬ ТОТ ЛИ ЭТО ФАЙЛ
header ( "Content-type: audio/mpeg3" ) ; header ( "Content-Disposition: attachment; filename=\" " . $file . "\" " ) ; $fp = fopen ( 'c:/apache/localhost/www/test/janisjoplin/' . $file , 'rb' ) ;
Эти скрипты только для примера - их нельзя использовать , т.к. они содержат уязвимость и требуют переработки
(Добавление)
упс в IE6 не работает
(Добавление)
Поменял header("Content-Disposition: attachment; filename=\"".$file."\"");
на
Заработало. Очень странно... Если IFRAME ссылаются прямиком на файлы, то открывается QuickTime... Надо разобраться.
Onuchin Artem
Отправлено: 12 Марта, 2009 - 15:13:33 • Тема: немогу отпарсить xml... вроде все просто... • Форум: Напишите за меня, пожалуйста
Ответов: 1 Просмотров: 38
davion пишет: Пытаюсь извлечь из строки $result, данные а точнее число 298...
и облом возращает пустату
пожалйста помогите уже весь моск сломал...
CODE (
text ):
скопировать код в буфер обмена
<?
$result=' <response><result-code fatal="true">298</result-code></response>';
$xml_check=simplexml_load_string($result);
$check=$xml_check->result-code;
echo $check;
?>
Цитата: Notice: Use of undefined constant code - assumed 'code' in C:\apache\localhost\WWW\test\index.php on line 4
замени result-code на result_code
CODE (
text ):
скопировать код в буфер обмена
<?
$result=' <response><result_code fatal="true">298</result_code></response>';
$xml_check=simplexml_load_string($result);
$check=$xml_check->result_code;
echo $check;
?>
Onuchin Artem
Отправлено: 12 Марта, 2009 - 07:56:50 • Тема: Категории Подкатегории вывод данных из бд • Форум: Программирование на PHP
Ответов: 2 Просмотров: 966
Попробуй разделить php и html Например так (Это не единственный способ и не самый лучший):
PHP:
скопировать код в буфер обмена
<?PHP
try
{
if ( ! $r )
throw new Exception( "Запрос на выборку данных из базы не прошел. Напишите об этом администратору." ) ;
throw new Exception( 'Информация по запросу не может быть извлечена в таблице нет записей.' ) ;
do
$categories [ ] = $myrow2
}
catch ( Exception $e )
{
?>
<html>
<head>
<title>
Мега сайт
</title>
</head>
<body>
<h1>Произошла ошибка</h1>
<h2><?PHP echo $e -> getMesage ( ) ?> </h2>
</body>
</html>
<?PHP
}
?>
<html>
<head>
<title>
Мега сайт
</title>
</head>
<body>
<?PHP foreach ( $categories as $category ) : ?>
<table width="200" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td align="center" valign="top">
<a href="<?PHP echo $category [ 'link' ] ?> ">
<img src="<?PHP echo $category [ 'img' ] ?> " border="0" alt="<?PHP echo $category [ 'alt' ] ?> " />
</a>
</td>
</tr>
<tr>
<td>
<div id="coolmenu">
----------------место где должны выводится подкатегории--------------
<a href="photoshop.php?rub=1">КИСТИ</a>
<a href="photoshop.php?rub=2">ШРИФТЫ</a>
<a href="photoshop.php?rub=3">СТИЛИ</a>
<a href="photoshop.php?rub=4">ГРАДИЕНТЫ</a>
----------------место где должны выводится подкатегории--------------
</div>
</td>
</tr>
</table>
<?PHP endforeach ; ?>
</body>
</html>
Все понятно что я сделал?
Onuchin Artem
Отправлено: 11 Марта, 2009 - 11:14:29 • Тема: Работа с кукой • Форум: Программирование на PHP
Ответов: 4 Просмотров: 248
bizovo пишет: Установил значание переменной autorating на 10 мин равным 1 с помощью: setcookie("autorating",1,time()+600)
Как извлечь значение знаю: @$_COOKIE['autorating']
А как извлечь сколько по времени оно уже возведено не знаю, подскажите кто знает.
Специальных средств PHP нет. Можно хранить в куках время:
CODE (
text ):
скопировать код в буфер обмена
setcookie("autorating", array( 'value'=>1, 'time'=>time() ), time()+600);
...
$autorating = @$_COOKIE['autorating'];
$autorating_value = $autorating['value'];// значение autorating
$autorating_life = time() - $autorating['time']; //как долго хранится autorating
;
Onuchin Artem
Отправлено: 06 Марта, 2009 - 07:55:57 • Тема: вопрос о клонировании • Форум: Программирование на PHP
Ответов: 0 Просмотров: 145
Блин стер нечаянно сообщение(((
Суть проблемы такова:
имеется сложная объектная структура:
объекты различных типов включают друг друга.
Как клонировать эту структуру?
решение:
Страниц (1): [1]
Powered by ExBB FM 1.0 RC1. InvisionExBB