+0.04
Рейтинг
0.65
Сила

Максим

Может кому понадобиться готовое решение по переносу юзеров с php-nuke на LS

Для начала необходимо таблицу юзеров php-nuke импортировать в базу LS (т.е. в базе будут 2 таблицы юзеров: prefix_user пользователи LS, prefix_users пользователи php-nuke)
1. С учетом совета kks запрос для переноса юзеров
INSERT INTO prefix_user (user_login, user_password, user_mail, user_date_register, user_ip_register, user_activate, user_profile_name, user_profile_country, user_profile_site, user_profile_icq, user_profile_about) SELECT username, user_password, user_email, user_regdate, last_ip, user_active, name, user_from, user_website, user_icq, CONCAT_WS(", ",user_interests, user_occ) FROM prefix_users;

prefix может быть другим
2. Запрос создание персональных блогов новых пользователей без изменений
INSERT INTO prefix_blog (user_owner_id, blog_title, blog_description) SELECT user_id, CONCAT('Блог им. ', user_login), '' FROM prefix_user

3. Преобразование формата даты регистрации юзеров к требуемому в LS (сохранить в файл, запустить скрипт)


<?php
error_reporting (E_ALL ^ E_NOTICE);
ini_set("max_execution_time", "300000");
mysql_connect("localhost", "root", "")
        or die("Could not connect");
mysql_select_db("name_db");
$result = mysql_query("SELECT username, user_regdate FROM prefix_users");
while(list($username, $user_regdate) = mysql_fetch_array($result))  {
$user_regdate = date("Y-m-d H:i:s", strtotime ($user_regdate));
mysql_query("UPDATE prefix_user SET user_date_register='".$user_regdate."' WHERE user_login='".$username."'");
} 

?>

Т.к. метод хранения паролей у обоих систем одинаков, юзеры могут входить на LS под своими старыми паролями

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

Сама по себе статистика обновляться не будет, нужно добавить в CRON (или «планировщик задач», например, в CPANEL) вызов скрипта mysite.ru/stat/stat.php, которые уже заберет все данные.
в statistics.html добавить соответственно:
<div id="timeonsite" align="center" style="padding-bottom:80px">
		<strong>Для просмотра сожержимого, установите последнюю версию <a href="http://get.adobe.com/flashplayer/">Adobe Flash Player</a></strong>
	</div>


<script type="text/javascript">
	// <![CDATA[
	var so = new SWFObject("/stat/amxy.swf", "amxy", "600", "400", "8", "#FFFFFF");
	so.addVariable("path", "./amxy/");
	so.addVariable("settings_file", escape("/stat/timeonsite.xml?<?php echo mktime();?>"));
	so.addVariable("data_file", escape("/stat/timeonsite.csv?<?php echo mktime();?>"));
	so.addVariable("loading_data", "Загрузка стат. графиков");
	so.addVariable("preloader_color", "#BBBBBB");
	so.write("timeonsite");
	// ]]>
</script>

<script type="text/javascript">
	// <![CDATA[
	var so = new SWFObject("/stat/ampie.swf", "ampie_chart", "640", "400", "8", "#FFFFFF");
	so.addVariable("path", "./ampie/");
	so.addVariable("settings_file", escape("/stat/browsers_settings.xml?<?php echo mktime();?>"));
	so.addVariable("data_file", escape("/stat/browsers.csv?<?php echo mktime();?>"));
	so.addVariable("loading_data", "Загрузка стат. графиков");
	so.addVariable("preloader_color", "#BBBBBB");
	so.write("browsers");
	// ]]>

</script>

<div id="os" align="center" style="padding-bottom:80px">
		<strong>Для просмотра сожержимого, установите последнюю версию <a href="http://get.adobe.com/flashplayer/">Adobe Flash Player</a></strong>
	</div>

<script type="text/javascript">
	// <![CDATA[
	var so = new SWFObject("/stat/ampie.swf", "ampie_chart", "640", "400", "8", "#FFFFFF");
	so.addVariable("path", "./ampie/");
	so.addVariable("settings_file", escape("/stat/os_settings.xml?<?php echo mktime();?>"));
	so.addVariable("data_file", escape("/stat/os.csv?<?php echo mktime();?>"));
	so.addVariable("loading_data", "Загрузка стат. графиков");
	so.addVariable("preloader_color", "#BBBBBB");
	so.write("os");
	// ]]>

</script>

<div id="referrers" align="center" style="padding-bottom:80px">
		<strong>Для просмотра сожержимого, установите последнюю версию <a href="http://get.adobe.com/flashplayer/">Adobe Flash Player</a></strong>
	</div>

