plugins/conversions/API/plugins conversions.php,1.2,1.3
Sebastian Bergmann <[email protected]> Sat, 15 May 2004 09:30:07 +0000
| Newsgroups | gmane.comp.web.phpopentracker.cvs |
|---|---|
| Message-ID | <[email protected]> |
Update of /cvsroot/phpopencounter/plugins/conversions/API/plugins
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv5711/API/plugins
Modified Files:
conversions.php
Log Message:
Flush.
Index: conversions.php
===================================================================
RCS file: /cvsroot/phpopencounter/plugins/conversions/API/plugins/conversions.php,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- conversions.php 20 Apr 2004 14:25:14 -0000 1.2
+++ conversions.php 15 May 2004 09:30:05 -0000 1.3
@@ -70,7 +70,7 @@
return $this->_conversions($parameters);
}
break;
-
+
case 'conversions_by_source': {
return $this->_conversionsBySource($parameters);
}
@@ -79,7 +79,7 @@
}
/**
- * Returns the number of visitors who have made a conversion (placed an order or
+ * Returns the number of visitors who have made a conversion (placed an order or
* inquiry or signed up for something).
*
* @param array $parameters
@@ -114,7 +114,7 @@
}
/**
- * Returns detailed information about the visitors who have made a conversion
+ * Returns detailed information about the visitors who have made a conversion
* (placed an order or inquiry or signed up for something).
*
* @param array $parameters
@@ -139,7 +139,7 @@
$accesslogIDs = array();
- // get a list of all accesslogIDs where there was a conversion
+ // get a list of all accesslogIDs where there was a conversion
$this->db->query(
sprintf(
"SELECT DISTINCT(accesslog.accesslog_id) AS accesslog_id
@@ -160,10 +160,10 @@
$accesslogIDs[] = $row['accesslog_id'];
}
- // for each conversion, get details
+ // for each conversion, get details
for ($i = 0, $max = sizeof($accesslogIDs); $i < $max; $i++) {
- // get the clickpaths for each conversion
+ // get the clickpaths for each conversion
switch ($parameters['result_format']) {
case 'xml':
case 'xml_object': {
@@ -193,7 +193,7 @@
}
}
- // get time of last access
+ // get time of last access
$this->db->query(
sprintf(
"SELECT MAX(timestamp) as last_access
@@ -222,8 +222,8 @@
'Database query failed. A'
);
}
-
- // get host and user agent
+
+ // get host and user agent
$this->db->query(
sprintf(
"SELECT hosts.string AS host,
@@ -262,11 +262,11 @@
);
}
- // to determine source, first look for a record of
- // the use of a search engine on the first visit,
- // then a referrer on the first visit, then
- // the use of a search engine on the most recent visit,
- // then a referrer on the most recent visit
+ // to determine source, first look for a record of
+ // the use of a search engine on the first visit,
+ // then a referrer on the first visit, then
+ // the use of a search engine on the most recent visit,
+ // then a referrer on the most recent visit
// get visitor_id and number of visits
$this->db->query(
@@ -279,13 +279,13 @@
$accesslogIDs[$i]
)
);
-
- if ($row = $this->db->fetchRow()) {
- $visitor_id = intval($row['visitor_id']);
- } else {
- $visitor_id = 0;
- }
-
+
+ if ($row = $this->db->fetchRow()) {
+ $visitor_id = intval($row['visitor_id']);
+ } else {
+ $visitor_id = 0;
+ }
+
$this->db->query(
sprintf(
"SELECT COUNT(visitors.visitor_id) AS num_visits
@@ -314,15 +314,15 @@
$result[$i]['num_visits'] = $num_visits;
}
} // end query for visitor_id and number of visits
-
+
// get accesslog_id of first visit
$this->db->query(
sprintf(
"SELECT visitors.accesslog_id AS first_access
FROM %s visitors
- WHERE visitors.visitor_id = '%d'
- ORDER BY visitors.timestamp",
-
+ WHERE visitors.visitor_id = '%d'
+ ORDER BY visitors.timestamp",
+
$this->config['visitors_table'],
$visitor_id
)
@@ -330,95 +330,95 @@
if ($row = $this->db->fetchRow()) {
$first_access = $row['first_access'];
} // end query for accesslog_id of first visit
-
-
- // get first search engine and search engine keywords
- if ($num_visits > 1) {
- $this->db->query(
- sprintf(
- "SELECT search_engines.search_engine AS search_engine,
- search_engines.keywords AS keywords
- FROM %s search_engines
- WHERE search_engines.accesslog_id = '%d'",
- 'pot_search_engines',
- $first_access
- )
- );
- if ($row = $this->db->fetchRow()) {
- $source = $row['search_engine'].': "'.$row['keywords'].'"';
- }
+
+
+ // get first search engine and search engine keywords
+ if ($num_visits > 1) {
+ $this->db->query(
+ sprintf(
+ "SELECT search_engines.search_engine AS search_engine,
+ search_engines.keywords AS keywords
+ FROM %s search_engines
+ WHERE search_engines.accesslog_id = '%d'",
+ 'pot_search_engines',
+ $first_access
+ )
+ );
+ if ($row = $this->db->fetchRow()) {
+ $source = $row['search_engine'].': "'.$row['keywords'].'"';
+ }
} // end query for first search engine and search engine keywords
-
+
// get first referrer
if (!isset($source)) {
- if ($num_visits > 1) {
- $this->db->query(
- sprintf(
- "SELECT referers.string AS first_referer
- FROM %s visitors,
- %s referers
- WHERE visitors.accesslog_id = '%d'
- AND visitors.referer_id = referers.data_id
- ORDER BY visitors.timestamp",
-
- $this->config['visitors_table'],
- $this->config['referers_table'],
- $first_access
- )
- );
-
- if ($row = $this->db->fetchRow()) {
- $source = $row['first_referer'];
- }
- }
- } // end query for first referrer
-
- // get most recent search engine and search engine keywords
- if (!isset($source)) {
- $this->db->query(
- sprintf(
- "SELECT search_engines.search_engine AS search_engine,
- search_engines.keywords AS keywords
- FROM %s search_engines,
- %s visitors
- WHERE visitors.visitor_id = '%d'
- AND visitors.accesslog_id = search_engines.accesslog_id
- ORDER BY visitors.timestamp",
-
- 'pot_search_engines',
- $this->config['visitors_table'],
- $visitor_id
- )
- );
- if ($row = $this->db->fetchRow()) {
- $source = $row['search_engine'].': "'.$row['keywords'].'"';
- }
+ if ($num_visits > 1) {
+ $this->db->query(
+ sprintf(
+ "SELECT referers.string AS first_referer
+ FROM %s visitors,
+ %s referers
+ WHERE visitors.accesslog_id = '%d'
+ AND visitors.referer_id = referers.data_id
+ ORDER BY visitors.timestamp",
+
+ $this->config['visitors_table'],
+ $this->config['referers_table'],
+ $first_access
+ )
+ );
+
+ if ($row = $this->db->fetchRow()) {
+ $source = $row['first_referer'];
+ }
+ }
+ } // end query for first referrer
+
+ // get most recent search engine and search engine keywords
+ if (!isset($source)) {
+ $this->db->query(
+ sprintf(
+ "SELECT search_engines.search_engine AS search_engine,
+ search_engines.keywords AS keywords
+ FROM %s search_engines,
+ %s visitors
+ WHERE visitors.visitor_id = '%d'
+ AND visitors.accesslog_id = search_engines.accesslog_id
+ ORDER BY visitors.timestamp",
+
+ 'pot_search_engines',
+ $this->config['visitors_table'],
+ $visitor_id
+ )
+ );
+ if ($row = $this->db->fetchRow()) {
+ $source = $row['search_engine'].': "'.$row['keywords'].'"';
+ }
} // end query for most recent search engines and search engine keywords
- // get most recent referrer
- if (!isset($source)) {
- $this->db->query(
- sprintf(
- "SELECT referers.string AS referer
- FROM %s visitors,
- %s referers
- WHERE visitors.accesslog_id = '%d'
- AND visitors.referer_id = referers.data_id",
-
- $this->config['visitors_table'],
- $this->config['referers_table'],
- $accesslogIDs[$i]
- )
- );
- if ($row = $this->db->fetchRow()) {
- $source = $row['referer'];
- } else {
- $source = '';
- }
- } // end query for most recent referrer
+ // get most recent referrer
+ if (!isset($source)) {
+ $this->db->query(
+ sprintf(
+ "SELECT referers.string AS referer
+ FROM %s visitors,
+ %s referers
+ WHERE visitors.accesslog_id = '%d'
+ AND visitors.referer_id = referers.data_id",
- // store source as a result
+ $this->config['visitors_table'],
+ $this->config['referers_table'],
+ $accesslogIDs[$i]
+ )
+ );
+ if ($row = $this->db->fetchRow()) {
+ $source = $row['referer'];
+ } else {
+ $source = '';
+ }
+ } // end query for most recent referrer
+
+ // store source as a result
switch ($parameters['result_format']) {
case 'xml':
case 'xml_object': {
@@ -431,17 +431,17 @@
}
} // done storing source
unset($source);
-
- // query for conversions type, amount, and details
- $this->db->query(
+
+ // query for conversions type, amount, and details
+ $this->db->query(
sprintf(
- "SELECT conversions.sale AS sale,
- conversions.inquiry AS inquiry,
- conversions.signup AS signup,
- conversions.email AS email,
- conversions.zip AS zip,
- conversions.country AS country,
- conversions.name AS name
+ "SELECT conversions.sale AS sale,
+ conversions.inquiry AS inquiry,
+ conversions.signup AS signup,
+ conversions.email AS email,
+ conversions.zip AS zip,
+ conversions.country AS country,
+ conversions.name AS name
FROM %s conversions,
%s visitors
WHERE visitors.accesslog_id = '%d'
@@ -465,7 +465,7 @@
$sale = '';
$inquiry = '';
$signup = '';
- $email = '';
+ $email = '';
$zip = '';
$country = '';
$name = '';
@@ -495,8 +495,8 @@
}
} // end query for conversions type, amount, etc.
} // end loop
-
- // return results
+
+ // return results
switch ($parameters['result_format']) {
case 'xml': {
return $root->get();
@@ -513,7 +513,7 @@
}
}
} // end _conversions
-
+
/**
* Shows the value amd number of conversions aggregated by source.
*
@@ -523,12 +523,12 @@
* @since phpOpenTracker 1.3.0
*/
function _conversionsBySource($parameters) {
-
- $timerange = $this->_whereTimerange(
+
+ $timerange = $this->_whereTimerange(
$parameters['start'],
$parameters['end']
);
-
+
switch ($parameters['result_format']) {
case 'xml':
case 'xml_object': {
@@ -545,7 +545,7 @@
$accesslogIDs = array();
- // get a list of all accesslogIDs where there was a conversion
+ // get a list of all accesslogIDs where there was a conversion
$this->db->query(
sprintf(
"SELECT DISTINCT(accesslog.accesslog_id) AS accesslog_id
@@ -564,16 +564,16 @@
while ($row = $this->db->fetchRow()) {
$accesslogIDs[] = $row['accesslog_id'];
- }
+ }
- // for each conversion, get details
+ // for each conversion, get details
for ($i = 0, $max = sizeof($accesslogIDs); $i < $max; $i++) {
- unset($source);
- // to determine source, first look for a record of
- // the use of a search engine on the first visit,
- // then a referrer on the first visit, then
- // the use of a search engine on the most recent visit,
- // then a referrer on the most recent visit
+ unset($source);
+ // to determine source, first look for a record of
+ // the use of a search engine on the first visit,
+ // then a referrer on the first visit, then
+ // the use of a search engine on the most recent visit,
+ // then a referrer on the most recent visit
// get visitor_id and number of visits
$this->db->query(
@@ -586,13 +586,13 @@
$accesslogIDs[$i]
)
);
-
- if ($row = $this->db->fetchRow()) {
- $visitor_id = intval($row['visitor_id']);
- } else {
- $visitor_id = 0;
- }
-
+
+ if ($row = $this->db->fetchRow()) {
+ $visitor_id = intval($row['visitor_id']);
+ } else {
+ $visitor_id = 0;
+ }
+
$this->db->query(
sprintf(
"SELECT COUNT(visitors.visitor_id) AS num_visits
@@ -609,15 +609,15 @@
} else {
$num_visits = 0;
} // end query for visitor_id and number of visits
-
+
// get accesslog_id of first visit
$this->db->query(
sprintf(
"SELECT visitors.accesslog_id AS first_access
FROM %s visitors
- WHERE visitors.visitor_id = '%d'
- ORDER BY visitors.timestamp",
-
+ WHERE visitors.visitor_id = '%d'
+ ORDER BY visitors.timestamp",
+
$this->config['visitors_table'],
$visitor_id
)
@@ -625,95 +625,95 @@
if ($row = $this->db->fetchRow()) {
$first_access = $row['first_access'];
} // end query for accesslog_id of first visit
-
-
- // get first search engine and search engine keywords
- if ($num_visits > 1) {
- $this->db->query(
- sprintf(
- "SELECT search_engines.search_engine AS search_engine,
- search_engines.keywords AS keywords
- FROM %s search_engines
- WHERE search_engines.accesslog_id = '%d'",
- 'pot_search_engines',
- $first_access
- )
- );
- if ($row = $this->db->fetchRow()) {
- $source = $row['search_engine'].': "'.$row['keywords'].'"';
- }
+
+
+ // get first search engine and search engine keywords
+ if ($num_visits > 1) {
+ $this->db->query(
+ sprintf(
+ "SELECT search_engines.search_engine AS search_engine,
+ search_engines.keywords AS keywords
+ FROM %s search_engines
+ WHERE search_engines.accesslog_id = '%d'",
+ 'pot_search_engines',
+ $first_access
+ )
+ );
+ if ($row = $this->db->fetchRow()) {
+ $source = $row['search_engine'].': "'.$row['keywords'].'"';
+ }
} // end query for first search engine and search engine keywords
-
+
// get first referrer
if (!isset($source)) {
- if ($num_visits > 1) {
- $this->db->query(
- sprintf(
- "SELECT referers.string AS first_referer
- FROM %s visitors,
- %s referers
- WHERE visitors.accesslog_id = '%d'
- AND visitors.referer_id = referers.data_id
- ORDER BY visitors.timestamp",
-
- $this->config['visitors_table'],
- $this->config['referers_table'],
- $first_access
- )
- );
-
- if ($row = $this->db->fetchRow()) {
- $source = $row['first_referer'];
- }
- }
- } // end query for first referrer
-
- // get most recent search engine and search engine keywords
- if (!isset($source)) {
- $this->db->query(
- sprintf(
- "SELECT search_engines.search_engine AS search_engine,
- search_engines.keywords AS keywords
- FROM %s search_engines,
- %s visitors
- WHERE visitors.visitor_id = '%d'
- AND visitors.accesslog_id = search_engines.accesslog_id
- ORDER BY visitors.timestamp",
-
- 'pot_search_engines',
- $this->config['visitors_table'],
- $visitor_id
- )
- );
- if ($row = $this->db->fetchRow()) {
- $source = $row['search_engine'].': "'.$row['keywords'].'"';
- }
+ if ($num_visits > 1) {
+ $this->db->query(
+ sprintf(
+ "SELECT referers.string AS first_referer
+ FROM %s visitors,
+ %s referers
+ WHERE visitors.accesslog_id = '%d'
+ AND visitors.referer_id = referers.data_id
+ ORDER BY visitors.timestamp",
+
+ $this->config['visitors_table'],
+ $this->config['referers_table'],
+ $first_access
+ )
+ );
+
+ if ($row = $this->db->fetchRow()) {
+ $source = $row['first_referer'];
+ }
+ }
+ } // end query for first referrer
+
+ // get most recent search engine and search engine keywords
+ if (!isset($source)) {
+ $this->db->query(
+ sprintf(
+ "SELECT search_engines.search_engine AS search_engine,
+ search_engines.keywords AS keywords
+ FROM %s search_engines,
+ %s visitors
+ WHERE visitors.visitor_id = '%d'
+ AND visitors.accesslog_id = search_engines.accesslog_id
+ ORDER BY visitors.timestamp",
+
+ 'pot_search_engines',
+ $this->config['visitors_table'],
+ $visitor_id
+ )
+ );
+ if ($row = $this->db->fetchRow()) {
+ $source = $row['search_engine'].': "'.$row['keywords'].'"';
+ }
} // end query for most recent search engines and search engine keywords
- // get most recent referrer
- if (!isset($source)) {
- $this->db->query(
- sprintf(
- "SELECT referers.string AS referer
- FROM %s visitors,
- %s referers
- WHERE visitors.accesslog_id = '%d'
- AND visitors.referer_id = referers.data_id",
-
- $this->config['visitors_table'],
- $this->config['referers_table'],
- $accesslogIDs[$i]
- )
- );
- if ($row = $this->db->fetchRow()) {
- $source = $row['referer'];
- } else {
- $source = 'unknown';
- }
- } // end query for most recent referrer
+ // get most recent referrer
+ if (!isset($source)) {
+ $this->db->query(
+ sprintf(
+ "SELECT referers.string AS referer
+ FROM %s visitors,
+ %s referers
+ WHERE visitors.accesslog_id = '%d'
+ AND visitors.referer_id = referers.data_id",
- // store source as a result
+ $this->config['visitors_table'],
+ $this->config['referers_table'],
+ $accesslogIDs[$i]
+ )
+ );
+ if ($row = $this->db->fetchRow()) {
+ $source = $row['referer'];
+ } else {
+ $source = 'unknown';
+ }
+ } // end query for most recent referrer
+
+ // store source as a result
switch ($parameters['result_format']) {
case 'xml':
case 'xml_object': {
@@ -726,13 +726,13 @@
}
} // done storing source
-
- // query for conversions type, amount, and details
- $this->db->query(
+
+ // query for conversions type, amount, and details
+ $this->db->query(
sprintf(
- "SELECT conversions.sale AS sale,
- conversions.inquiry AS inquiry,
- conversions.signup AS signup
+ "SELECT conversions.sale AS sale,
+ conversions.inquiry AS inquiry,
+ conversions.signup AS signup
FROM %s conversions,
%s visitors
WHERE visitors.accesslog_id = '%d'
@@ -753,7 +753,7 @@
$inquiry = '';
$signup = '';
}
-
+
switch ($parameters['result_format']) {
case 'xml':
@@ -767,12 +767,12 @@
$result[$source]['inquiry'] = $result[$source]['inquiry'] + $inquiry;
$result[$source]['signup'] = $result[$source]['signup'] + $signup;
}
- }
+ }
// end query for conversions type, amount, etc.
-
+
} // end loop
-
- // return results
+
+ // return results
switch ($parameters['result_format']) {
case 'xml': {
return $root->get();
@@ -787,7 +787,7 @@
default: {
return $result;
}
- }
+ }
} // end _conversionsBySource
} // end class
-------------------------------------------------------
This SF.Net email is sponsored by: SourceForge.net Broadband
Sign-up now for SourceForge Broadband and get the fastest
6.0/768 connection for only $19.95/mo for the first 3 months!
http://ads.osdn.com/?ad_id=2562&alloc_id=6184&op=click