Go Premium for a chance to win a PS4. Enter to Win

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 174
  • Last Modified:

Server Ressource!

Here is the situation:

I made an affiliate program for a search engine.
it logs each searches, all click on the results. We now need a fraud prevention system. I want to log only click that have been made for a given keyword only once per 24h period as well as all clicks within a resonable time (let's say 1 min between each click). So as an exemple,
if a user would search for 'casino' and clicks 2 results then get out of the site.. and come back a few hours later and again, search for 'casino' and clicks 3 other results, none of the 3 clicks would have been recorded, but the first 2 would have been recorded. follow me?!

So I guess I need to use session to do that, along with IP/Cookie.. correct? we got about 100k searches done per day.. so it logs 100k searches, 40k clicks, queries the data base to get some info of the affiliates to put in the DB along with the logging of the searches/clicks .. so that's a hell of a lot stuff being stored into the DB.

My question, what would be the best way to put a fraud protection as mentionned above? Session?
if so.. can you provide me with the basement of such a class? Thanks!
0
nfuids
Asked:
nfuids
1 Solution
 
us111Commented:
very small base:)

if ($PHPSESSID)
   session_start($PHPSESSID);
else
   session_start();

0
 
higijjCommented:
but will this take a lot of ressource if I got 100k searches a day?
0
 
higijjCommented:
I would rather suggest you go with logging the IP/Time in the DB and check it out along with cookie.

so in a first step, I would check for cookie, if there.. no need to queries the DB, if not, query the DB to make sure the user didn't just delete the cookie.

0
Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

 
MoondancerCommented:
It's time to clean up this topic area and that means taking care of this question. Your options at this point are:

1. Award points to the Expert who provided an answer, or who helped you most. Do this by clicking on the "Accept Comment as Answer" button that lies above and to the right of the appropriate expert's name.

2. PAQ the question because the information might be useful to others, but was not useful to you. To use this option, you must state why the question is no longer useful to you, and the experts need to let me know if they feel that you're being unfair.

3.  Ask Community Support to help split points between participating experts.  Just comment here with details.

4.  Delete the question because it is of no value to you or to anyone else.  To use this option, you must state why the question is no longer useful to you, and the experts need to let me know if they feel that you're being unfair.

If you elect for option 2, 3 or 4, just post comment with details here and I'll take it from there.  We also request that you review any other open questions you might have and update/close them.  Display all your question history from your Member Profile to view details.

PLEASE DO NOT AWARD THE POINTS TO ME.

____________________________________________



Hi Experts:

In the event that the Asker does not respond, I would very much appreciate your opinions as to which Expert ought to receive points (if any) as a result of this question.  Likewise, you can also suggest that I PAQ or delete the question.

Experts, please do not add further "answer" information to this question.  I will be back in about one week to finalize this question.

Thank you everyone.

Moondancer :)
Community Support Moderator @ Experts Exchange

P.S.  REGARDING POINTS, Guidelines and more:  http://www.experts-exchange.com/jsp/cmtyHelpDesk.jsp  
0
 
andrivCommented:
In the attempt to help clean up abandoned Questions, I will ask Community Support to close this Question. Unless there is objection or further activity, I will suggest to split points between us111 & higijj comment(s) as an answer as soon as possible.

If you think your question was not answered at all, you can post a request in Community support (please
include this link) to refund your points.
The link to the Community Support area is: http://www.experts-exchange.com/jsp/qList.jsp?ta=commspt

Please do not accept this comment as an answer!

Andriv
0
 
MoondancerCommented:
Thanks, Andriv.

Points have been split.  The other half awaits comments here, this TA.
Points for higijj -> http://www.experts-exchange.com/jsp/qShow.jsp?qid=20286752

Moondancer - EE Moderator
0

Featured Post

What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now