Перейти к контенту

Линк со счетчиком переходов по ссылке


Рекомендуемые сообщения

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

 

Вчерновую сделал на 1.3:

 

1. Добавил миме-тип:

"link"							=> array( 1, 'text.gif' , 'URL'		  ,0) ,

 

 

2. В скине сделал возможность ввода линка вместо файла:

	<td class='pformleft'><div id='fuploadert' name='fuploadert'>{$ibforums->lang['upload_text']} $data</div></td>
<td class='pformright'><div id='fuploader' name='fuploader'><input class='textinput' type='file' size='30' name='FILE_UPLOAD' />   <a href="java script:;" onclick="java script:fuploader.innerHTML='<input class=textinput type=text size=30 maxlength=250 name=FILE_UPLOAD />';fuploadert.innerHTML='Вы можете вставить ссылку на страницу, для которой будет включен счетчик переходов:'">Вставить линк со счетчиком</a></div></td>

 

 

3. Записываем линк в БД вместо информации о файле:

if(!isSet($ibforums->input['FILE_UPLOAD']))$ibforums->input['FILE_UPLOAD'] = "";
if($ibforums->input['FILE_UPLOAD'] == "")
{
// код загрузки файла и модификации БД для файла
}
else
{
if(preg_match('#^https?\\:\\/\\/[a-z0-9\-]+\.([a-z0-9\-]+\.)?[a-z]+#i', $ibforums->input['FILE_UPLOAD']))
	{
	$attach_data = array( 'attach_id'   => "link",
						  'attach_hits' => "0",
						  'attach_type' => "link",
						  'attach_file' => $ibforums->input['FILE_UPLOAD'],
						);
	}
}

 

 

4. Ключик для выбора отображения в скине: линк или файл:

if( $row['attach_type'] == "link" )$link_path = TRUE;
else $link_path = FALSE;

 

 

5. Меняем слова "количество скачиваний" на "количество переходов" для линков (в скине перед "ретурном"):

if($data['link_path'])$hiter = "Ссылка на страницу ( количество переходов по ссылке: ".$data['hits']." )";
else $hiter = $ibforums->lang['attached_file']." ( ".$ibforums->lang['attach_hits'].": ".$data['hits']." )";

 

 

6. Открытие страницы, если линк:

if( $post['attach_type'] == "link" )
{
$DB->query("UPDATE ibf_posts SET attach_hits=attach_hits+1 WHERE pid='".$post['pid']."'");
header("location: ".$post['attach_file']);
}
else{
// код выгрузки файла
}

Ссылка на комментарий
Поделиться на других сайтах

  • 10 месяцев спустя...

Дык работает.

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

Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

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

Гость
Ответить в этой теме...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.