Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Функции

Сообщения:  [1-10]   [11-17] 

 
 автор: sim5   (21.06.2009 в 00:26)   письмо автору
 
   для: Лена   (15.06.2009 в 16:34)
 

Значит не все перепробовали. Сохранять каптчу нужно не на диске для пользователей, а через память в сессии. Уже если нельзя куда-то что-то передать, то уж где-то сохранить в сессии, а в другом месте получить всегда можно:
<?
//рисуем каптчу
$im  imagecreate (8032);
$bgc imagecolorallocate ($im000);
$tc  imagecolorallocate ($im255255255);
imagefilledrectangle ($im008032$bgc);
imagestring ($im155"Ab36F"$tc);
//сохраняем ее через память в сессию
ob_start();
imagejpeg($im);
$_SESSION['im'] = ob_get_contents();
ob_end_clean();
imagedestroy($im);

//где требуется выводим
$im imagecreatefromstring($_SESSION['im']);
imagejpeg($im);

//или просто
echo $_SESSION['im']; 

  Ответить  
 
 автор: Trianon   (16.06.2009 в 02:28)   письмо автору
 
   для: Лена   (15.06.2009 в 22:47)
 

несущественно.
Важнее то, что второй вариант за собой гарантированно подотрет.
Первый же....

  Ответить  
 
 автор: Лена   (15.06.2009 в 22:47)   письмо автору
 
   для: Trianon   (15.06.2009 в 16:40)
 

А по времени как быстрее: при каждом вызове скрипта удалять один файл или сразу кучу файлов удалять, которые насобирались за 5 минут?

  Ответить  
 
 автор: Trianon   (15.06.2009 в 16:40)   письмо автору
 
   для: Лена   (15.06.2009 в 16:33)
 

можно и так.
Можно вообще удалить все файлы из этого каталога, созданные ранее чем 5 минут назад.

Это если скриптом отдать файл не выходит никак. Что крайне странно само по себе.

  Ответить  
 
 автор: Лена   (15.06.2009 в 16:34)   письмо автору
 
   для: sim5   (15.06.2009 в 16:17)
 

Без файла не получается, я уже все возможные способы перепробовала.

  Ответить  
 
 автор: Лена   (15.06.2009 в 16:33)   письмо автору
 
   для: Trianon   (15.06.2009 в 15:55)
 

Нет, я хочу вывести, а потом удалить. Я же не буду все эти файлы со случайными названиями собирать. Есть мысль, что это можно сделать в обработчике. Пришли данные формы - удаляем файл, а потом уже сравниваем цифры из сессии и пост-данные.

  Ответить  
 
 автор: sim5   (15.06.2009 в 16:17)   письмо автору
 
   для: Лена   (15.06.2009 в 15:50)
 

Вы можете вообще не сохранять никуда файл (если дело касается каптчи).

  Ответить  
 
 автор: Trianon   (15.06.2009 в 15:55)   письмо автору
 
   для: Лена   (15.06.2009 в 15:50)
 

return $tcontent;
//убиваем файл
unlink($path_file);

после return ничего выполняться все равно не будет.

Кроме того, если его удалить, как же тогда его браузер покажет?

  Ответить  
 
 автор: Лена   (15.06.2009 в 15:50)   письмо автору
 
   для: Trianon   (15.06.2009 в 14:59)
 

Получилось, но не все.
Картинка теперь отображается, но после вывода формы я хочу удалить само изображение. Файл изображения не удаляется. - unlink($path_file);

  Ответить  
 
 автор: Trianon   (15.06.2009 в 14:59)   письмо автору
 
   для: Лена   (15.06.2009 в 14:53)
 

Первое, что бросается в глаза, это то, что переменная $path_file определяется в функции function testimagepng_mypage() как локальная. То есть с глобальной $path_file никак не соотносится.

так что для начала
function testimagepng_mypage(){
global $path_file;

  Ответить  

Сообщения:  [1-10]   [11-17] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования