<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: User Tracking Interface v1.1</title>
	<atom:link href="http://www.data-diggers.com/index.php/2010/03/user-tracking-interface-v1-1/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.data-diggers.com/index.php/2010/03/user-tracking-interface-v1-1/</link>
	<description>Zen Cart Optimization, Performance and A/B Split Testing Modules for Zen Cart</description>
	<lastBuildDate>Thu, 29 Sep 2011 11:57:25 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
	<item>
		<title>By: Amara</title>
		<link>http://www.data-diggers.com/index.php/2010/03/user-tracking-interface-v1-1/comment-page-1/#comment-90</link>
		<dc:creator>Amara</dc:creator>
		<pubDate>Tue, 31 May 2011 22:27:16 +0000</pubDate>
		<guid isPermaLink="false">http://www.data-diggers.com/?p=216#comment-90</guid>
		<description>I love this mod and have been using it successfully - until I installed an SEO mod that utilizes a 301 redirect.  After installing the SEO mod, the &quot;Recently Viewed&quot; products sidebox recognizes that there is a recently viewed product (ie there is a blank product showing in the sidebox with no pic or product info), but doesn&#039;t display the product info.

Any ideas of what I can change (other than uninstalling the SEO mod) to make the two play nice?

Thanks in advance.</description>
		<content:encoded><![CDATA[<p>I love this mod and have been using it successfully &#8211; until I installed an SEO mod that utilizes a 301 redirect.  After installing the SEO mod, the &#8220;Recently Viewed&#8221; products sidebox recognizes that there is a recently viewed product (ie there is a blank product showing in the sidebox with no pic or product info), but doesn&#8217;t display the product info.</p>
<p>Any ideas of what I can change (other than uninstalling the SEO mod) to make the two play nice?</p>
<p>Thanks in advance.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: admin</title>
		<link>http://www.data-diggers.com/index.php/2010/03/user-tracking-interface-v1-1/comment-page-1/#comment-45</link>
		<dc:creator>admin</dc:creator>
		<pubDate>Mon, 27 Sep 2010 08:33:55 +0000</pubDate>
		<guid isPermaLink="false">http://www.data-diggers.com/?p=216#comment-45</guid>
		<description>Storing IP as int - good idea and I know that it can be done ;-) I should have done so, but in early releases of UTI I was more concerned about bugs and ease of debugging then space. I&#039;ll keep that in mind for future release of UTI.

UTI already stores date and time in TIMESTAMP field.

As for storing attribute value as varchar... I couldn&#039;t use other field type as it&#039;s general purpose field. User should be able to store int, long, string, date, array, js, json data in that field. Therefore I&#039;ve used VARCHAR instead of INT, BIGINT. There are  some performance consequences of using BLOB or TEXT fields so I didn&#039;t used them either. In retrospective I could have used VARBINARY instead of VARCHAR but in most cases it doesn&#039;t matter.

Note: UTI does not use VARCHAR column as primary key. &lt;strong&gt;tsid&lt;/strong&gt; field in &lt;strong&gt;uti&lt;/strong&gt; table has just unique constraint on it.

As for the size of uti tables... On one site with 200 000 visits/month uti takes about 0,5 gb of space and performance is not an issue. Note: it&#039;s not bare uti module, there&#039;s also randomized tests, recently viewed products, recent searches, default currency, persistent shopping cart between user sessions and few others - so uti_attributes takes more space.

Thank You for Your suggestions, I really appreciate them. I&#039;ll try to release new UTI within week or two - with few new features:

	IP as INT
	custom uti attribute merge functions
	many bug fixes</description>
		<content:encoded><![CDATA[<p>Storing IP as int &#8211; good idea and I know that it can be done <img src='http://www.data-diggers.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />  I should have done so, but in early releases of UTI I was more concerned about bugs and ease of debugging then space. I&#8217;ll keep that in mind for future release of UTI.</p>
<p>UTI already stores date and time in TIMESTAMP field.</p>
<p>As for storing attribute value as varchar&#8230; I couldn&#8217;t use other field type as it&#8217;s general purpose field. User should be able to store int, long, string, date, array, js, json data in that field. Therefore I&#8217;ve used VARCHAR instead of INT, BIGINT. There are  some performance consequences of using BLOB or TEXT fields so I didn&#8217;t used them either. In retrospective I could have used VARBINARY instead of VARCHAR but in most cases it doesn&#8217;t matter.</p>
<p>Note: UTI does not use VARCHAR column as primary key. <strong>tsid</strong> field in <strong>uti</strong> table has just unique constraint on it.</p>
<p>As for the size of uti tables&#8230; On one site with 200 000 visits/month uti takes about 0,5 gb of space and performance is not an issue. Note: it&#8217;s not bare uti module, there&#8217;s also randomized tests, recently viewed products, recent searches, default currency, persistent shopping cart between user sessions and few others &#8211; so uti_attributes takes more space.</p>
<p>Thank You for Your suggestions, I really appreciate them. I&#8217;ll try to release new UTI within week or two &#8211; with few new features:</p>
<p>	IP as INT<br />
	custom uti attribute merge functions<br />
	many bug fixes</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Raine</title>
		<link>http://www.data-diggers.com/index.php/2010/03/user-tracking-interface-v1-1/comment-page-1/#comment-44</link>
		<dc:creator>Raine</dc:creator>
		<pubDate>Sun, 26 Sep 2010 16:31:17 +0000</pubDate>
		<guid isPermaLink="false">http://www.data-diggers.com/?p=216#comment-44</guid>
		<description>Perhaps you should consider:
1. storing ip as int instead of varchar
http://daipratt.co.uk/mysql-store-ip-address/
2. use unix time instead?
3. I dont know how you track recent view/search etc since i havent looked into the code in more details, but the table structure seems to suggest it&#039;s highly costly since you are using varchar to store att values in there, and primary key for varchar is also costly

Im thinking of using UTI to track recent views and such, but perhaps I will only use the part of code to recognize users and have a custom table to keep track of the recently viewed products.</description>
		<content:encoded><![CDATA[<p>Perhaps you should consider:<br />
1. storing ip as int instead of varchar<br />
<a href="http://daipratt.co.uk/mysql-store-ip-address/" rel="nofollow">http://daipratt.co.uk/mysql-store-ip-address/</a><br />
2. use unix time instead?<br />
3. I dont know how you track recent view/search etc since i havent looked into the code in more details, but the table structure seems to suggest it&#8217;s highly costly since you are using varchar to store att values in there, and primary key for varchar is also costly</p>
<p>Im thinking of using UTI to track recent views and such, but perhaps I will only use the part of code to recognize users and have a custom table to keep track of the recently viewed products.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: David</title>
		<link>http://www.data-diggers.com/index.php/2010/03/user-tracking-interface-v1-1/comment-page-1/#comment-34</link>
		<dc:creator>David</dc:creator>
		<pubDate>Mon, 17 May 2010 19:22:52 +0000</pubDate>
		<guid isPermaLink="false">http://www.data-diggers.com/?p=216#comment-34</guid>
		<description>I left the code in my tpl_footer, just commented it out.  First post, some of the code got cut off.


/*$content = “”;
foreach ($recently_viewed_products as $rpid) {
$rpprice = zen_get_products_display_price($rpid);
$content .= ”;
$content .= zen_image(DIR_WS_IMAGES . zen_get_products_image($rpid), $rpid, SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT);
$img = $db-&gt;Execute(”SELECT * FROM ” . TABLE_PRODUCTS . ” WHERE products_id = ‘” . (int)$rpid . “‘”);
$img = $img-&gt;fields[&#039;products_image&#039;];
$content .= ‘‘ . zen_image(DIR_WS_IMAGES . $img, $rpid, SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT);
$content .= ” . zen_get_products_name($rpid) . ‘‘;
$content .= ” . $rpprice . ”;
$content .= ”};
}
echo $content;*/</description>
		<content:encoded><![CDATA[<p>I left the code in my tpl_footer, just commented it out.  First post, some of the code got cut off.</p>
<p>/*$content = “”;<br />
foreach ($recently_viewed_products as $rpid) {<br />
$rpprice = zen_get_products_display_price($rpid);<br />
$content .= ”;<br />
$content .= zen_image(DIR_WS_IMAGES . zen_get_products_image($rpid), $rpid, SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT);<br />
$img = $db-&gt;Execute(”SELECT * FROM ” . TABLE_PRODUCTS . ” WHERE products_id = ‘” . (int)$rpid . “‘”);<br />
$img = $img-&gt;fields['products_image'];<br />
$content .= ‘‘ . zen_image(DIR_WS_IMAGES . $img, $rpid, SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT);<br />
$content .= ” . zen_get_products_name($rpid) . ‘‘;<br />
$content .= ” . $rpprice . ”;<br />
$content .= ”};<br />
}<br />
echo $content;*/</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: David</title>
		<link>http://www.data-diggers.com/index.php/2010/03/user-tracking-interface-v1-1/comment-page-1/#comment-33</link>
		<dc:creator>David</dc:creator>
		<pubDate>Mon, 17 May 2010 19:19:40 +0000</pubDate>
		<guid isPermaLink="false">http://www.data-diggers.com/?p=216#comment-33</guid>
		<description>As you asked for on the forum post, I left the code in my file, just commented it out.

&lt;!--bof Recently Viewed Items--&gt;
Execute(”SELECT * FROM ” . TABLE_PRODUCTS . ” WHERE products_id = ‘” . (int)$rpid . “‘”);
$img = $img-&gt;fields[&#039;products_image&#039;];
$content .= ‘‘ . zen_image(DIR_WS_IMAGES . $img, $rpid, SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT);
$content .= ” . zen_get_products_name($rpid) . ‘‘;
$content .= ” . $rpprice . ”;
$content .= ”};
}
echo $content;*/ ?&gt;
&lt;!--eof Recently Viewed Items--&gt;</description>
		<content:encoded><![CDATA[<p>As you asked for on the forum post, I left the code in my file, just commented it out.</p>
<p><!--bof Recently Viewed Items--><br />
Execute(”SELECT * FROM ” . TABLE_PRODUCTS . ” WHERE products_id = ‘” . (int)$rpid . “‘”);<br />
$img = $img-&gt;fields['products_image'];<br />
$content .= ‘‘ . zen_image(DIR_WS_IMAGES . $img, $rpid, SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT);<br />
$content .= ” . zen_get_products_name($rpid) . ‘‘;<br />
$content .= ” . $rpprice . ”;<br />
$content .= ”};<br />
}<br />
echo $content;*/ ?&gt;<br />
<!--eof Recently Viewed Items--></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: David</title>
		<link>http://www.data-diggers.com/index.php/2010/03/user-tracking-interface-v1-1/comment-page-1/#comment-30</link>
		<dc:creator>David</dc:creator>
		<pubDate>Wed, 07 Apr 2010 20:02:20 +0000</pubDate>
		<guid isPermaLink="false">http://www.data-diggers.com/?p=216#comment-30</guid>
		<description>Sorry about the long delay in response.  Thanks for the code, however, when I put it in my includes/templates/YOUR_TEMPLATE/common/tpl_footer.php file - it breaks the page (the whole footer area gets cut off.

I did place  tags around the code.  Any suggestions.  Thanks again.</description>
		<content:encoded><![CDATA[<p>Sorry about the long delay in response.  Thanks for the code, however, when I put it in my includes/templates/YOUR_TEMPLATE/common/tpl_footer.php file &#8211; it breaks the page (the whole footer area gets cut off.</p>
<p>I did place  tags around the code.  Any suggestions.  Thanks again.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: admin</title>
		<link>http://www.data-diggers.com/index.php/2010/03/user-tracking-interface-v1-1/comment-page-1/#comment-27</link>
		<dc:creator>admin</dc:creator>
		<pubDate>Wed, 10 Mar 2010 12:03:51 +0000</pubDate>
		<guid isPermaLink="false">http://www.data-diggers.com/?p=216#comment-27</guid>
		<description>UTI does not store any information in cookies besides UTI session ids. All information that is gathered by UTI is stored in store database.

Now, back to your question. Let&#039;s assume that You want to display list of recently viewed products. Edit includes/templates/YOUR_TEMPLATE/common/tpl_footer.php (or copy it from template_default if Your template does not yet have this file). Put following code where You want to display recently viewed products:

$content = &quot;&quot;;
  foreach ($recently_viewed_products as $rpid) {
    $rpprice = zen_get_products_display_price($rpid);;
    $content .= &#039;&#039;;
    //$content .=  zen_image(DIR_WS_IMAGES . zen_get_products_image($rpid), $rpid, SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT);
    $img = $db-&gt;Execute(&quot;SELECT * FROM &quot; . TABLE_PRODUCTS . &quot; WHERE products_id = &#039;&quot; . (int)$rpid . &quot;&#039;&quot;);
    $img = $img-&gt;fields[&#039;products_image&#039;];
    $content .=  &#039;&lt;a href=&quot;&#039; . zen_href_link(zen_get_info_page($rpid), &#039;products_id=&#039; . $rpid) . &#039;&quot; rel=&quot;nofollow&quot;&gt;&#039; . zen_image(DIR_WS_IMAGES . $img, $rpid, SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT);
    $content .= &#039;&#039; . zen_get_products_name($rpid) . &#039;&lt;/a&gt;&#039;;
    $content .= &#039;&#039; . $rpprice . &#039;&#039;;
    $content .= &#039;&#039;;
  }
echo $content;

You&#039;ll have to format the divs with css - I really suck at HTML&amp;CSS. If You wish to not show sidebox You&#039;ll have to either comment out whole includes/templates/YOUR_TAMPLATE/sideboxes/tpl_recently_viewed_products.php file. Disabling the sidebox in Admin panel will also disable logic behind it and $recently_viewed_products variable will be empty then.</description>
		<content:encoded><![CDATA[<p>UTI does not store any information in cookies besides UTI session ids. All information that is gathered by UTI is stored in store database.</p>
<p>Now, back to your question. Let&#8217;s assume that You want to display list of recently viewed products. Edit includes/templates/YOUR_TEMPLATE/common/tpl_footer.php (or copy it from template_default if Your template does not yet have this file). Put following code where You want to display recently viewed products:</p>
<p>$content = &#8220;&#8221;;<br />
  foreach ($recently_viewed_products as $rpid) {<br />
    $rpprice = zen_get_products_display_price($rpid);;<br />
    $content .= &#8221;;<br />
    //$content .=  zen_image(DIR_WS_IMAGES . zen_get_products_image($rpid), $rpid, SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT);<br />
    $img = $db-&gt;Execute(&#8220;SELECT * FROM &#8221; . TABLE_PRODUCTS . &#8221; WHERE products_id = &#8216;&#8221; . (int)$rpid . &#8220;&#8216;&#8221;);<br />
    $img = $img-&gt;fields['products_image'];<br />
    $content .=  &#8216;<a href="' . zen_href_link(zen_get_info_page($rpid), 'products_id=' . $rpid) . '" rel="nofollow">&#8216; . zen_image(DIR_WS_IMAGES . $img, $rpid, SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT);<br />
    $content .= &#8221; . zen_get_products_name($rpid) . &#8216;</a>&#8216;;<br />
    $content .= &#8221; . $rpprice . &#8221;;<br />
    $content .= &#8221;;<br />
  }<br />
echo $content;</p>
<p>You&#8217;ll have to format the divs with css &#8211; I really suck at HTML&amp;CSS. If You wish to not show sidebox You&#8217;ll have to either comment out whole includes/templates/YOUR_TAMPLATE/sideboxes/tpl_recently_viewed_products.php file. Disabling the sidebox in Admin panel will also disable logic behind it and $recently_viewed_products variable will be empty then.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: David</title>
		<link>http://www.data-diggers.com/index.php/2010/03/user-tracking-interface-v1-1/comment-page-1/#comment-25</link>
		<dc:creator>David</dc:creator>
		<pubDate>Tue, 09 Mar 2010 20:51:16 +0000</pubDate>
		<guid isPermaLink="false">http://www.data-diggers.com/?p=216#comment-25</guid>
		<description>Instead of displaying the contents of the cookie in sideboxes, how can you display it at the bottom of the page, right above the footer area?</description>
		<content:encoded><![CDATA[<p>Instead of displaying the contents of the cookie in sideboxes, how can you display it at the bottom of the page, right above the footer area?</p>
]]></content:encoded>
	</item>
</channel>
</rss>

