Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Лог серфинга
 
 автор: Тиль   (29.09.2006 в 11:42)   письмо автору
 
 

Такая ситуация.Есть сайт на MySql. в базе есть таблица со столбцами Ник,Серф,Время.
На сайте баннеры.Нужно чтобы при клике на баннер в таблицу заносились ник;адрес, куда человек прошел с банннера; время, сколько он там просидел.

   
 
 автор: cheops   (29.09.2006 в 11:46)   письмо автору
 
   для: Тиль   (29.09.2006 в 11:42)
 

Просидел где?

   
 
 автор: Тиль   (29.09.2006 в 11:47)   письмо автору
 
   для: cheops   (29.09.2006 в 11:46)
 

на сайте, куда прошел с баннера, в секундах, в минутах, как угодно, главное время учитывать

   
 
 автор: cheops   (29.09.2006 в 11:55)   письмо автору
 
   для: Тиль   (29.09.2006 в 11:47)
 

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

   
 
 автор: Тиль   (29.09.2006 в 11:56)   письмо автору
 
   для: cheops   (29.09.2006 в 11:55)
 

ну лана, черт с ним с временем без времени можно?просто проследить законнектился он туда или нет?

   
 
 автор: cheops   (29.09.2006 в 12:19)   письмо автору
 
   для: Тиль   (29.09.2006 в 11:56)
 

Для этого посетителя нужно не сразу перенаправлять на сайт, а сначала направлять на страницу count.php, передавая в GET-параметре ключ данного баннера, на странице count.php записывать в базу данных время обращения, ник, после чего перенаправлять его на запрашиваемый URL
<?php
  
// Заносим информацию в базу данных
  
...
  
// Осуществляем перенаправление на $url
  
echo "<HTML><HEAD>
          <META HTTP-EQUIV='Refresh' CONTENT='0; URL=
$url'>
          </HEAD></HTML>"
;
  
?>

   
 
 автор: Тиль   (29.09.2006 в 12:25)   письмо автору
 
   для: cheops   (29.09.2006 в 12:19)
 


<?php 
  
// Заносим информацию в базу данных 
  
insert into TABLE values (nikа здесь что писать?);//так?
  // Осуществляем перенаправление на $url 
  
echo "<HTML><HEAD> 
          <META HTTP-EQUIV='Refresh' CONTENT='0; URL=
$url'> 
          </HEAD></HTML>"

   
?> 

это код страницы count.php?

   
 
 автор: cheops   (29.09.2006 в 12:27)   письмо автору
 
   для: Тиль   (29.09.2006 в 12:25)
 

1) Какова структура таблицы, куда вы помещаете данные
2) Как происходит авторизация пользователей, где хранится $nik?

   
 
 автор: Тиль   (29.09.2006 в 13:26)   письмо автору
 
   для: cheops   (29.09.2006 в 12:27)
 

1. все varchar
2. авторизация проходит в сравнении с таблицей users кусок кода авторизации

<?
if ($is_logged == TRUE){

$login_panel = <<<HTML
<div style="padding-top:2px; padding-left:20px;">Привет, <b>{$nik['name']}</b>!</div>
<div style="padding-top:5px; padding-bottom:5px; padding-left:22px;"><table width="100%" class="copy">
HTML;

if (
$user_group[$nik['user_group']]['allow_admin']) {
$login_panel .= <<<HTML
        <tr>
        <td style="padding:2px;"><a href="
{$adminlink}" target="_blank">Админцентр</a></td>
    </tr>
HTML;
}
$login_panel .= <<<HTML
    <tr>
        <td style="padding:2px;"><a href="
{$link_profile}">Мой профиль</a></td>
    </tr>
        <tr>
        <td style="padding:2px;"><a href="
{$link_pm}">Cообщения ({$nik['pm_unread']} | {$member_id['pm_all']})</a></td>
        <tr>
        <td style="padding:2px;"><a href="
{$link_favorites}">Мои закладки</a></td>

        <tr>
        <td style="padding:2px;"><a href="
{$link_stats}">Статистика</a></td>
        <tr>
        <td style="padding:2px;"><a href="
{$link_addnews}">Добавить новость</a></td>
        <tr>
        <td style="padding:2px;"><a href="
{$link_newposts}">Обзор непрочитанного</a></td>
    </tr>
</table>
                </div>
<div style="padding-top:2px; padding-bottom:5px; padding-left:75px;"><a href="
{$link_logout}"><b>Завершить сеанс!</b></a></div>
HTML;

}

   
 
 автор: Тиль   (30.09.2006 в 08:48)   письмо автору
 
   для: cheops   (29.09.2006 в 12:27)
 

