|
|
|
|
|
для: FiX
(13.07.2005 в 00:15)
| | гыгы!
вы чё пацики(там же условия криво проставленны)? фикс проверь логику в первых 2-х eсловиях(типа в уме подставляй значения и смотри что должно выводиться) и юзай elseif! | |
|
|
|
|
|
|
|
для: Akira
(12.07.2005 в 18:46)
| | Да... Не ожидал, конечно, такого количества ответов, спасибо :)
Попробую все методы :) | |
|
|
|
|
|
|
|
для: FiX
(12.07.2005 в 15:40)
| | Поробуйте это =)
<?
$online = 99;
$onl=substr($online,strlen($online)-2);
$str = "посетител";
if(preg_match ("/(2|3|4)/i", $onl)) $add="я";
if(preg_match ("/1/i", $onl)) $add="ь";
if(preg_match ("/([^1-4]|11)/i", $onl)) $add="ей";
echo "Вместе с Вами сайт просматривают $online $str$add\n";
?>
|
| |
|
|
|
|
|
|
|
для: FiX
(12.07.2005 в 15:40)
| | Так же возможно ошибка в
if ($online<=5) {
Может все таки
if ($online>=5) {
? | |
|
|
|
|
|
|
|
для: Maloy
(12.07.2005 в 16:16)
| | ну вот на файлах ,примерно так,не тэстил но должно работать:
файл в котором отмечаются последние запросы юзеров к сайту:
Вася*1119604412
Мася*1119604412
|
<?php
$server_time = time()+$server_time;
$vremy_online = 60*5;
$us_on=0;
$users = file($on_lines);//читаем вышеупомянутый файл в массив
foreach($users as $line){
$user = explode("*", $line);
if(($server_time - $user[1]) < $vremy_online){$us_on++;
}
print "Вместе с Вами сайт просматривают $us_on посетителей";
?>
|
тема наподобие
http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=5382&page=1 | |
|
|
|
|
|
|
|
для: isset
(12.07.2005 в 16:02)
| | А ты не прбовал испоьзовать elseif?
И жесче условия сделай... Ведь 4 это <5 но это ведь и <=5 в то же время.
if ($online<5) {
print "Вместе с Вами сайт просматривают $online посетителя";
}
if ($online>=5 and $online!=21 and $online!=31 .....) {
print "Вместе с Вами сайт просматривают $online посетителей"; }
if ($online==21 or $online==31 .....) {
print "Вместе с Вами сайт просматривают $online посетитель"; }
|
Обычная логика. Хорошо тренируеться при работе со сложными SQL запросами | |
|
|
|
|
|
|
|
для: FiX
(12.07.2005 в 15:40)
| | А не делают так. Как не помню. А выводит потому что:
if ($online<5) {
print "Вместе с Вами сайт просматривают $online посетителя";
}
if ($online<=5) {
print "Вместе с Вами сайт просматривают $online посетителей"; } | |
|
|
|
|
|
|
|
для: FiX
(12.07.2005 в 15:40)
| | а если пробежаться по файлу или таблице циклом с условием онлайн,или в массив
поместить ,подсчитать всё это дело(тех кто онлайн) и вывести.... | |
|
|
|
|
|
|
| Есть скрипт счетчика. Все работает, но я решил чуть добавить грамматику.
Код:
if ($online<5) {
print "Вместе с Вами сайт просматривают $online посетителя";
}
if ($online<=5) {
print "Вместе с Вами сайт просматривают $online посетителей"; }
if ($online==21 || $online==31 || $online==41 || $online==51 || $online==61 || $online==71 || $online==81 || $online==91 || $online==101) {
print "Вместе с Вами сайт просматривают $online посетитель"; }
|
По замыслу должно выводиться надпись "Вместе с вами просматривают сайт 3 посетителя" или "7 посетилелей" или "21 посетитель". Но он зачем-то выводить сразу две строки:
"Вместе с Вами сайт просматривают 4 посетителя Вместе с Вами сайт просматривают 4 посетителей"
Зачем? Команду break здесь не используешь... | |
|
|
|
|