Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Программируем на PHP - вопросы и ответы. Подскажите, чтоб работал сайт знакомств


Подскажите, чтоб работал сайт знакомств

Здравствуйте, php любители и профессионалы!

Сегодня в выпуске.

0.    Приветствие

1.    Статистика php форума «уже 174 сообщения…»

2.    Подробный ответ на php вопрос. Избранное «Подскажите, чтоб работал сайт знакомств»

3.    Список php вопросов для наших экспертов.

4.    Вопрос номера «Можно ли?»

5.    Наши модераторы: Seadog, NickGray, ZzzMMTT, Juice, BERKUT (ПРИСОЕДИНИСЬ к команде php форума)

6.    P.S.

Приветствие

Вас приветствует очередной выпуск рассылки «Программирование на php в вопросах и ответах».

Сегодня у нас очень интересные php тонкости.

Если у вас возникают вопросы по поводу вашей php деятельности, смело задавайте их на нашем php форуме и получайте нужные ответы

Статистика php форума

 

 Кто сейчас на форуме

 

Наши пользователи оставили сообщений: 178
Всего зарегистрированных пользователей: 78
Последний зарегистрированный пользователь: Coolll

Сейчас посетителей на форуме: 5, из них зарегистрированных: 3, скрытых: 0 и гостей: 2   [ Администратор ]   [ Модератор ]
Больше всего посетителей (13) здесь было 23 Сен 2007 03:21 am
Зарегистрированные пользователи: MMS, phper, Seadog

 

 

PHP. Распространённые вопросы и ответы

 

 

Подробный ответ на php вопрос. Избранное

Подскажите, чтоб работал сайт знакомств

 

Я делаю сайт знакомств на php и у меня возникла проблема с upload файлов. Все говорят, что там все просто, но у меня не получается. Подскажите, пожалуста,

1. что надо поменять в файле php.ini
2. как производить сам upload, с автоматическим переименованием фалов и присвоением ему номера,
но с сохранением расширения файла: 000001.gif, 000002.jpg
3. И как осуществить проверку файла (до начала загрузки на сервер) на соответствие правильного размера (например, не больше 50kb)? Ошибка, которая возникает у меня следующего рода: при попытке загрузить файл на локальном сервере пишет следующее (хотя такой файл, естественно, существует):



Warning: Unable to open 'Content-Type: image/tiff; name=\"\"1.tif\"\"
II*' for reading: No such file or directory in c:\!home\test\www\upload.phtml on line 14

В php.ini в File Uploads указана директория для загрузки файлов: upload_tmp_dir = c:/temp/

Сам файл upload.phtml:

Код:

<?
if($userfile==""): ?>
<form method=POST action=upload.phtml enctype=multipart/form-data>
<input type=file name=userfile>
<input type=submit>
</form>
<?
else:
echo "$userfile<br>";
echo "$userfile_name<br>";
echo "$userfile_size<br>";
echo "$userfile_type<br>";
endif;
copy($userfile, $userfile_name);
?>



В чем может быть причина возникающей у меня ошибки?
Как реализовать на PHP следующее: У меня есть файл 1.txt, в котором находятся пословицы, и я хочу, чтобы они выбирались случайным образом для дальнейшего включения в страницу?. Timur

 

Отвечает модератор и консультант php форума NickGray

 

Как все запутано....

Цитата:

1. что надо поменять в файле php.ini


file_uploads = On
upload_max_filesize = XX
upload_tmp_dir =
max_input_time = XX
post_max_size = XX
Собственно это и есть основные директивы конфигурации, необходимые для загрузки файлов.

Цитата:

2. как производить сам upload, с автоматическим переименованием фалов и присвоением ему номера,
но с сохранением расширения файла: 000001.gif, 000002.jpg



Форма для загрузки файлов

Код:


<form enctype="multipart/form-data" action="_URL_" method="post">
 <input type="hidden" name="MAX_FILE_SIZE" value="30000" />
 
Отправить этот файл: <input name="userfile" type="file" />
 <input type="submit" value="Send File" />
</form>



В приведенном выше примере "_URL_" необходимо заменить ссылкой на PHP-скрипт. Скрытое поле MAX_FILE_SIZE(значение необходимо указывать в байтах) должно предшествовать полю для выбора файла, и его значение является максимально допустимым размером принимаемого файла. Также следует убедиться, что в атрибутах формы вы указали enctype="multipart/form-data", в противном случае загрузка файлов на сервер выполняться не будет.

Опция MAX_FILE_SIZE является рекомендацией браузеру, даже если бы PHP также проверял это условие. Обойти это ограничение на стороне браузера достаточно просто, следовательно, вы не должны полагаться на то, что все файлы большего размера будут блокированы при помощи этой возможности. Тем не менее, ограничение PHP касательно максимального размера обойти невозможно. Вы в любом случае должны добавлять переменную формы MAX_FILE_SIZE, так как она предотвращает тревожное ожидание пользователей при передаче огромных файлов, только для того, чтобы узнать, что файл слишком большой и передача фактически не состоялась.

