[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: php скрипт то10, помогите
SerJik67
Здраствуйте!!
Помогите пожалуйста!
В php не чего не понимаю!
Нужен скрипт для топ10, допустим есть 100 страниц, на каждой странице есть скрипт количества посещений он записывает значения в текстовые файлы, пример

stranica-1.php запись ко-во посещ в фаил counter-1.txt значения 55 ссылка a href="">Страница первая</a
stranica-2.php запись ко-во посещ в фаил counter-2.txt значения 60 ссылка a href="">Страница вторая</a
stranica-3.php запись ко-во посещ в фаил counter-3.txt значения 50 ссылка a href="">Страница третья</a
stranica-4.php запись ко-во посещ в фаил counter-4.txt значения 70 ссылка a href="">Страница четвертая</a

Вывод в топ по значениям в .txt файлах при этом показывает ссылки:
a href="">Страница четвертая</a
a href="">Страница вторая</a
a href="">Страница первая</a
a href="">Страница третья</a


БД нету счетчики просмотров страниц записываю значения в .txt

Помогите решить проблему, я думаю для знающих людей - это не составит труда!



Спустя 14 минут, 54 секунды (26.09.2011 - 11:24) m4a1fox написал(а):
А почему не БД использовать?

Спустя 1 минута, 56 секунд (26.09.2011 - 11:26) SerJik67 написал(а):
Цитата (m4a1fox @ 26.09.2011 - 08:24)
А почему не БД использовать?

Я экономист, сайт находится на джино, я взял только место 10г и чтобы php работало, БД подключается за отдельную плату, но так как я еще не гуру, только новичек это будет лишнее для меня

И еще вопрос не по теме, реально ли самому научится ве6 програмированию на php или надо проходить курсы. (Как можно стать как Цукерберг )

Спустя 25 минут, 52 секунды (26.09.2011 - 11:52) m4a1fox написал(а):
РЕально! Он такой же человек как и все! Главное это упорство и постоянная практика! И лет через 5 будешь не хуже него прогать!

Спустя 44 секунды (26.09.2011 - 11:53) SerJik67 написал(а):
Я так понимаю надо к каждому файлу counter-...txt присвоить свою ссылку
Потом открываем все файлы сравниваем значения в них и выводим первые 10 ссылок

Надо как то решить эту задачу, с чего начать?

Спустя 59 минут, 32 секунды (26.09.2011 - 12:52) bodja написал(а):
Ну если разберетессь в том что я вам дал ,значит начало будет положено :)

<?php
// счетчик в файле cnt.txt
// число в каждой строчке соответствует номеру файла.
// например число 123 в строке 3 соответствует stranica-3.php


$a=file('cnt.txt');
for ($i=0;$i<count($a);$i++) {
$a[$i]=intval($a[$i]);
}
arsort($a);
$i=0;
$max=10; // сколько у нас в топе.
if (count($a)<$max) {
$max=count($a);
}
while ($i++<$max) {
list($key, $val) = each($a);
echo '<a href="stranica-'.($key+1).'.php">Страница '.($key+1).'</a> Посещений :'.$val.'<br>' ;
}
?>

Спустя 5 минут, 14 секунд (26.09.2011 - 12:58) SerJik67 написал(а):
Спасибо, сейчас попробую, потом напмишу, что получилось

Спустя 20 минут, 56 секунд (26.09.2011 - 13:19) SerJik67 написал(а):
Скрипт мне понравился но для решения моей задачи не подходит
Просто в первом посте немного не так мысль довел

Смысл такой есть страницы, например

fdfdf.php
lgfdlk.php
dfsd.php
sadksad.php

и к каждой странице существует один счетчик который записывает просмотры в отдельный текстовый фаил

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

Я отлучусь не на долго, если кто знает как это сделать напишите, буду очень благодарен!!!

Спустя 12 минут, 7 секунд (26.09.2011 - 13:31) Zerstoren написал(а):
Цитата (SerJik67 @ 26.09.2011 - 08:26)
Цитата (m4a1fox @ 26.09.2011 - 08:24)
А почему не БД использовать?

Я экономист, сайт находится на джино, я взял только место 10г и чтобы php работало, БД подключается за отдельную плату, но так как я еще не гуру, только новичек это будет лишнее для меня

И еще вопрос не по теме, реально ли самому научится ве6 програмированию на php или надо проходить курсы. (Как можно стать как Цукерберг )

