Вопрос-Ответ по php

Печать RSS
6563
Кураторы темы:

В

Пацак
0
3566.спасибо=)
С

Землянин
0
67, я забыл что ему чч.мм.сс еще надоsmile )
D

Малиновые штаны
0
3568. Vitaliy, только смотри, это серверное время, то в каком часовом поясе стоит сервер или хостер какой установил, можит отличатся от твоего времени или МСК, smile поправку сделаеш
В

Пацак
0
3567.спс
3570.угу;)спс
М

Пацак
0
Что неправильного? Делаю количество просмотров записи, но пытаюсь сделать, чтобы на протяжении сессии нельзя было одну и ту же запись "просмотреть", т.е. ее можно просмотреть, но как количество уже не засчитается при повторном обращении этого же юзера.
if(empty($_SESSION['views']) or $_SESSION['views'] != '$id'){
  $views = $row['views'] + 1;
  mysql_query("UPDATE `content` SET `views` = '$views' WHERE `id` = '$id'");
  $_SESSION['views'] = $id;
 }
Изменил: Михаил (27.07.2010 / 02:09)

ツ ツ ツ
0
3572. mides,
Ну тут ошибка вот в чем empty($_SESSION['views']) убири это вообще, потому что просмотрев любую запись, счетчик вообще не будет увеличиваться, потому-что $_SESSION['views'] будет не пустой.
Но тут есть косяк, зайдя в одну запись потом зайдя в другую и потом опять же в первую, счетчик опять поднимется, пиши либо так
$_SESSION['views'.$id] (Это выходит для каждой записи отдельно) либо делай отдельный лог на сервере, и ещё
$views = $row['views'] + 1;
mysql_query("UPDATE `content` SET `views` = '$views' WHERE `id` = '$id'");
так будет проще mysql_query("UPDATE `content` SET `views` = (views+1) WHERE `id` = '$id'");
Разницы в твоем случае особой нет, так как запись так итак тебе нужно вытаскивать, это на будущее ) ато часто встречаю такое, чтоб счетчик увеличить берут извлекаю запись, плюсуют и опять пишут
М

Пацак
0
3573. .::lugaro::., все-равно не корректно работает, при каждом обновлении прибавляет 1
if($_SESSION['views'.$id] != '$id'){
  mysql_query("UPDATE `content` SET `views` = (views+1) WHERE `id` = '$id'");
  $_SESSION['views'.$id] = $id;
 }
М

Пацак
0
все, исправил, не актуально.
.::lugaro::., спс за помощь
Изменил: Михаил (27.07.2010 / 17:35)

Чатланин
0
Исправте бб код для анкеты.
<?php
$message = preg_replace('#\[user\](.*?)\[/user\]#', '<a href="'.BASEDIR.'pages/anketa.php?uz=\1">\1</a>', $message);
?>
вот так сделаем:
[user]Vantuz[/user] будет так: Vantuz
можете вставить себе сайт) я пользуюсь)
Просто надо сделать так что если написаль туда нижнем регистре или верхным. Если написать [user]vantuz[/user] то будет так. vantuz а логин вантуза Vantuz. Надо чтоб реврайтшики исправили код плиз))

2000 лет д.н.э.
0
и как ты себе представляешь, скрипт за тебя должен думать и угадывать в каком регистре правильно?)))
сканировать профили каждый раз и искать совпадения это уже жесть
Стикеры / Теги / Правила / Топ тем / Топ постов / Поиск