私がウェブサイトに実装しようとしている簡単なスクリプトで、最も訪問されたページを数え、上位10のリストを出力として表示します。まだアマチュアである(php / mysqlで)コードが実行されるときにフィールドに適切なデータが入力されない理由がわかりません。
コードは次のとおりです。
$pagename = $_SERVER['PHP_SELF'];
$sql = "UPDATED visits SET hits=hits+1 WHERE pagename='$pagename' LIMIT 1";
$res = mysql_query($sql);
if(!$res) {
}
エラー処理ではエラーは表示されませんが、テーブルは空のままです。私は何が欠けていますか?(私はmysqlのrootユーザーとしてセッションを開始することでこれを実行しようとしているので、すべての特権が存在し、フィールド:pagename、hitsを作成しました。)私は他のコードを使おうとしました:
*$sql = "CREATE TABLE 'yourDatabaseName'.'count' ('id' INT NOT NULL AUTO_INCREMENT PRIMARY KEY, 'count' INT NOT NULL, 'page_id' INT NOT NULL) ENGINE = MyISAM;";
mysql_query($sql) or die('<p>Error, the count table was not created.</p>');
$query = "INSERT INTO count (page_id) VALUE ('$thePageID')";
mysql_query($query) or die('<p>Error, the Page ID was not entered into the table field.</p>');
$data = mysql_query("SELECT * FROM count WHERE page_id='$thePageID'")
or die(mysql_error('Could not find the page id in the count table.'));
while($info = mysql_fetch_array( $data ))
{
$count=$info['id'];
$count = $count + 1;
}
$querytwo = "UPDATE 'count' SET 'count' = '$count' WHERE 'page_id' ='$thePageID'";
mysql_query($querytwo) or die('Error, the count was not updated');*
そして、page_id / idフィールドは更新されますが、「カウント」フィールドは更新されません(この場合、エラー処理はエラーを返します)。これらの2つのスクリプトで基本的に同じ問題であるため、ここでは単純なものが欠落していると確信しています。