lathee

Greenhorn
+ Follow
since Jul 10, 2005
Merit badge: grant badges
For More
Cows and Likes
Cows
Total received
0
In last 30 days
0
Total given
0
Likes
Total received
0
Received in last 30 days
0
Total given
0
Given in last 30 days
0
Forums and Threads
Scavenger Hunt
expand Ranch Hand Scavenger Hunt
expand Greenhorn Scavenger Hunt

Recent posts by lathee

Hi everyone, this is my first post.
I run a website with Google adsense. I recently made this little script, out of tutorial to track google ads.

this how the code looks like.

// javascript code after the adsense code


& lt;script type="text/javascript">
& lt;!--
function adsense_log_click()
{
if(window.status.indexOf('go to') == 0)
{
adsense_log_url_image = new Image();
adsense_log_url_image.src = 'http://www.mysite.com/track.php?R=' +
escape(document.location) + '&U=' +
escape(window.status.substring(6));
}
}
var elements;
if(document.getElementsByTagName) {
elements = document.body.getElementsByTagName("IFRAME");
} else if (document.body.all) {
elements = document.body.all.tags("IFRAME");
} else {
elements = Array();
}
for(var i = 0; i & lt; elements.length; i++) {
if(elements[i].src.indexOf('googlesyndication.com') > -1) {
elements[i].onfocus = adsense_log_click;
}
}

//-->
& lt;/script>



and this is the code for track.php


& lt;?php
// These are the parameters for connecting to the database.
define ("SITE_DATABASE_HOSTNAME", "localhost");
define ("SITE_DATABASE_PASSWORD", "password");
define ("SITE_DATABASE_USERNAME", "username");
define ("SITE_DATABASE_DATABASE", "dbname");

if(isset($_GET['U'])) {
$DestinationPage = mysql_escape_string(substr(trim($_GET['U']),0,255));
} else {
$DestinationPage = "";
}
if(isset($_GET['R'])) {
$SourcePage = mysql_escape_string(substr(trim($_GET['R']),0,255));
} else {
$SourcePage = "";
}
if($DestinationPage!= "" && $SourcePage!= "")
{
$RemoteAddress = mysql_escape_string(substr(trim($_SERVER['REMOTE_ADDR']),0,255));
$RemoteHost = mysql_escape_string(substr(trim($_SERVER['REMOTE_HOST']),0,255));

$query = "INSERT INTO tblAdsenseClicks ".
" (ClickDate,DestinationPage,SourcePage,RemoteAddress,RemoteHost) ".
" VALUES (".
" '".date("Y-m-d H:i:s")."',".
" '".$DestinationPage."',".
" '".$SourcePage."',".
" '".$RemoteAddress."',".
" '".$RemoteHost."')";

run_query($query);
exit();
}

// Show the statistics page if the U and R variables are not given
?>
& lt;html>& lt;head>& lt;title>Adsense click stats& lt;/title>
& lt;style type="text/css">
table.clickstats {
border-collapse: collapse;
}
table.clickstats th {
color: white;
background-color: #000080;
border: 1px solid #999999;
padding: 3px;
}
table.clickstats td {
border: 1px solid #999999;
text-align: center;
}
& lt;/style>
& lt;/head>
& lt;body>& lt;?php

$query = "SELECT ClickDate,DestinationPage,SourcePage,RemoteAddress,RemoteHost ".
" FROM tblAdsenseClicks ORDER BY ClickDate ";
print_query($query,"clickstats");
print "& lt;/body>& lt;/html>";

// Connects to the site defined database and returns the connection handle.
// Uses a persistent connection and does error checking.
function connect_to_site_database()
{
// Connect to the mysql server
$link = mysql_pconnect(constant("SITE_DATABASE_HOSTNAME"),
constant("SITE_DATABASE_USERNAME"),
constant("SITE_DATABASE_PASSWORD")) or
die("Unable to connect to site database!");

// Select the database
mysql_select_db(constant("SITE_DATABASE_DATABASE"))
or die("Unable to select database: ".constant("SITE_DATABASE_DATABASE"));

return $link;
}

// Standard function to run a query, with error checking.
// Returns the resultset.
function run_query($query)
{
// Connect to the database
connect_to_site_database();

// Run the query
$result = mysql_query ($query) or die ("Invalid query: $query");

// Return the result set
return $result;
}

// prints the query results in a table with the given table style class
function print_query($query, $table_class)
{
connect_to_site_database();

// Select all the records from the addressbook and store them in $result
$result = mysql_query ($query) or die ("Invalid query: $query");

// Get the number of columns (or fields) in the results
$num_fields = mysql_num_fields ($result);

// Get the number of rows in the results
$num_rows = mysql_num_rows ($result);

// Start printing the table to show all the records
echo "& lt;table class=\"$table_class\">\n";
echo "& lt;tr>";

// Print out all the field names as the first row table header
$i=0;
while ($i & lt; $num_fields) {
// Get the field name from the result
$fname = mysql_field_name ($result, $i);
echo "& lt;th>".$fname."& lt;/th>";
$i=$i+1;
}
echo "& lt;/tr>\n";

// Now print out all the data
while ($row = mysql_fetch_row ($result)) {
echo "& lt;tr>";
$k=0;
while ($k & lt; $num_fields) {
echo "& lt;td>".$row[$k]."& lt;/td>\n";
$k=$k+1;
}
echo "& lt;/tr>\n";
}
echo "& lt;/table>\n";

// Do a little clean up
mysql_free_result($result);

}
?>



the above code is working fine. this is how it looks like when its working:

http://img79.imageshack.us/img79/5032/screenshot17rl.jpg

What i really want to do is add a lil feature. It is to, capture the members name who is logged in and username is stored in cookie and also count how many ads he clicked on and send the information to my database, just like how the above code sent information about the
Google ads to my database.

if you are unsure what i am asking for, take a look at this picture i made in paint (visual representation of my idea)

http://img79.imageshack.us/img79/7562/screenshot22vt.jpg

Thank you,

Regards,
Latheesan

[Bear edit: reduced shouting in subject]
[ July 10, 2005: Message edited by: Bear Bibeault ]