<script type="text/javascript">
	// <![CDATA[
	var so = new SWFObject("/stat/ampie.swf", "ampie_chart", "640", "400", "8", "#FFFFFF");
	so.addVariable("path", "./ampie/");
	so.addVariable("settings_file", escape("/stat/referrers_settings.xml?<?php echo mktime();?>"));
	so.addVariable("data_file", escape("/stat/referrers.csv?<?php echo mktime();?>"));
	so.addVariable("loading_data", "Загрузка стат. графиков");
	so.addVariable("preloader_color", "#BBBBBB");
	so.write("referrers");
	// ]]>

</script>

<div id="source" align="center" style="padding-bottom:80px">
		<strong>Для просмотра сожержимого, установите последнюю версию <a href="http://get.adobe.com/flashplayer/">Adobe Flash Player</a></strong>
	</div>

<script type="text/javascript">
	// <![CDATA[
	var so = new SWFObject("/stat/ampie.swf", "ampie_chart", "640", "400", "8", "#FFFFFF");
	so.addVariable("path", "./ampie/");
	so.addVariable("settings_file", escape("/stat/source.xml?<?php echo mktime();?>"));
	so.addVariable("data_file", escape("/stat/source.csv?<?php echo mktime();?>"));
	so.addVariable("loading_data", "Загрузка стат. графиков");
	so.addVariable("preloader_color", "#BBBBBB");
	so.write("source");
	// ]]>

</script>


в папке stat создать соответствующие файлы:
browsers_settings.xml, timeonsite.xml,os_settings.xml, referrers_settings.xml, source.xml — по аналогии с существующими, т.е. если это график amline — файл создавать на основе visitors_settings.xml, если удельные веса — ampie, то на основе country_settings.xml и т.д.
Для отображение длительности пребывания на сайте нужно скачать график amxy.swf и положить в папку stat с остальными amcharts.com/files/getfile.php?filename=amxy_1.6.4.1.zip

У меня только трабла возникла с копирайтами:
1.Есть файл amcharts_key.txt с ключом. Если файл statistics.html, которыей инклюдю в другом пхп скрипте, вылазиют копирайты, хотя непосредственно в самом statistics.html не отображаются. Куда только этот файл не ложил — если инклюдишь — все-равно вылазиют.
2. Копирайты вылазиют также на графике «длительность пребывания на сайте». Победить тоже пока не могу.
С ОС и браузерами там вроде просто. Добавил несколько новых отчетов — Браузеры, ОС, источники трафика, рефераллы, время на сайте.
В конфиг.пхп нужно добавить после $cityCSV=«city.csv»; это
$browsersCSV="browsers.csv";
$operatingsystemCSV="os.csv";
$referrersCSV="referrers.csv";
$timeOnSiteCSV="timeonsite.csv";
$sourceCSV="source.csv";


в stat.php добавляем следующие строки
//////Длительность пребывания на сайте для всех посетителей

$ga->requestReportData($id,array('day','month'),array('timeOnSite','visits'),'month',null,$date1MonthStart, $date1MonthFinish,1,30);

//переменная для записи резалта
$output="";


//получаем и обрабатываем результаты
foreach($ga->getResults() as $result)
{
$d=$result; //день
$visits=$result->getVisits(); //посетители
$timeOnSite=$result->getTimeOnSite(); //посещения
$timeOnSite=$timeOnSite/$visits;
$timeOnSite=round($timeOnSite);
#$timeOnSite=date ("i:s", $timeOnSite);
//приводим дату к удобочитаемому виду ,мменяем пробелы на точки
$d=str_replace(" ",".",$d);

//формируем строку
$output.=$d.";".$timeOnSite."\n";
}

//пишем в файл
$fp=fopen($path.$timeOnSiteCSV,"w");
fputs($fp,trim($output));
fclose($fp);




//////получаем БРАУЗЕРЫ за последний месяц
$ga->requestReportData($id,array('browser'),array('visits'),'-visits',null,$date1MonthStart, $date1MonthFinish,1,5);

//переменная для записи резалта
$output="";

//получаем общее число браузеров
$total_visits=$ga->getVisits();

//получаем и обрабатываем результаты
foreach($ga->getResults() as $result)
{
$browser=$result->getBrowser(); //Браузеры
$visits=$result->getVisits(); //кол-во посещений


//формируем строку
$output.=$browser.";".$visits."\n";
}