Содержимое массива $_FILES для нашего примера приведено ниже. Обратите внимание, что здесь предполагается использование имени userfile для поля выбора файла, как и в приведенном выше примере. На самом деле имя поля может быть любым.

$_FILES['userfile']['name']
Оригинальное имя файла на компьютере клиента.

$_FILES['userfile']['type']
Mime-тип файла, в случае, если браузер предоставил такую информацию. Пример: "image/gif".

$_FILES['userfile']['size']
Размер в байтах принятого файла.

$_FILES['userfile']['tmp_name']
Временное имя, с которым принятый файл был сохранен на сервере.

$_FILES['userfile']['error']
Код ошибки, которая может возникнуть при загрузке файла. Ключ ['error'] был добавлен в PHP 4.2.0

Для получения более детальной информации вы можете ознакомится с описанием функций is_uploaded_file() и move_uploaded_file(). Следующий пример принимает и обрабатывает загруженный при помощи формы файл.

Код:


<?php
$uploaddir = '/var/www/uploads/';
$uploadfile = $uploaddir .
'0000001.gif'; // Расширение можно узнать из
Mime-тип типа переданного файла ($_FILES['userfile']['type']).

print "<pre>";
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
    print "File is valid, and was successfully uploaded. ";
    print "Here's some more debugging info:\n";
    print_r($_FILES);
} else {
    print "Possible file upload attack!  Here's some debugging info:\n";
    print "Possible file upload attack! 
Дополнительная отладочная информация:\n";
    print_r($_FILES);
}
print "</pre>";
?>



Цитата:

3. И как осуществить проверку файла (до начала загрузки на сервер) на соответствие правильного размера (например, не больше 50kb)?



Никак

-----------------

Цитата:

Warning: Unable to open 'Content-Type: image/tiff; name=\"\"1.tif\"\"
II*' for reading: No such file or directory in c:\!home\test\www\upload.phtml on line 14

В php.ini в File Uploads указана директория для загрузки файлов: upload_tmp_dir = c:/temp/



Здесь возможны несколько ошибки:
- Проблемы с путями
- Проблемы с кавычками (name=\"\"1.tif\"\" - это вообще странная весчь)
- register_globals = off

 

Timur писал(а):

Как реализовать на PHP следующее: У меня есть файл 1.txt, в котором находятся пословицы, и я хочу, чтобы они выбирались случайным образом для дальнейшего включения в страницу?

 

Цитата:

file
(PHP 4, PHP 5)

file — Читает содержимое файла и помещает его в массив

Описание
array file ( string $filename [, int $use_include_path [, resource $context]] )

Данная функция идентична функций readfile() с той разницей, что file() возвращает содержимое прочитанного файла в виде массива. Каждый элемент возвращенного массива содержит соответствующую строку с символами конца строки. В случае ошибки, функция file() возвращает FALSE.



Если каждая пословица находится в оьдельной строке, выбери массив строк функцией file(), затем выведи случайный элемент на экран.
Это же элементарно ватсон

 

 

Добавить свой ответ: http://phper.ru/viewtopic.php?t=66



Задать свой вопрос вы можете на php форуме

 

Список php вопросов для наших экспертов

Как ее правильно проделарировать? (Вопрос задал: Viks)

Как работает PHP4 с Интербейз? (Вопрос задал: Tnig)

Как сделать на сайте авторизацию? (Вопрос задал: Lecalo)

Вот такая нужна БД (Вопрос задал: Legf)

Ответить на них вы можете в соответствующих топиках. (кликните мышкой на вопрос)

 

Вопрос номера

Можно ли?

 (Вопрос задал: Федя )

Существует ли способ безболезненно перевести сайт с SSI на PHP?

Имеется ввиду разные расширения файлов страниц, а значит, проблемы с поисковиками, которые настроены на старые адреса.

http://phper.ru/viewtopic.php?t=82 Узнать ответ

 

Наши модераторы

Seadog. Стал модератором – 12 октября 2007 года.

О Себе:

Имею опыт программирования на PHP
http://imtc.com.ua
http://seadog.com.ua
http://maribase.com.ua в разработке
http://seadog.e2e.ru в разработке

Найти все сообщения модератора Seadog

=======================================

NickGray. Стал модератором – 16 октября 2007 года.

Найти все сообщения модератора NickGray

=======================================

ZzzMMTT. Стал модератором – 20 октября 2007 года.

Найти все сообщения пользователя ZzzMMTT

=======================================

Juice. Стал модератором – 21 октября 2007 года.

О консультанте - модераторе:

Þ    Откуда:  Мурманск

Þ   Род занятий:  Студент

Найти все сообщения пользователя Juice

=======================================

BERKUT. Стал модератором – 21 октября 2007 года.

О консультанте - модераторе:

Þ    Откуда:  Волжский

Þ    Сайт:  http://berkut.vghost.ru

Þ   Род занятий:  Программист

Найти все сообщения пользователя BERKUT

=======================================

 

P.S.

На этом сегодняшний выпуск заканчиваю. До связи.

Напоминаю, что я приглашаю вас стать модератором php форума.

==========

Phper.ru - PHP. Распространённые вопросы и ответы


В избранное