Я Вам скажу чуть больше - я сам сейчас доучиваюсь на экономиста, а точнее на МВЭД`а.

Но это абсолютно мне не помешало во время учебы переквалифицироваться в программиста, изучить html, css, php, js и познакомиться python, bash, Linux, так что все зависит исключительно от желания.

Дерзайте коллега, я рад что не пошел в экономику, тут куда интереснее)))

Спустя 25 минут, 18 секунд (26.09.2011 - 13:56) bodja написал(а):
Цитата
Просто в первом посте немного не так мысль довел


Застрелиться можно user posted image

<?php
$a=file('db.txt');
//$a[13]=intval($a[13])+1;
//file_put_contents('db.txt',$a);


for ($i=0;$i<count($a);$i++) {
$tmp=explode("|",$a[$i]);
$b[$i]=intval($tmp[0]);
$c[$i]=$tmp[1];
}
arsort($b);
$i=0;
$max=10;
if (count($b)<10) {
$max=count($a);
}
while ($i++<$max) {
list($key, $val) = each($b);
echo '<a href="'.$c[$i].'">Страница '.($key+1).'</a> Посещений :'.$val.' Файл:'.$c[$i].'<br>' ;
}
?>


фотмат cnt.txt следующий

1|stsr.php|
2|fff.php|
11|ghggh.php|
3|kffk.php|
44|dfhfh.php|
222|fhhh.php|
13|ddjf.php|
45|dhhd.php|
657|djd.php|
34|dkdd.php|
1234|dkdkk.php|
44575|dkddk.php|
52442|sjshs.php|
4570|dldf.php|

Цитата
и к каждой странице существует один счетчик который записывает просмотры в отдельный текстовый фаил

Вообще избавляетесь от подобного и от
Цитата
fdfdf.php
lgfdlk.php
dfsd.php
sadksad.php

тоже.

Спустя 2 часа, 30 минут, 6 секунд (26.09.2011 - 16:26) SerJik67 написал(а):
Цитата (bodja @ 26.09.2011 - 10:56)
Вообще избавляетесь от подобного и от
Цитата
fdfdf.php
lgfdlk.php
dfsd.php
sadksad.php

тоже.


--Это выдоманные страници для примера, на самом дели эти страници нормально называются )

Спустя 29 минут, 24 секунды (26.09.2011 - 16:55) SerJik67 написал(а):
эх значит не судьба ( , не ужели ни как нельзя сделать. Ка же вам доступно то объяснить.

Скрипты предложанные хорошие, но не то что я хотел. Эх надо учить php !!! unsure.gif

Спустя 11 минут, 23 секунды (26.09.2011 - 17:07) bodja написал(а):
Цитата
на самом дели эти страници нормально называются

Я не про названия ,а про их количество в формате php.
В php должен быть код ,а не ваши статьи или страницы с приклееными туда кусками скриптов.
Отдельный файл для каждого счетчика ,тоже никто не делает,за это бьют не только по рукам...
Если уж сильно охота ,ищите описание функции scandir, немного подправите в начале ,то что я дал,и будет работать,но уже без меня. wink.gif
Удачи.

Спустя 17 минут, 48 секунд (26.09.2011 - 17:25) Игорь_Vasinsky написал(а):
SerJik67
Цитата
эх значит не судьба ( , не ужели ни как нельзя сделать. Ка же вам доступно то объяснить.

Да всё правильно тебя поняли.

Смотри как выходит:

1. Есть код счётчика в отделном файле php - counter.php
2. Есть куча твоих страниц - куда ты инклудишь свой счётчик:
include "/counter.php";


Что делает счетчик:
- Запускается он при просмотре страницы
- Открывает файл с результатами, находит там ту страницу - на которой он сейчас , считывает кол-во просмотров и делает +1
- перезаписывает строку к которой он добавил +1


Что тут не так? Ты хочешь готовый код с описанием?

900 руб. будет скрипт + описание.

Спустя 1 час, 1 минута, 19 секунд (26.09.2011 - 18:26) SerJik67 написал(а):
Цитата (Игорь_Vasinsky @ 26.09.2011 - 14:25)
Смотри как выходит:
1. Есть код счётчика в отделном файле php - counter.php
2. Есть куча твоих страниц - куда ты инклудишь свой счётчик:
include "/counter.php";

Вот в этом вся и проблема, что для каждой отдельной страницы существует текстовый фаил в который записывается количество просмотров.

Таких страниц допустим количество n и соответственно текстовых файлов такое же количество.

Спустя 14 минут, 26 секунд (26.09.2011 - 18:40) Winston написал(а):
Цитата (SerJik67 @ 26.09.2011 - 18:26)
Таких страниц допустим количество n и соответственно текстовых файлов такое же количество

А, что мешает сделать один файл и записывать туда адрес страницы, а напротив его, количество просмотров.
PS: Файл со статистикой лучше сделать в .ini формате, будет потом проще разбирать и изменять данные.

Спустя 8 минут, 15 секунд (26.09.2011 - 18:49) Игорь_Vasinsky написал(а):
Цитата
Вот в этом вся и проблема, что для каждой отдельной страницы существует текстовый фаил в который записывается количество просмотров.

Таких страниц допустим количество n и соответственно текстовых файлов такое же количество.


ну тогда ещё проще (тока это через жо**) 1000 страниц - 1000 файлов



Смотри как выходит:

1. Есть код счётчика в отделном файле php - counter.php
2. Есть куча твоих страниц - куда ты инклудишь свой счётчик:
include "/counter.php";


Что делает счетчик:
- Запускается он при просмотре страницы
- Ищем файл (например по названию страницы), открываем и кол-во просмотров делает +1

Спустя 5 минут, 54 секунды (26.09.2011 - 18:55) Игорь_Vasinsky написал(а):
Даже не файл счётчика а простой код

вначале каждой страницы пишешь
count - твоя директория с файлами (кол-во просмотров)

<?php
$thisFile = "/count/" . $_SERVER['PHP_SELF'] . ".txt";

if(file_exist($thisFile))
file_put_contents($thisFile,"0");
else
{
$old = file_get_contents($thisFile);

file_put_contents($thisFile, $old + 1);
}

?>

Спустя 5 минут, 19 секунд (26.09.2011 - 19:00) Игорь_Vasinsky написал(а):
у директории права (CHMOD) 0777
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.