Здравейте,
искам да направя, когато един потребител се е логнах на снимка, видео, пост и т.н. да има един бутон 'Добави в любими'. Съответно, когато потребителя натисне 'Добави в любими' да бъде добавяне към този потребител, така че, когато си влезе после в пробила да може да вижда всичко добавено в любими.
Имам таблица POST и таблица USERS. За целта добавих нова таблица, която да държи фаворитите.
Таблица favorites с полета - user_id и item_id.
По този начин показвам бутона за добавяне на фаворитите, когато потребителя е логнат.
Така на снимката вече има бутон за добавяне, който държи id-то на снимката. Предполагам трябва да взема и id-то на потребителя?
След това ajax-a ( не съм сигурен, че е правилен... малко ми е "тъмна индия" все още ajax-a
)
Сега въпросите са ми -
1. Как да взема и къде да добавя user_id. Още при логване да запазвам user_id в сесията и да го предавам и него ли? Къде да го добавя в бутона?
2. Примерен код в favorites.php за инсъртване в таблицата favorites.
3. Заявка за изкарване на всички фаворити, които има потребителя, когато си влезе в профила( profile.php )
Блгагодаря!
edit:
Драснах набързо това и при натискане на бутона изкарва съобщение, че е добавено, но в базата няма нищо добавено..
искам да направя, когато един потребител се е логнах на снимка, видео, пост и т.н. да има един бутон 'Добави в любими'. Съответно, когато потребителя натисне 'Добави в любими' да бъде добавяне към този потребител, така че, когато си влезе после в пробила да може да вижда всичко добавено в любими.
Имам таблица POST и таблица USERS. За целта добавих нова таблица, която да държи фаворитите.
Таблица favorites с полета - user_id и item_id.
По този начин показвам бутона за добавяне на фаворитите, когато потребителя е логнат.
Код:
if(!empty($_SESSION['user']))
{
echo '
<div class="buttons">
<div class="count">Прегледи: '.$row['image_hits'].'</div>
<a href="#" class="bookmarked has-tooltip" data-title="Добави в любими" id="'.$row['image_id'].'"></a>
</div>';
}
else {
echo '
<div class="buttons">
<div class="count">Прегледи: '.$row['image_hits'].'</div>
</div>';
}
След това ajax-a ( не съм сигурен, че е правилен... малко ми е "тъмна индия" все още ajax-a
Код:
$(document).ready(function(){
$('.bookmarked', $('.buttons')).click(function(){
var id = $(this).attr('id');
$.ajax({
type: "POST",
url: "favorites.php",
data: { image_id: image_id }
}).done(function( msg ) {
alert( "Добавено в любими: " + msg );
});
});
});
1. Как да взема и къде да добавя user_id. Още при логване да запазвам user_id в сесията и да го предавам и него ли? Къде да го добавя в бутона?
2. Примерен код в favorites.php за инсъртване в таблицата favorites.
3. Заявка за изкарване на всички фаворити, които има потребителя, когато си влезе в профила( profile.php )
Блгагодаря!
edit:
Драснах набързо това и при натискане на бутона изкарва съобщение, че е добавено, но в базата няма нищо добавено..
Код:
if(!empty($_POST["image_id"]) && !empty($_SESSION['user_id'])) {
include 'misc/database.inc.php';
error_reporting(E_ALL);
ini_set('display_errors', 1);
$pdo = Database::connect();
$image_id = $_POST['image_id'];
$user_id = $_SESSION['user_id'];
$query = $pdo -> prepare("INSERT INTO favorites (image_id,user_id)
VALUES (:image_id, :user_id)");
$query -> execute(array(
":image_id" => $image_id,
":user_id" => $user_id
));
Database::disconnect();
}