10

私の問題をもう少し詳しく説明してみます。

私は最近、開発スキルを磨くために、大学で初級レベルのパートタイム開発者の職を得ました。過去に MySQL を使用したことはありますが、私は主にフロント エンド (HTML/CSS/JS) を担当しているため、1 つのコースで簡単に取り上げただけでした。

とにかく、私を雇った学部には、新入生が大学に順応できるように設計されたウェブサイトがあります。チュートリアルやビデオなどを視聴できます。サイトにアクセスするには、大学のアカウント (LDAP を使用) にログインする必要があります。アカウント名は abc1234 の形式です。

さて、私の問題は、新入生が見たチュートリアル/ビデオをスタッフが追跡する方法を作成する必要があることです。彼らは私にデータベースを使ってこれをやらせたいと思っています。何千人もの生徒がいる可能性があり、どの生徒が各リンクをクリックしたか、または各ビデオを見たかを正確に確認できるようにしたいと考えています。

このためのデータベースをどのように設定すればよいですか? 追跡したい複数のリンク/チュートリアル/ビデオがあります。どのユーザーが動画を最後まで視聴したかを追跡する方法があればボーナス ポイントですが、必須ではありません。

ブラウザとデータベース間の交換を処理するために PHP を使用する必要があると思いますよね?

助けやヒントをありがとう。:)

4

3 に答える 3

4

MySQLに値を追加しながら、要求されたリンクを取得するPHPスクリプトを作成するだけで済みます。

私がこれを行うつもりなら、私はおそらく次のようなことをするでしょう:

<a href="getResource.php?res=video1.mpg&type=video">Video 1</a>

PHPでは、セッションからリソース、タイプ、およびユーザーIDを取得し、それらをデータベースに入れてから、探していたリソースを取得するだけでした。彼らがビデオを最後まで見たかどうかを追跡するには、JavaScriptを使用してプレーヤーが終了するイベントを監視し、スクラブバーのないスキンを使用することができます。

于 2012-04-17T23:05:53.997 に答える
3

たとえば、テーブル「users: id, name, etc...」とテーブル「clicks: user_id, url」が必要です。

リンクのクリックを追跡するには、次のようにします。

<a hreF="log_click.php?url=<?php echo urlencode("some_url?some=param&etc=anything"); ?>">

log_click.php

<?php
$url = $_GET['url'];
$user = /* ie. $_SESSION['user_id'] */
/* insert to database */
header('Location: '. $url); // maybe need urldecode($url) here
exit;
?>
于 2012-04-17T21:44:22.523 に答える
0

興味深いプロジェクト。現在アクセスしているページからユーザーを抽出し、ユーザーごとにアクセスしたページのログ (データベース内) に保存する必要があります。

于 2012-04-17T21:46:05.237 に答える