//пишем в файл
$fp=fopen($path.$browsersCSV,"w");
fputs($fp,trim($output));
fclose($fp);


//////получаем Операционные системы за последний месяц
$ga->requestReportData($id,array('operatingSystem'),array('visits'),'-visits',null,$date1MonthStart, $date1MonthFinish,1,4);

//переменная для записи резалта
$output="";

//получаем общее число браузеров
$total_visits=$ga->getVisits();

//получаем и обрабатываем результаты
foreach($ga->getResults() as $result)
{
$operatingsystem=$result->getOperatingSystem(); //Браузеры
$visits=$result->getVisits(); //кол-во посещений

$operatingsystem=str_replace("(not set)","не определено",$operatingsystem);
//формируем строку
$output.=$operatingsystem.";".$visits."\n";
}

//пишем в файл
$fp=fopen($path.$operatingsystemCSV,"w");
fputs($fp,trim($output));
fclose($fp);

//////получаем Источники трафика системы за последний месяц
$ga->requestReportData($id,array('medium'),array('visits'),'-visits',null,$date1MonthStart, $date1MonthFinish,1,6);

//переменная для записи резалта
$output="";

//получаем общее число браузеров
$total_visits=$ga->getVisits();

//получаем и обрабатываем результаты
foreach($ga->getResults() as $result)
{
$medium=$result->getMedium(); //Источники трафика
$visits=$result->getVisits(); //кол-во посещений

$medium=str_replace("(none)","Прямой трафик",$medium);
$medium=str_replace("organic","Поисковые системы",$medium);
$medium=str_replace("referral","Сайты - источники переходов",$medium);
//формируем строку
$output.=$medium.";".$visits."\n";
}

//пишем в файл
$fp=fopen($path.$referrersCSV,"w");
fputs($fp,trim($output));
fclose($fp);


//////получаем сайты с которых ходили
$ga->requestReportData($id,array('source'),array('visits'),'-visits',null,$date1MonthStart, $date1MonthFinish,1,8);

//переменная для записи резалта
$output="";

//получаем общее число браузеров
$total_visits=$ga->getVisits();

//получаем и обрабатываем результаты
foreach($ga->getResults() as $result)
{
$source=$result->getSource(); //Источники трафика
$visits=$result->getVisits(); //кол-во посещений

$source=str_replace("(direct)","Прямой трафик",$source);

//формируем строку
$output.=$source.";".$visits."\n";
}

//пишем в файл
$fp=fopen($path.$sourceCSV,"w");
fputs($fp,trim($output));
fclose($fp);
Хотел поинтересоваться: при создании блога с кириллицей в URL, файл аватар блога загружается также с кириллицей в названии.

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

Подскажите, где допилить, чтобы файл аватара блога транслитировался в латинницу?
Будьте добры, запишите меня тоже!
Будьте добры, меня тоже запишите
Можно у вас уточнить, как вы формируете на своем сайте первый график — Динамика роста посещаемости?
Вопрос снят
Как и оказалось — все дело в хостере — по умолчанию у них закрыты исходящие коннекты с серверов по http.
посмотрели куда ходит скрипт и открыли эти направления.
Здравствуйте!
Возник вопрос

На одном хостинге xml отчеты успешно загружаются, графики отображаются, а на другом проблемы:
при выполнении сайт.ру/ga/main.php страница долго висит, а затем выдает страницу
504 Gateway Time-out (IE)
HTTP-шлюз не отвечает (код ошибки: 504) (Opera)

собственно хостеру-то я уже написал, может просто кто сталкивался?
На там хостинге, где не получается сформировать отчеты в event.log пишется

[15-Feb-2009 17:43:34 ALMT] Создание объектов отчетов
[15-Feb-2009 17:43:34 ALMT] Сбор данных требуемых для отчетов
[15-Feb-2009 17:43:34 ALMT] Загрузка данных, необходимых для отчетов
[15-Feb-2009 17:47:59 ALMT] Создание объектов отчетов
[15-Feb-2009 17:47:59 ALMT] Сбор данных требуемых для отчетов
[15-Feb-2009 17:47:59 ALMT] Загрузка данных, необходимых для отчетов
[15-Feb-2009 17:48:34 ALMT] Your login and password don't match. Make sure you've typed them in correctly.
в браузер так ничего и не выводится…
С логином и паролем все верно, т.к. с теми же авторизационными данными на первом хостинге проблем нет.

и еще вопрос: то что в php файлах скриптов нет закрывающихся кавычек в конце «?>» — это так нужно?