SchweppesAle Posted December 30, 2009 Share Posted December 30, 2009 Hi, I've never done this using MYSQL before so bare with me I have the following simple query. $query = "UPDATE #__jt_banners SET impressions = impressions + 1 WHERE id = '$id'"; It tallies each visiting user as an impression, however i need to first compare his/her "user agent" against a database of known search engine bots, etc. In addition, I have a separate table which stores C class IP Addresses in the following format "72.14.199" Returning the IP address and User agent is simple enough through PHP. How can I then rewrite the query so that it first checks to make sure that these values don't match any within our database. structure: jos_jt_userAgents: int "id" text "user_agent" text "description" text "link" jos_jt_ip_addresses int "id" var_char(45) "search_engine" var_char(45) "ip_address" text "description" jos_jt_banners int "impressions" bllahblahablahlah Quote Link to comment https://forums.phpfreaks.com/topic/186746-mysql-regex-update-if-not-exist/ Share on other sites More sharing options...
SchweppesAle Posted December 30, 2009 Author Share Posted December 30, 2009 ok, i tried the following. It doesn't seem to be incrementing the impressions column at all though. Am I at least on the right track? $user_agent = $_SERVER['HTTP_USER_AGENT']; /* $query = "UPDATE #__jt_banners SET impressions = impressions + 1 WHERE id = '$id'";*/ $query = "SELECT #__jt_banners.impressions , #__jt_banners.id , #__jt_userAgents.id AS uid , #__jt_userAgents.user_agent FROM #__jt_banners, #__jt_userAgents UPDATE #__jt_banners SET impressions = impressions + 1 WHERE (id = '$id' AND (user_agent LIKE '$user_agent' = NULL))"; Quote Link to comment https://forums.phpfreaks.com/topic/186746-mysql-regex-update-if-not-exist/#findComment-986172 Share on other sites More sharing options...
SchweppesAle Posted December 30, 2009 Author Share Posted December 30, 2009 this one increments the impression column even after I add my browser's user agent to the table $query = "UPDATE #__jt_banners, #__jt_userAgents SET #__jt_banners.impressions = #__jt_banners.impressions + 1 WHERE (#__jt_banners.id = '$id' AND (#__jt_userAgents.user_agent NOT LIKE '$user_agent'))"; Quote Link to comment https://forums.phpfreaks.com/topic/186746-mysql-regex-update-if-not-exist/#findComment-986176 Share on other sites More sharing options...
fenway Posted January 3, 2010 Share Posted January 3, 2010 That's not plain mysql -- I have no idea what those are. Quote Link to comment https://forums.phpfreaks.com/topic/186746-mysql-regex-update-if-not-exist/#findComment-987743 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.