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

RFpro.ru: Программирование на PHP

  Все выпуски  

RusFAQ.ru: Программирование на PHP


Новое направление Портала RusFAQ.ru:
MosHoster.ru - Профессиональный хостинг

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / PHP

Выпуск № 909
от 02.03.2008, 02:35

Администратор:Калашников О.А.
В рассылке:Подписчиков: 458, Экспертов: 45
В номере:Вопросов: 4, Ответов: 5

Нам важно Ваше мнение об этой рассылке.
Оценить этот выпуск рассылки >>


Вопрос № 124696: У меня проблемы с работой сессий. как я понимаю, при переходе по относительной ссылке или обновлении страницы стартует новая сессия. $_SESSION['blablabla'] обНУЛЛяются. помогите, я запутался. Код: session_start(); i...
Вопрос № 124737: Добрый день. Авторизация с помощью заголовка. <?php $rez=0; if (IsSet($PHP_AUTH_USER)||IsSet($PHP_AUTH_PW)) { echo("$PHP_AUTH_USER $PHP_AUTH_PW"); foreach (file("passavt2.php") as $k) { if (substr($...
Вопрос № 124745: Здравствуйте, коллеги! Наверняка кому-то из Вас приходилось сталкиваться с такой штукой, как крон. Мне было бы интересно узнать, каким образом крон работает, с какой стороны можно подойти к написанию, на каком языке лучше писать такое приложение....
Вопрос № 124778: Здравствуйте, уважаемые эксперты!!! Как написать скрипт, который писал возле ссылки, сколько раз был скачан файл по ссылке (сколько раз на нее нажималось)....

Вопрос № 124.696
У меня проблемы с работой сессий.
как я понимаю, при переходе по относительной ссылке или
обновлении страницы стартует новая сессия.
$_SESSION['blablabla'] обНУЛЛяются.
помогите, я запутался.

Код:
session_start();
if (!isset($_SESSION['aut'])) $_SESSION['aut']=0;
echo ("count ".$_SESSION['aut']++." .<br><a href=index.php?".session_name()."=".session_id().">link</a>");
работает.

ошибок нет.

по мануалам я понял, что проблемы с куками

но ведь куки сами по себе работают, вот так к примеру:
if($_POST['passv']==12345)
{
setcookie("aut",'user');
header("location: ./index.php");
}
else
{
setcookie("aut",'guest');
header("location: ./index.php");
}

Приложение:

Отправлен: 25.02.2008, 03:04
Вопрос задал: Стимулович КОнстантин Александрович (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 3)

Отвечает: Миленин Александр
Здравствуйте, Стимулович КОнстантин Александрович!
Куки здесь не при чём, скорее всего вам просто нужно задать session_name.

В начале каждого скрипта поставьте
session_name("my_name");
session_start();

после чего значения сессии будут сохраняться при переходе по этим скриптам.
Ответ отправил: Миленин Александр (статус: Студент)
Ответ отправлен: 25.02.2008, 03:11


Вопрос № 124.737
Добрый день.
Авторизация с помощью заголовка.
<?php
$rez=0;
if (IsSet($PHP_AUTH_USER)||IsSet($PHP_AUTH_PW))
{ echo("$PHP_AUTH_USER $PHP_AUTH_PW");
foreach (file("passavt2.php") as $k)
{ if (substr($k,0,-2)=="$PHP_AUTH_USER $PHP_AUTH_PW")
{$rez=1;} }}
if ($rez!=1)
{ Header("WWW-Authenticate: Basic realm="CZL" ");
Header("HTTP/1.0 401 Unauthorized");
echo("<p>Доступ закрыт!</p>");
exit; }
?>
Стандартное окно для ввода логина и пароля появляется,
значит браузер получил заголовок WWW-Authenticate.
Однако, переменные $PHP_AUTH_USER и $PHP_AUTH_PW сценарию не передаются. Не существуют они в сценарии.
Или сервер дает переменным другие имена?
В чем тут дело?
Хостинг - rusfaq.ru
Отправлен: 25.02.2008, 12:47
Вопрос задал: Грамотник Игорь (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: PVS@Lviv
Здравствуйте, Грамотник Игорь!
Дело в том, что они теперь стали $_SERVER["PHP_AUTH_USER"] и $_SERVER["PHP_AUTH_PW"] , а совместимость с предыдущими версиями можно задать параметром register_globals=On в php.ini, но это представляет определённую угрозу безопасности, т.к. даёт дополнительные возможности для взлома скриптов.
Ответ отправил: PVS@Lviv (статус: Специалист)
Ответ отправлен: 25.02.2008, 12:55
Оценка за ответ: 5
Комментарий оценки:
Действительно, заработало. Забыл про $_SERVER. Спасибо за оперативность.

Отвечает: Товарищ Бородин / Borodul
Здравствуйте, Грамотник Игорь!
Переобзовите переменные $PHP_AUTH_USER и $PHP_AUTH_PW, как $_SERVER['PHP_AUTH_USER'] и $_SERVER['PHP_AUTH_PW']. Все дело в том, что на хостинге rusfaq.ru, как на любом грамотном хостинге, отключен режим register_globals. Отключен, потому что режим этот вредный, вредный своей ошибко- и взломоопасностью. Никогда не используйте глобальные переменные, вот Вам мой совет.

Переделайте переменные, и все должно пойти нормально.
Удачи!
С уважением, Товарищ Бородин
---------
У нас своих волшебников полно, что превращают золото в г..но. © Л. Филатов
Ответ отправил: Товарищ Бородин / Borodul (статус: Профессионал)
Россия, Новосибирск
Тел.: +7-923-245-3366
ICQ: 346988855
----
Ответ отправлен: 25.02.2008, 12:58
Оценка за ответ: 5
Комментарий оценки:
Переделал переменные, и все, действительно, пошло нормально. И еще как пошло.


Вопрос № 124.745
Здравствуйте, коллеги!
Наверняка кому-то из Вас приходилось сталкиваться с такой штукой, как крон. Мне было бы интересно узнать, каким образом крон работает, с какой стороны можно подойти к написанию, на каком языке лучше писать такое приложение.

Для чего он нужен, я, слава Богу, знаю.

Ну и если такого рода приложения кому-то приходилось писать, то было бы здорово, если бы Вы немножко поделились теоретическими познаниями. Кодов я не спрашиваю, мне бы направление действий узнать.
С уважением, Товарищ Бородин
Отправлен: 25.02.2008, 14:03
Вопрос задал: Товарищ Бородин / Borodul (статус: Профессионал)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Миленин Александр
Здравствуйте, Товарищ Бородин / Borodul!
Принцип простейшего планировщика таков:
Стартуется бесконечный цикл, который постоянно сравнивает текущее время с заданным, если они совпадают выполняет действие(или ряд действий), например запускает программу (функция system() ).

P.S. Написание и использование планировщиков на php очень нерационально.
Ответ отправил: Миленин Александр (статус: Студент)
Ответ отправлен: 25.02.2008, 14:16
Оценка за ответ: 5
Комментарий оценки:
Что-то подобное я и предполагал, только почему-то думал, что все сложнее. Спасибо, что просветили. Насчет PHP я догадывался, просто в данной рассылке больше народу зарегистрировано, поэтому решил вопрос задать сюда. Ну и потом, я же спросил, на каком языке лучше писать... Спасибо большое)))


Вопрос № 124.778
Здравствуйте, уважаемые эксперты!!!
Как написать скрипт, который писал возле ссылки, сколько раз был скачан файл по ссылке (сколько раз на нее нажималось).
Отправлен: 25.02.2008, 16:47
Вопрос задал: Александр Леонидович (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: Емельянов Данил Юрьевич
Здравствуйте, Александр Леонидович!

Для начала стоит переделать саму ссылку. Вместо прямой ссылки на сам скачиваемый файл мы указываем параметрическую ссылку и в качестве параметра передадим название нужного файла

Пример:
Заменим <a href="test.rar">Скачать тест</a> на <a href="download.php?id=10">Скачать тест</a>

Мы плавно переходим к необходимости использования БД. Расскажу на примере MySQL. Создадим таблицу с полями: Id(ключ),caption - название файла, path-путь, count - количество скачиваний.

Теперь с помощью скрипты мы сможем выводить параметрические ссылки(см. пример).

Пример(я расчитываю, что мы уже подключены к БД):

$res=mysql_query("SELECT * FROM 'files'");
while($ar=mysql_fetch_array($res))
echo "<a href=download.php?id=".$ar['id'].">Скачать тест</a>";

А в файле download.php мы заберем значение переменной $_GET['id'] или $HTTP_GET_VARS['id'] и с помощью запроса Update увеличим значение поля count на 1 и запускаем скачивания файла по адресу path.

Я надеюсь вам понятна основная идея, желаю удачи!!! Если что не понятно, спрашивайте.

---------
Жить хорошо, а хорошо жить еще лучше!
Ответ отправил: Емельянов Данил Юрьевич (статус: 6-ой класс)
Ответ отправлен: 25.02.2008, 17:24
Оценка за ответ: 5
Комментарий оценки:
Спасибо.


Вы имеете возможность оценить этот выпуск рассылки.
Нам очень важно Ваше мнение!
Оценить этот выпуск рассылки >>

Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2008, Портал RusFAQ.ru, Россия, Москва.
Авторское право: ООО "Мастер-Эксперт Про"
Техподдержка портала, тел.: +7 (926) 535-23-31
Хостинг: "Московский хостер"
Поддержка: "Московский дизайнер"
Авторские права | Реклама на портале
Версия системы: 4.71 от 27.02.2008
Яндекс Rambler's Top100
RusFAQ.ru | MosHoster.ru | MosDesigner.ru | RusIRC.ru
Kalashnikoff.ru | RadioLeader.ru | RusFUCK.ru

В избранное