0

古いLedAdsphpスクリプト(http://www.ledscripts.com/)をインストールして、自分のサイトで単純な広告ローテーターを実行しましたが、これらは非常にうまく機能します。Google検索のおかげで、コードの問題を解決してログインできなくなりました...しかし、これは見つかりません。

広告が表示されます。クリックが機能します。ローテーターはランダムなことをします。すべてがうまく機能します。

しかし、舞台裏では、統計には広告ごとに1回のインプレッションまたはクリックが表示され、それ以上は表示されません。クリックがあれば印象はありません。印象があればクリックはありません。

データベースには、pla_ads(aid、type、did、active、datetime)、pla_images(画像URL、リンクURL、代替テキスト、サイズ)、pla_richtext(素敵でシンプルな画像+ URL形式に適合しない広告html用)、およびpla_impressions(aid、impdate、displays、clicks)。最後は明らかに成長しているはずのものです。

スクリプトがインストールされると、テーブルが作成されます。

CREATE TABLE {prefix} _impressions(aid int(10)unsigned NOT NULL default '0'、impdate date NOT NULL default '0000-00-00'、表示bigint(20)unsigned NOT NULL default '0'、クリックint(11 )NOTNULLデフォルト'0'、PRIMARY KEY(aid、impdate))TYPE = MyISAM;

ビジネスを行うphpはここにあります(簡単にするためにテキストとして保存されています):http ://www.oddjotter.com/ad_class.txt

インプレッションテーブルの値を手動で編集して、1つの広告のインプレッションを古くしました(前日)。数回サイトにアクセスした後、その広告をヒットしました。統計には2インプレッションと表示されていますが、今日はそれ以上のインプレッションはカウントされません。

コードが1日に1回のヒット(またはクリック)しか記録しない理由を誰かが理解できれば、私は最も感謝しています!

4

1 に答える 1

0

問題は、where (impdate = now()) and (aid = $key)という式です。問題を引き起こすのは now() 関数です。date(now())に変更しました( 2 つまたは 3 つのオカレンスがあります)。正常に動作します。

于 2013-02-14T13:07:01.373 に答える