私たちのランディングページにヒットしたときに、データベース内の既知または未知のIPアドレスに対して正確なFLAGを与えるSQLクエリを作成しようとしています。私はこれを使用しますランディングページからIPを引き出し、既知のユーザーと比較する
// get the IP of the user on this landing page
$ip_address=$_SERVER['REMOTE_ADDR'];
echo $ip_address. ' ip address<br/>';
// see if we know this user..
$search_first="SELECT COUNT(DISTINCT(ip_address)) FROM `qb_sessions` WHERE `ip_address` = '$ip_address' ";
$has_ips = mysql_query($search_first);
$has_ip = mysql_num_rows($has_ips);
echo $has_ip. ' has IP<br/>'; // should show count in table
このスニペットを使用して私が必要とする結果は得られません。テーブルが空の場合(このIPには一致しません)、$ has_ipのエコーとして '1'が得られます。このIPがqb_sessions
表に以前に記録されていれば、本当に一致するものがない場合は「0」が必要で、「& gt 1」の場合は必要です。このスニペットの目的は、
は私がの様々な組み合わせを試してみましたなど、このランディングページに新しい、非登録のヒットを識別し、後でニュースレターに参加するように、別のページにリダイレクトするために、割引クーポンを取得することです( ')$ ip_address引用符をエスケープすることを含め、無駄にするSQL。
ご協力いただきありがとうございます。
、あなたは強く 'mysqli'または' PDO'機能への切り替えを検討する必要があります。http://php.net/manual/en/function.mysql-query.php( 'mysql_query'はされています非推奨です)。 – Optimae
皆さん、ありがとうございました!! ..はい、COUNT()はそれを投げていました。私はここを見直す前に考え出しました...(@Rajdeep Paul sidenoteに関して:...私は認識していますが、このサイトには現在何があるのですか...開発サーバーでは移行が進行中ですが、このアイテムは上司**に従ってすぐに生きていく必要があります。)_ –
@SteveK Please green * *受け入れ*質問を閉じるために答え、そうでなければこの質問は*オープン*質問としてSOの周りに浮かんでいます。 –