2017-05-22 13 views
-1

私は、SQLデータベースを使用するphp/htmlラジオポータルサイトテンプレートを持っています。シングルページヒットカウンタPHP SQL

チャネルはデータベースから動的に生成されます。スクリプトの作者が追加することを忘れたことの1つは、各チャンネルのヒットカウンターでした。 私は自分のデータベースのcounterという名前のチャンネルテーブルに行を追加しました。

編集しようと私のデータベースフィールドイムの構造がある

データベースの「ライブ」 表「チャンネル」 行「カウンター」私は広告に次のヒットカウンタを使用していた

チャンネルページ。

私のチャンネルテーブルのa行のチャンネルIDを使用してページが生成されるため、カウンタを作成するのが難しいと感じました。

上記のスクリプトをテストするために別のファイルで編集する前に私は上記のスクリプトを使用しましたが、うまくいきました。デモデータベースの構造がはるかに単純だったのでうまくいきました。

ここで私はそれを虐殺する前に動作するデモスクリプトです。

<?php 
    // Connects to your Database 
    mysql_connect("your.hostaddress.com", "username", "password") or 
    die(mysql_error()); 
     mysql_select_db("Database_Name") or die(mysql_error()); 
     //Adds one to the counter 

    mysql_query("UPDATE counter SET counter = counter + 1"); 

    //Retrieves the current count 

    $count = mysql_fetch_row(mysql_query("SELECT counter FROM counter")); 

    //Displays the count on your site 

    print "$count[0]"; 

    ?> 

デモスクリプトをデータベース構造と一緒に使用するにはどうすればいいのでしょうか。

おかげ Here is a pic of my database structure

+0

incompatibe(MS)SQLサーバタグ – Jens

+0

廃止された 'mysql_ *'関数の使用をやめる必要があります。 'mysqli_ *'または好ましくはPDOSのプリペイドド・ステートメント – FMashiro

+0

** STOP **に移行してください。廃止予定の 'mysql_ *' APIを使用してください。 'mysqli_ *'や 'PDO'を使う – Jens

答えて

0

順序が間違っています。まず、SETsを設定します。あなたはWHEREsです。前述のようにmysql()を使用しないでください。

UPDATE counter SET counter = counter + 1 WHERE channel_id = $chnid