2016-04-29 6 views
0

Я пытаюсь создать запрос, который будет обновлять виды профиля каждого человека, когда член обращается к их профилю. По какой-то причине он не обновляется, я уверен, что это сработало бы. Вот мои строки:Profile View Update

<?php 
$name = $_REQUEST['username']; 
$profile = mysql_query("SELECT * FROM users WHERE user_name='$name'"); 
$uprofile = mysql_fetch_assoc($profile); 

$username = $uprofile['user_name']; 
$profilev = $uprofile['profile_views']; 

mysql_query("UPDATE users SET profile_views +1 WHERE user_name='$name'"); 

?> 

Таким образом, на мой профиль, он отображает его имя успешно, и отображает значения по умолчанию базы данных для profile_views которой конечно, является 0. поэтому он правильно читает, у меня просто возникают проблемы с обновлением профиля users_views.

+1

'SET profile_views = profile_views + 1 WHERE' Но вы должны лучше прекратить использовать устаревший' 'MYSQL * функции – Alex

+0

Спасибо, но только потому, что его depreated, почему бы не я используй это? я ничего не знаю о PDO –

+0

просто прочитал некоторые из них http://stackoverflow.com/a/12860046/4421474 – Alex

ответ

3

У вас есть ошибка попробовать

"UPDATE users 
SET profile_views = profile_views +1 
WHERE user_name='$name'" 
+0

Спасибо. Есть ли способ, которым я мог бы также ограничить его, если тот же пользователь повторно посещает другую страницу участников, он не будет обновляться снова, например, 24 часа? –

+0

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

+1

Зачем OP «попробуйте» это? *** Хороший ответ *** всегда будет объяснять, что было сделано и почему это было сделано таким образом, не только для OP, но и для будущих посетителей SO. –