Вопрос № 41683: Доброй ночи! Как можно создать таймер в php, чтобы можно было его запускать, останавливать, обнулять? Заранее спасибо!...Вопрос № 41689: Здорова всем! Вопрос состоит в слудующем: как сохранить загруженный файл на сервере в папке xxx/xxx/. пробовал многое на локалке работает, а вот на сервере с правами какие то проблемы. Может подскажити что не так вообще гружу так для примеру:
fil...Вопрос № 41715: 1.Как создать систему аккаунтов пользователей на сайте?
2.Как организовать прием платежей с сайта. Интересуют системы WebMoney и E-Gold?
Дайте ссылочки на статьи по этим темам, please!...Вопрос № 41729: Здравствуйте!
Помогите пожалуйста с кодом...
нужно прочитать графический файл(gif)и выдать в браузер.
И в коде HTML как написать?
Спасибо...Вопрос № 41744: Здравствуйте!
Есть такой вопрос:
Существует база данных MySql. Есть на моём компьютере и на удалённом сервере. Допустим, добавил я некоторые записи в таблицы у себя на компе. Как перенести эти изменения на удалённый сервер?
Надо делать эк...
Вопрос № 41.683
Доброй ночи! Как можно создать таймер в php, чтобы можно было его запускать, останавливать, обнулять? Заранее спасибо!
Отвечает: Устинов Сергей Евгеньевич
Здравствуйте, Грицай Алексей Юрьевич!
Средствами PHP этого сделать нельзя, но можно с помощью JavaScript.
Пример посмотри здесь: http://www.creater.ru/index.php?section=scripts&id=421
--------- Ответы на все вопросы - на сайте www.ya.ru :)
Отвечает: Ерёмин Андрей
Здравствуйте, Грицай Алексей Юрьевич!
Гм! Первый и, видимо, последний вопрос: а зачем в PHP нужен таймер? Что он даст? Затормозит выполнение кода и пользователю придётся ждать некоторое время, пока страница сгенерируется и загрузится?
Вот на JavaScript можно таймер сделать - ведь это уже будет работать во время открытой страницы. Делается так:
setTimeout("Func()",2500);
Параметры: название функции для вызова и число миллисекунд как задержка перед этим вызовом.
--------- Нет правила без исключений. Правило без исключений - исключение из правил.
Отвечает: Zysoftik
Здравствуйте, Грицай Алексей Юрьевич!
В самом PHP таймер действительно не за чем. Но, поскольку я не знаю истинную задачу таймера, расскажу про еще один вариант.
В панели управления хостингом есть возможность использовать утилиту Cron (для Unix-систем). Ее цель - выполнять команды по расписанию (как планировщик задач в Windows). Суть метода заключается в том, что один PHP скрипт выполняется каждую минуту (через Cron). При запуске, он подключается к базе, читает файл или еще каким либо способом считывает свое расписание. Затем, если текущие параметры удовлетворяют расписанию, выполняет какие-то действия.
При такой организации можно написать еще один скрипт, который будет в реальном времени изменять расписание задач.
Это, кончено, не таймер, а расписание, но может это и есть то что надо.
Если же цель таймера - создавать задержку, проще использовать ф-цию
int sleep ( int seconds )
Ответ отправил: Zysoftik (статус: 4-ый класс)
Ответ отправлен: 30.04.2006, 12:23
Вопрос № 41.689
Здорова всем! Вопрос состоит в слудующем: как сохранить загруженный файл на сервере в папке xxx/xxx/. пробовал многое на локалке работает, а вот на сервере с правами какие то проблемы. Может подскажити что не так вообще гружу так для примеру:
file - имя для загрузки в форме...
$path ='home/xxx/xxx/'
mkdir($path,666);
формирования пути для сохранения
$path .='/'.basename($_FILES['file']['name']);
if (move_uploaded_file($_FILES['file']['tmp_name'],$path))
{а тут что то нужное после загрузки}
кроме того хотелось бы узнать как загрузить несколько файлов и обработать их. Я указывал имя как att[] но в массиве у меня получается все равно только 0 элемент и все(
вот пример(прикрипления аттачментов прикрепляется как в яндексе. в форме все указано как надо имя att[] данные и файлы тоже)
if (IsSet($_FILES['att']))
{
print_r($_FILES['att']);
For ($i = 0;$i <= count($_FILES['att']); $i++)
{
if ($_FILES['att']['size'][$i] <> 0)
{
$f = fopen($_FILES['att']['tmp_name'][$i],"r");
$body .= "------------".$un."
";
$body .= "Content-Type: ".$_FILES['att']['type'][$i].";";
$body .= "name="".$_FILES['att']['name'][$i].""
";
$body .= "Content-Transfer-Encoding:base64
";
$body .= "Content-Disposition:attachment;";
$body .= "filename="".$_FILES['att']['name'][$i].""
";
$body .= chunk_split(base64_encode(fread($f,filesize($_FILES['att']['size'][$i]))))."
";
fclose($f);
}
}
всем огромное спасибо за любые советы!
Отправлен: 30.04.2006, 03:30
Вопрос задал: Trilinx (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Zysoftik
Здравствуйте, Trilinx!
Насчет прав:
Попробуйте указать права не 666, а 777.
По нескольким файлам:
В массиве $_FILES перечислены все загруженные методом POST и уложенные в temp-каталог файлы. Но каждый элемент этого массива отвечает только за один файл. Т.е. для обращения к файлам через этот массив, справедливо так:
Чтобы получить список файлов (а затем и их параметры) лучше так:
<?
...
echo 'Переменные файлов, загруженных на сервер:<br>';
while (list($key, $value)=each($_FILES))
{
echo $_FILES[$key].'<br>';
//Тут можно обработать файл
}
...
?>
Ответ отправил: Zysoftik (статус: 4-ый класс)
Ответ отправлен: 30.04.2006, 18:32 Оценка за ответ: 4
Вопрос № 41.715
1.Как создать систему аккаунтов пользователей на сайте?
2.Как организовать прием платежей с сайта. Интересуют системы WebMoney и E-Gold?
Дайте ссылочки на статьи по этим темам, please!
Отправлен: 30.04.2006, 12:12
Вопрос задал: Alexorg (статус: 1-ый класс)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Madproger
Здравствуйте, Alexorg!
По взаимодействию с платежными системами
http://phpclub.ru/faq/wakka.php?wakka=EMoney&v=q7w
Насчет системы аккаунтов я немного не понял что именно тебя интересует...
Если в общем
то примерно навскидку так
1) Хранить информацию об аккаунте в БД
2) Пароль можно хранить в зашифрованном виде (потом сравнивать шифорованные сроки например так ... WHERE pass = MD5('your_pass');
3) При попытке аккаунта проверять на наличие такого логина и правильность пароля в БД
4) Для хранения информации о аккаунте лучше юзать сессии (ИМХО, т.к. кукисы их можно отключить в браузере)
----о сессиях http://phpfaq.ru/sessions
Вот так вкратце, если что то более подробно об аккаунтенге - напиши подробнее вопрос, что именно там не понятно
--------- И будет вам счАстиЕ!
Ответ отправил: Madproger (статус: 5-ый класс)
Ответ отправлен: 01.05.2006, 02:36
Вопрос № 41.729
Здравствуйте!
Помогите пожалуйста с кодом...
нужно прочитать графический файл(gif)и выдать в браузер.
И в коде HTML как написать?
Спасибо
Приложение:
Отправлен: 30.04.2006, 17:28
Вопрос задала: YASMIN (статус: Посетитель)
Всего ответов: 3 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Ерёмин Андрей
Здравствуйте, YASMIN!
А что, собственно, не устраивает? У вас почти правильный код, только в строке $img=imagecreatefromgif($ff); вместо содержимого файла нужно написать путь к нему или URL, т.е. в данном случае должно быть $img=imagecreatefromgif($fn); А отдавать очень просто - <img src="mygif.php">, где mygif.php делает вышеописанное.
--------- Нет правила без исключений. Правило без исключений - исключение из правил.
Ответ отправил: Ерёмин Андрей (статус: Профессор) Россия, Тула WWW:Программирование на DELPHI: Всё для программиста. ICQ: 286837644 ---- Ответ отправлен: 30.04.2006, 18:04 Оценка за ответ: 4 Комментарий оценки: не работает и пишет Warning: imagegif(): supplied argument is not a valid Image resource
Отвечает: Zysoftik
Здравствуйте, YASMIN!
На самом деле, похоже ошибка в использовании функции imagecreatefromgif.
Эта функция должна принимать в качестве параметра не сожержимое графического файла, а указание его имени и пути.
Т.е. надо писать не
imagecreatefromgif($ff);
а
imagecreatefromgif('mypath/myfile.gif');
Тогда в ответ функция вернет идентификатор открытого GIF ресурса.
Ответ отправил: Zysoftik (статус: 4-ый класс)
Ответ отправлен: 30.04.2006, 21:46 Оценка за ответ: 4
Отвечает: Jeka911
Здравствуйте, YASMIN!
Еще есть такая хитрость...
Если мы получаем вывод скрипта через img (img src=script.php), то нам нет необходимости передавать заголовки, использовать функции для разных форматов.
Если браузер получает картинку, через img, он ее формат разпознает сам.
Приложение:
--------- Шахтер - чемпион!!!
Ответ отправил: Jeka911 (статус: 2-ой класс)
Ответ отправлен: 01.05.2006, 12:03
Вопрос № 41.744
Здравствуйте!
Есть такой вопрос:
Существует база данных MySql. Есть на моём компьютере и на удалённом сервере. Допустим, добавил я некоторые записи в таблицы у себя на компе. Как перенести эти изменения на удалённый сервер?
Надо делать экспорт? Если да, то как? phpMyAdmin установлен...
Извините за туфтологию, по другому обьяснить не могу.
Отвечает: Устинов Сергей Евгеньевич
Здравствуйте, Dushin Igor!
Ну если есть phpMyAdmin то действия такие:
Для экспортирования:
- Открываешь нужную базу данных
- В верхнем меню пункт "Экспорт"
- В списке слева выделяешь необходимые таблицы (или нажимаешь "Отметить все")
- Под списком ставишь переключатель в пункт SQL
Остальные параметры можешь оставить включенными по умолчанию.
- Внизу ставишь галочку в пункте "Послать"
- Сжатие "нет"
- Кнопка "Пошел"
Сохраняешь файл *.sql, его там с помощью phpMyAdmina удаленного сервера импортируешь:
При открытой базе данных пункт "Import". С помощью кнопки "Обзор" показываешь место расположения файла *.sql и нажимаешь "Пошел"
--------- Ответы на все вопросы - на сайте www.ya.ru :)
Ответ отправил: Устинов Сергей Евгеньевич (статус: 6-ой класс)
Ответ отправлен: 30.04.2006, 21:36 Оценка за ответ: 5
Отвечает: Madproger
Здравствуйте, Dushin Igor!
Насколько я понял из предыдущего вопроса, тебе надо вносить только изменения совершенные за какой-то период, тут к сожалению дамп БД не поможет :(
Если это критично и есть доступ к удаленному серверу, и если есть желание поразбираться :) настрой репликацию, настроив удаленный сервер как мастер, а свой как слейв
Подробнее о репликациях здесь http://dev.mysql.com/doc/refman/4.1/en/replication.html
ИНаче, как было сказано делаешь полный дамп БД через phpMyAdmin либо через
коммандную строку
>mysqldump mydb > mydb_dump.sql
и на том сервере
mysql> source ./mydb_dump.sql
Но перед второй коммандой надо дропнуть существующую БД, иначе инсерты которые уже были и там и там продублируются
Еще вариант если записей немного, создай sql файл
занеси туда эти инсерты и выполни этот файл на удалленном компе
--------- И будет вам счАстиЕ!
Ответ отправил: Madproger (статус: 5-ый класс)
Ответ отправлен: 01.05.2006, 02:53 Оценка за ответ: 5