Originally Posted by
Woodymon
Indeed the Google Adwords referral URLs come from the catalog side. It could not be any other way. The Adwords referral URL strings I observe are always very lengthy. Not sure why MC believes otherwise.
I have to ask where in the "tracking" process does this mod "record" a "hit" (access request/attempt)?
Does every hit that appear in the user tracking database also appear in the server access log?
Please note, I did not indicate that the URI that is presented to UT is a surprise to be long. It is that UT is supposed to truncate that URI prior to storing it in the database. It is the storing routine (or lack of it successfully storing) that is causing blessisaacola the problem, because an apostrophe appears in the original uri that is not being escaped (assume because the original text length is greater than 254 characters and is only increased in the function that adds slashes (addslashes($stringtext)). That apostrophe is beyond the end of the 254 character limit imposed, and the string length being presented to the database was 400+ characters, when I thought it should be no more than 254.
Apparently I was wrong... The last_page_url is truncated, but the referrer url appears was not... *Head bowed in shame* It was when I went back to try to copy and paste the code in here, that I figured it out...
Towards the end of YOURSTORE/includes/functions/extra_functions/user_tracking.php
have the code look something like this:
Code:
/* Start - User tracking v1.4.3b modification*/
while (strpos(substr($page_desc, -1), '\\') !== false) {
$page_desc = substr($page_desc, 0, -1);
}
/* End - User tracking v1.4.3b modification*/
$wo_last_page_url = substr($wo_last_page_url, 0, 253);
/* Start - User tracking v1.4.3b modification*/
while (strpos(substr($wo_last_page_url, -1), '\\') !== false) {
$wo_last_page_url = substr($wo_last_page_url, 0, -1);
}
$referer_url = substr($referer_url, 0, 253);
while (strpos(substr($referer_url, -1), '\\') !== false) {
$referer_url = substr($referer_url, 0, -1);
}
/* End - User tracking v1.4.3b modification*/
In his case, I was trying to figure out why a string greater than 254 characters was being presented to the SQL when I thought there was a specific function present to prevent a string greater than 254 characters from being provided. (THERE WASN"T, BUT IT IS PROVIDED ABOVE)
In regards to the question of tracking process. It is after the footer has loaded, then the data is parsed, if it passes internal filters and checks of UT, then it is logged.
Regarding the comparison of UT database with the server access log: All successful loads of the footer that make it through the internal filters/checks and then are logged are expected to show up in the server access log, unless there has been some tom foolery that gave UT bad information (which in some cases is attempted).
A significant difference between the two is that the server access log will also more than likely also show every css file, image and a multitude of other objects that were requested (including the robots.txt file where one doesn't exist).
Thanks for asking more about it, made me think it through more thoroughly and because I was working on a number of other things on my site, I have all my tools open to use... I just didn't really have the sample data to test it and have been hoping to get some other feedback.
Bookmarks