А можно просто без ника чтобы в таблицу складывались лишь адреса ссылок по которым пользователь прошел с баннера?или хотябы счетчик, сколько раз человек кликнул на баннер в разрезе пользователей?

   
 
 автор: Тиль   (02.10.2006 в 15:17)   письмо автору
 
   для: Тиль   (30.09.2006 в 08:48)
 

Проканает если напишу

insert into TABLE values (ссылка баннера,1) 

а потом при надобности просто суммировать при запросе к таблице и все?В таком случает как мне прописать ссылку баннера здесь?

   
 
 автор: Тиль   (02.10.2006 в 16:01)   письмо автору
 
   для: Тиль   (29.09.2006 в 11:42)
 

все, разобрался и как инсертитть в таблицу и все такое, только теперь не заню как сделать чтобы при нажатии на баннер(картинку) запускался файл insert.php

   
 
 автор: kaoz   (03.10.2006 в 03:56)   письмо автору
 
   для: Тиль   (02.10.2006 в 16:01)
 

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

   
 
 автор: Тиль   (03.10.2006 в 12:21)   письмо автору
 
   для: Тиль   (29.09.2006 в 11:42)
 

Вроде нашел как сделать все вроде нормально, только вот этот код не проходит, никто не подскажет почему?

<?php

    
// Данные для MySQL сервера
    
$DBHost "localhost";        // Хост
    
$DBUser "til";        // Имя пользователя
    
$DBPassword "til";        // Пароль
    
$DBName "til";        // Имя базы данных
    
    // Подключаемся к MySQL серверу
    
$Link mysql_connect($DBHost$DBUser$DBPassword);
    
    
// Выбираем нашу базу данных
    
mysql_select_db($DBName$Link);
    
    
// Добавляем запись в нашу таблицу customer
    // т.е. делаем SQL запрос
    
$query1 mysql_query("SELECT * FROM BANNERS");
    while (
$row mysql_fetch_array($result)) {// ВОТ НА ЭТУ СТРОЧКУ РУГАЕТСЯ
        
echo "<a href=banner.php?id=".$row['BANNER_ID'].">";
    }
    
$Query "INSERT INTO clicks VALUES('Admin',$query1,1)";
    
    
mysql_query($Query$Link);
    
    
// Закрываем соединение
    
mysql_close($Link);
    
?>

   
 
 автор: komex   (03.10.2006 в 17:18)   письмо автору
 
   для: Тиль   (03.10.2006 в 12:21)
 

Понятное дело ругается! Часть должна быть так:

<?php

// Данные для MySQL сервера
$DBHost = "localhost"; // Хост
$DBUser = "til"; // Имя пользователя
$DBPassword = "til"; // Пароль
$DBName = "til"; // Имя базы данных

// Подключаемся к MySQL серверу
$Link = mysql_connect($DBHost, $DBUser, $DBPassword);

// Выбираем нашу базу данных
mysql_select_db($DBName, $Link);

// Добавляем запись в нашу таблицу customer
// т.е. делаем SQL запрос
$query1 = mysql_query("SELECT * FROM BANNERS");
while ($row = mysql_fetch_array($query1)) {
echo "<a href=banner.php?id=".$row['BANNER_ID'].">";
}

А вот этого я понять не могу. Что это значит?

$Query = "INSERT INTO clicks VALUES('Admin',$query1,1)"; 
mysql_query($Query, $Link); 
?>

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования