<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>

<channel>
	<title>SEOPerfectCart Articles</title>
	<atom:link href="http://articles.seoperfectcart.com/feed" rel="self" type="application/rss+xml" />
	<link>http://articles.seoperfectcart.com</link>
	<description>To get indexed, rank and sell your products you need a seo friendly ecommerce cart. SEOPerfectCart</description>
	<pubDate>Thu, 28 Aug 2008 04:20:44 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.1</generator>
	<language>en</language>
			<item>
		<title>MySQL 5 and Wishlist 3.5 for SEOPerfectCart / osCommerce fix!</title>
		<link>http://articles.seoperfectcart.com/mysql-5-and-wishlist-35-for-seoperfectcart-oscommerce-fix-37.htm</link>
		<comments>http://articles.seoperfectcart.com/mysql-5-and-wishlist-35-for-seoperfectcart-oscommerce-fix-37.htm#comments</comments>
		<pubDate>Thu, 28 Aug 2008 04:20:44 +0000</pubDate>
		<dc:creator>Sheriff</dc:creator>
		
		<category><![CDATA[SEOPC Fixes]]></category>

		<guid isPermaLink="false">http://articles.seoperfectcart.com/?p=37</guid>
		<description><![CDATA[According to the standard, the commaoperator has lower precedence than any of the JOIN variants.Thus the query:select * from t1, t2 join t3 on a=b;actually means:select * from t1, (t2 join t3 on a=b);Since (according to ANSI SQL) column names in an ONcondition are resolved against the join operands (t2, t3 inthis case), then the [...]]]></description>
			<content:encoded><![CDATA[<p>According to the standard, the comma<br />operator has lower precedence than any of the JOIN variants.<br />Thus the query:<br />select * from t1, t2 join t3 on a=b;<br />actually means:<br />select * from t1, (t2 join t3 on a=b);<br />Since (according to ANSI SQL) column names in an ON<br />condition are resolved against the join operands (t2, t3 in<br />this case), then the first query above must produce a<br />name resolution error, because there is no column &#39;a&#39; in<br />tables t2, t3.</p>
<p>On the other hand the query:<br />select * from (t1, t2) join t3 on a=b;<br />means that the whole cross-product (t1, t2) is the left<br />join operand. Consequently column &#39;a&#39; in the ON<br />condition can be resolved against the table (t1, t2).</p>
<p>All this is described in the latest 5.0 manual:<br />http://dev.mysql.com/doc/refman/5.0/en/join.html</p>
<p>therefore:</p>
<p>catalog/wishlist.php around line 50</p>
<p>replace $products_query with the following</p>
<p>$products_query = tep_db_query(&quot;<br />SELECT     pd.products_id, <br />        pd.products_name, <br />        pd.products_description,<br />        p.products_image, <br />        p.products_status, <br />        p.products_price, <br />        p.products_tax_class_id, <br />IF(s.status, s.specials_new_products_price, NULL) <br />    AS specials_new_products_price, <br />IF(s.status, s.specials_new_products_price, p.products_price) <br />    AS final_price <br />FROM (&quot; . TABLE_PRODUCTS . &quot; p, &quot; . TABLE_PRODUCTS_DESCRIPTION . &quot; pd) <br />LEFT JOIN &quot; . TABLE_SPECIALS . &quot; s <br />ON (p.products_id = s.products_id) <br />WHERE pd.products_id = &#39;&quot; . $product_id . &quot;&#39; AND p.products_id = pd.products_id AND pd.language_id = &#39;&quot; . $languages_id . &quot;&#39; order by products_name&quot;);</p>
<p>and in file catalog/includes/boxes/wishlist.php</p>
<p>near line 45 replace $products_query with the following</p>
<p>$products_query = tep_db_query(&quot;<br />SELECT     pd.products_id, <br />        pd.products_name, <br />        pd.products_description, <br />        p.products_image, <br />        p.products_price, <br />        p.products_tax_class_id, <br />IF(s.status, s.specials_new_products_price, NULL) <br />    AS specials_new_products_price, <br />IF(s.status, s.specials_new_products_price, p.products_price) <br />    AS final_price from (&quot; . TABLE_PRODUCTS . &quot; p, &quot; . TABLE_PRODUCTS_DESCRIPTION . &quot; pd) <br />LEFT JOIN &quot; . TABLE_SPECIALS . &quot; s <br />ON (p.products_id = s.products_id) <br />WHERE pd.products_id = &#39;&quot; . $wishlist_id . &quot;&#39; AND p.products_id = pd.products_id AND pd.language_id = &#39;&quot; . $languages_id . &quot;&#39; order by products_name&quot;);</p>
<p>See this in action at <a href="http://www.obazaar.com/">OBAZAAR</a> or download at <a href="http://www.seoperfectcart.com/">SEOPerfectCart</a></p>
]]></content:encoded>
			<wfw:commentRss>http://articles.seoperfectcart.com/mysql-5-and-wishlist-35-for-seoperfectcart-oscommerce-fix-37.htm/feed</wfw:commentRss>
		</item>
		<item>
		<title>WORDPRESS HACKED WORLDWIDE !!!</title>
		<link>http://articles.seoperfectcart.com/wordpress-hacked-worldwide-hidden-divs-33.htm</link>
		<comments>http://articles.seoperfectcart.com/wordpress-hacked-worldwide-hidden-divs-33.htm#comments</comments>
		<pubDate>Tue, 26 Aug 2008 06:37:47 +0000</pubDate>
		<dc:creator>alterego</dc:creator>
		
		<category><![CDATA[Security]]></category>

		<category><![CDATA[div]]></category>

		<category><![CDATA[expliot]]></category>

		<category><![CDATA[footer]]></category>

		<category><![CDATA[hidden]]></category>

		<category><![CDATA[links]]></category>

		<guid isPermaLink="false">http://articles.seoperfectcart.com/wordpress-hacked-worldwide-hidden-divs-33.htm</guid>
		<description><![CDATA[epharma and adult sites are hacking the internet and its worldwide using hidden div &#8217;s after the footer
Recently some of my blogs began showing a higher risk rating on the security Toolbar. After some chin scratching, I decided to start looking at the code. I could not find anything obvious on the top level files. [...]]]></description>
			<content:encoded><![CDATA[<h2>epharma and adult sites are hacking the internet and its worldwide using hidden div &#8217;s after the footer</h2>
<p>Recently some of my blogs began showing a higher risk rating on the security Toolbar. After some chin scratching, I decided to start looking at the code. I could not find anything obvious on the top level files. Then I pulled a HTML raw source code on my blog by right clicking and using the application View Page Source on FireFox or View Source on IE. Right after the FOOTER in the source I found about 1000 links to a few dot coms: mattworkman, weddingsatwork, reclaiminghistory, pop77, internetmarketingtowomenblog, which have probably been hacked. I will give them the benefit of the doubt and say they must have been hacked as I was. The difference being that these sites have hundreds of blog pages dedicated to e-pharmacy sites. The pages have head statements that look like this:</p>
<div class="codesnip-container" >internetmarketingtowomenblog dot com/?p=34409</p>
<p>!DOCTYPE HTML PUBLIC â€œ-//W3C//DTD HTML 4.01 Transitional//ENâ€><br />
html dir=â€ltrâ€><br />
head><br />
meta http-equiv=â€Content-Typeâ€ content=â€text/html; charset=UTF-8â€³ /><br />
title>bromazepam vs valium dose. Special For you! bromazepam vs valium dose.<br />
meta http-equiv=â€Content-Typeâ€ content=â€text/html; charset=ISO-8859-1â€³ /><br />
meta http-equiv=â€Content-Languageâ€ content=â€en-usâ€ /><br />
meta name=â€keywordsâ€ content=â€bromazepam vs valium doseâ€/><br />
meta name=â€descriptionâ€ content=â€Save your money. bromazepam vs valium dose - Only FREE delivery! bromazepam vs valium dose - Best Quality only here! bromazepam vs valium dose - Cheapest Drugstore Online! bromazepam vs valium dose. Click here! bromazepam vs valium dose.â€/><br />
Iink rel=â€pingbackâ€ href=â€http://wordpress.com/xmlrpc.phpâ€ /><br />
style>BODY {overflow:hidden; margin:0px;padding:0px;}</p>
<p>iframe border=0 width=â€100%â€ height=â€100%â€ src=â€http://tablets-city.com/search.php?qq=bromazepam+vs+valium+doseâ€>iframe></p>
<p>The copyright footer says:</p>
<p>Powered by a href=â€htp://tabletochka.com/â€ target=â€tabletochkaâ€ class=â€copyrightâ€>Tabletochka.com Â© 2001, 2005 phpBB Group Group</p></div>
<div class="codesnip-container" >mattworkman dot com/blog/page.php?p=910715</p>
<p>head><br />
meta http-equiv=â€Content-Typeâ€ content=â€text/html; charset=UTF-8â€³ /><br />
title>USA Drugstore - online phentermine forum - Best prices<br />
meta http-equiv=â€Content-Typeâ€ content=â€text/html; charset=ISO-8859-1â€³ /><br />
meta http-equiv=â€Content-Languageâ€ content=â€en-usâ€ /><br />
meta name=â€keywordsâ€ content=â€online phentermine forumâ€/><br />
meta name=â€descriptionâ€ content=â€USA Drugstore - online phentermine forum - Best pricesâ€/><br />
link rel=â€pingbackâ€ href=â€http://wordpress.com/xmlrpc.phpâ€ /></p>
<p>style>BODY {overflow:hidden; margin:0px;padding:0px;}/style><br />
iframe border=0 width=â€100%â€ height=â€100%â€ src=â€http://www.topmeds10.com/search.php?aid=55551&#038;q=online+phentermine+forumâ€>/iframe></p>
<p>The copyright footer says:</p>
<p>Powered by a href=â€htp://tabletochka.com/â€ target=â€tabletochkaâ€ class=â€copyrightâ€>Tabletochka.com Â© 2001, 2005 phpBB Group</p></div>
<div class="codesnip-container" >WeddingsAtWork dot com</p>
<p>I believe this is a wordpress site</p>
<p>title>WeddingsAtWork.com - The online wedding guide on Filipino kasal / kasalan.</p>
<p>link rel=â€stylesheetâ€ href=â€http://www.weddingsatwork.com/2008beta/wp-content/themes/WeddingsAtWork2/style.cssâ€ type=â€text/cssâ€ media=â€screenâ€ /><br />
link rel=â€alternateâ€ type=â€application/rss+xmlâ€ title=â€WeddingsAtWork.com - The online wedding guide on Filipino kasal / kasalan. RSS Feedâ€ href=â€http://www.weddingsatwork.com/index.php/feed/â€ /><br />
link rel=â€pingbackâ€ href=â€http://www.weddingsatwork.com/2008beta/xmlrpc.phpâ€ /></p></div>
<p>All three of these sites have been compromised and if you follow the links in the source code on each site you will spend the rest of your life opening sites that have been hacked with pages that iframe to epharma such as tablets-city dot com or topmeds10 dot com</p>
<p>At this time I am leaning towards xmlrpc.php as the exploit.  This is just a guess since I do not understand how they could be logging into the admin area without having my passwords. In WordPress the footer can be changed from admin. The HTML is actually being written directly into the wp-content/themes/*** your-template *** which is a cool trick on my site considering that all the folders are protected from direct http access. </p>
<p>In WordPress you can edit site content by typing in:</p>
<p>http://www.yourdomain.com/wp-admin/templates.php?file=wp-content/themes/yourtemplate/footer.php<br />
<strong><br />
<em>Usually you have to be logged in as an administrator to do this</em></strong>.</p>
<p>The truth is I am not much of a BLUE HAT when it comes to  exploiting search engines. I believe it is survival of the fittest. What these hackers are doing is actually stealing bandwidth and causing sites to be delisted and marked as security risks. That crosses the line. I am putting a call out to responsible hackers and wordpress experts to help in closing the expliot.  Use the comment field and leave a few links I will allow them.</p>
<p>I have updated WordPress from 2.3.1 to 2.6.1 and have added quite a few htaccess files hoping to close the exploit. I will wait and see and report back.</p>
]]></content:encoded>
			<wfw:commentRss>http://articles.seoperfectcart.com/wordpress-hacked-worldwide-hidden-divs-33.htm/feed</wfw:commentRss>
		</item>
		<item>
		<title>Multiple html form image input submit buttons, IE and PHP</title>
		<link>http://articles.seoperfectcart.com/multiple-html-form-image-input-submit-buttons-ie-and-php-31.htm</link>
		<comments>http://articles.seoperfectcart.com/multiple-html-form-image-input-submit-buttons-ie-and-php-31.htm#comments</comments>
		<pubDate>Tue, 24 Jun 2008 20:02:41 +0000</pubDate>
		<dc:creator>alterego</dc:creator>
		
		<category><![CDATA[PHP Toolbox 101]]></category>

		<guid isPermaLink="false">http://articles.seoperfectcart.com/multiple-html-form-image-input-submit-buttons-ie-and-php-31.htm</guid>
		<description><![CDATA[What is the underscore mean? In PHP code on request variables such as ($_GET and $_POST)?
 When submitting a form, it is possible to use an image instead of the standard submit button with a tag like:

HTML
input type=&#8221;image&#8221; src=&#8221;image.gif&#8221; name=&#8221;foo&#8221;
 When the user clicks somewhere on the image, the accompanying form will be transmitted to [...]]]></description>
			<content:encoded><![CDATA[<p>What is the underscore mean? In PHP code on request variables such as ($_GET and $_POST)?</p>
<p> When submitting a form, it is possible to use an image instead of the standard submit button with a tag like:</p>
<p><span id="more-31"></span></p>
<div class="codesnip-container" >HTML</p>
<p>input type=&#8221;image&#8221; src=&#8221;image.gif&#8221; name=&#8221;foo&#8221;</p></div>
<p> When the user clicks somewhere on the image, the accompanying form will be transmitted to the server with two additional variables: foo.x and foo.y where x and y are the pixel coordinate values of where you clicked on the image. This can be used to form an image map. </p>
<p> Firefox will transmit foo.x foo.y and the value of foo</p>
<p>  Internet Explorer will only transmit foo.x and foo.y </p>
<p> Because foo.x and foo.y would make invalid variable names in PHP, they are automatically converted to foo_x and foo_y. </p>
<p> <strong>Spaces in request variable names are also converted to underscores.</strong> </p>
<p> That is, the periods or spaces are replaced with underscores. So, you retrieve these variables like any other REQUEST variable on the following page or same page. For example, $_GET['foo_x'].</p>
<p> There is a technicality related to form submission if you use an image submit button. It is usually relevant only if you have several such buttons in one form.<br />
When using image submit buttons, you need to use specifically different NAME attributes in order to be able to recognize in the form handler which button was clicked on.</p>
<p> In the following:</p>
<div class="codesnip-container" >HTML</p>
<p> input type=&#8221;image&#8221; src=&#8221;image.gif&#8221; name=&#8221;foo&#8221; alt=&#8221;Search&#8221; title=&#8221;Search&#8221;  value=&#8221;Search&#8221;</p></div>
<p> According to the HTML 4 specification, you can use the TITLE attribute for most elements (including input elements) to suggest an &#8220;advisory title&#8221;, i.e. additional information which might be optionally presented to the user, e.g. as a &#8220;tooltip&#8221; popup. Supported to the TITLE attribute was introduced in IE 4, and later some support has been added to other browsers too.</p>
<p> In the absence of a TITLE attribute, IE uses the ALT attribute for that purpose. It&#8217;s still a good idea to specify both, even if they have the same value.</p>
<p> The VALUE attribute, despite being syntactically valid, has no logical meaning in this context - note that it does not get transmitted in the form data set in IE { Internet Explorer }; but since some browsers use it, instead of ALT, for the alternative text, it is a good idea to include it too (with the same value as ALT)</p>
<p>  In Mozilla / FireFox the attribute VALUE is transmitted as the value of the NAME variable. So if you are using PHP </p>
<div class="codesnip-container" >HTML</p>
<p>input type=&#8221;image&#8221; src=&#8221;image.gif&#8221; name=&#8221;foo&#8221; value=&#8221;42&#8243; alt=&#8221;Search&#8221; title=&#8221;Search&#8221;</p></div>
<div class="codesnip-container" >PHP</p>
<p>  echo $_GET['foo']; will echo the value of the NAME variable foo which in this case is </p>
<p>  Mozilla will transmit:<br />
  $_GET['foo_x'] = lets say 5 (the x coordinate of where the image was clicked)<br />
  $_GET['foo_y'] = lets say 6 (the y coordinate of where the image was clicked)<br />
  $_GET['foo'] = The value of the VALUE attribute which in this case is 42</p>
<p>  IE(Internet Explorer) will only transmit the x and y values<br />
  $_GET['foo_x'] = lets say 5 (the x coordinate of where the image was clicked)<br />
  $_GET['foo_y'] = lets say 6 (the y coordinate of where the image was clicked)</p></div>
<p> The values ALT, TITLE. These are used to help the visually impaired access your website. Some of you may scoff at this but be warned that some countries and states allow civil lawsuits for not providing reasonable access to the handicapped, so check yours. <a href="http://www.access-board.gov/sec508/guide/1194.22.htm" rel="nofollow">Section 508 of the Americans with Disabilities Act</a> states that you must make it accessible.</p>
<p>The value of NAME is transmitted as either a $_GET or a $_POST ($_REQUEST variables) depending on what type of form it is.</p>
<p> I have been unable to find a way retrieve the value of the NAME atrribute with any consistency.<br />
 I found this as a comment on another site by a poster named Abalam that suggested if you send the value in the following format:</p>
<div class="codesnip-container" >HTML</p>
<p>input type=&#8221;image&#8221; src=&#8221;image.gif&#8221; <strong>name=&#8221;foo[0]&#8220;</strong> value=&#8221;42&#8243; alt=&#8221;Search&#8221; title=&#8221;Search&#8221;</div>
<p>and attempt to retrieve it in PHP as follows:</p>
<div class="codesnip-container" >PHP</p>
<p>foo_x and foo_y will still exist.</p>
<p>The following should be true:</p>
<p>$_GET["foo"][0]=&#8221;42&#8243;</p>
<p>or</p>
<p>$_POST["foo"][0] = &#8220;42&#8243;</p></div>
<p>it should work.</p>
<p> I have been unable to make this work! I have used print_r to display array $foo in Internet Explorer and it does not show any other values except for the x and y coordinates.</p>
<p> In mozilla it shows all the values.</p>
<p> The solution here is to get everyone you know to use Mozilla / FireFox and slam Microsoft Internet Explorer at every turn. When our Public companies do not serve the Public its time for a change.</p>
]]></content:encoded>
			<wfw:commentRss>http://articles.seoperfectcart.com/multiple-html-form-image-input-submit-buttons-ie-and-php-31.htm/feed</wfw:commentRss>
		</item>
		<item>
		<title>Multiple Adobe PDF in the Outlook toolbar repair / fix</title>
		<link>http://articles.seoperfectcart.com/multiple-adobe-pdf-in-the-outlook-toolbar-repair-fix-30.htm</link>
		<comments>http://articles.seoperfectcart.com/multiple-adobe-pdf-in-the-outlook-toolbar-repair-fix-30.htm#comments</comments>
		<pubDate>Sat, 08 Sep 2007 03:30:12 +0000</pubDate>
		<dc:creator>alterego</dc:creator>
		
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://articles.seoperfectcart.com/multiple-adobe-pdf-in-the-outlook-toolbar-repair-fix-30.htm</guid>
		<description><![CDATA[    If you happen to have Microsoft Outlook and paid Adobe huge money for Adobe PDF 7.0 Professional they want you to upgrade at a price to fix the following problem.
    Across the top of the toolbar in Microsoft Outlook 2000 you will have multiple instances of the following [...]]]></description>
			<content:encoded><![CDATA[<p name="intelliTxt" class="answerBody quoted" id="intelliTxt">    If you happen to have Microsoft Outlook and paid Adobe huge money for Adobe PDF 7.0 Professional they want you to upgrade at a price to fix the following problem.</p>
<p name="intelliTxt" class="answerBody quoted" id="intelliTxt">    Across the top of the toolbar in Microsoft Outlook 2000 you will have multiple instances of the following tab</p>
<p name="intelliTxt" class="answerBody quoted" id="intelliTxt">Adobe PDF Adobe PDF Adobe PDF Adobe PDF Adobe PDF</p>
<p name="intelliTxt" class="answerBody quoted" id="intelliTxt">Everytime you restart your computer another one will be added.</p>
<p name="intelliTxt" class="answerBody quoted" id="intelliTxt">    Adobe shows its true colors.  Basically they could not figure out how to fix the problem so their answer is for you to buy Acrobat 8.  I do not believe this fixes the problem only stops new occurrences.</p>
<p><a href="http://kb.adobe.com/selfservice/viewContent.do?externalId=331832&amp;sliceId=2" onclick="return openNew(this.href);" rel="nofollow" target="_blank">http://kb.adobe.com/selfservice/viewCont<wbr></wbr>ent.do?<wbr></wbr>ext<wbr></wbr>ernalId=33<wbr></wbr>1832&amp;slice<wbr></wbr>Id=2</a></p>
<p><span id="more-30"></span></p>
<p>When you install Adobe Acrobat, a toolbar is added to Word and Outlook. This toolbar can prevent you from rearranging the toolbars in Outlook (your arrangement won&#8217;t stick between restarts) and for most people, serves no useful purpose.</p>
<p name="intelliTxt" class="answerBody quoted" id="intelliTxt">&nbsp;</p>
<p name="intelliTxt" class="answerBody quoted" id="intelliTxt">You have two ways to deal with this:</p>
<p name="intelliTxt" class="answerBody quoted" id="intelliTxt"> # Modify the setup to remove it<br />
# Edit the registry to keep it from loading</p>
<p name="intelliTxt" class="answerBody quoted" id="intelliTxt"># Extreme Fix!!</p>
<p name="intelliTxt" class="answerBody quoted" id="intelliTxt">&nbsp;</p>
<p name="intelliTxt" class="answerBody quoted" id="intelliTxt">    Note: This toolbar is only installed by Adobe Acrobat 7.0 Professional which you purchased. The free Acrobat Reader does not install this toolbar.</p>
<p name="intelliTxt" class="answerBody quoted" id="intelliTxt">&nbsp;</p>
<p name="intelliTxt" class="answerBody quoted" id="intelliTxt">    <em><strong>WARNING: Back up Outlook before you begin !!! Close Outlook</strong></em></p>
<p name="intelliTxt" class="answerBody quoted" id="intelliTxt">&nbsp;</p>
<p name="intelliTxt" class="answerBody quoted" id="intelliTxt"><em><strong>Remove It! </strong></em></p>
<p name="intelliTxt" class="answerBody quoted" id="intelliTxt">&nbsp;</p>
<p name="intelliTxt" class="answerBody quoted" id="intelliTxt">    Go to Control Panel, Add/Remove Programs. Find the entry for Adobe Acrobat and choose Change, then select the option to Modify the installation.</p>
<p>Expand &#8216;Create Adobe PDF&#8221; and click on the Microsoft Outlook entry then choose &#8220;This feature will not be available&#8221;. If you want to remove the ability to create PDF from all of the programs listed, click on Create Adobe PDF and select this program will not be available to apply the option to each item under it.</p>
<p>Click Next and finish the Add/Remove wizard.</p>
<p name="intelliTxt" class="answerBody quoted" id="intelliTxt">&nbsp;</p>
<p name="intelliTxt" class="answerBody quoted" id="intelliTxt">You may need to provide your Acrobat disk or installation media to uninstall it.</p>
<p>This will not affect your ability to print to PDF using the printer driver. This only removes the toolbars from the programs listed.</p>
<p><em><strong>Disable It!</strong></em></p>
<p name="intelliTxt" class="answerBody quoted" id="intelliTxt">&nbsp;</p>
<p name="intelliTxt" class="answerBody quoted" id="intelliTxt">    You may want to use it sometime or because you don&#8217;t have the installation media handy, you&#8217;ll need to edit the registry.</p>
<p>To prevent the Acrobat PDFMaker COM Addin from loading, go to HKEY_LOCAL_MACHINE\Software\Microsoft\Of<wbr></wbr>fice\Outlo<wbr></wbr>ok\Addins\<wbr></wbr>PDFMOutloo<wbr></wbr>k.PDFMOutl<wbr></wbr>ook and change the LoadBehavior value from 3 to 2. Restart Outlook. When you use this method, the PDF functions will still be available in Word and the other Office programs. Note that installing Acrobat updates may reset the registry key.</p>
<p name="intelliTxt" class="answerBody quoted" id="intelliTxt">&nbsp;</p>
<p name="intelliTxt" class="answerBody quoted" id="intelliTxt"><em><strong>Extreme Fix!</strong></em></p>
<p name="intelliTxt" class="answerBody quoted" id="intelliTxt">&nbsp;</p>
<p name="intelliTxt" class="answerBody quoted" id="intelliTxt">Remove it using the following instructions.</p>
<p name="intelliTxt" class="answerBody quoted" id="intelliTxt">&nbsp;</p>
<p name="intelliTxt" class="answerBody quoted" id="intelliTxt"><em><strong>Back up Outlook before you begin !!! Close Outlook</strong></em></p>
<p>If you loose data do not blame me.</p>
<p>In Windows XP</p>
<p>find</p>
<p>C:\Documents and Settings\***Your Folder***\Application Data\Microsoft\Outlook</p>
<p>replace ***Your Folder*** with your folder!</p>
<p>find the file outcmd.dat and rename it outcmd.old</p>
<p>If you cannot find it in your version of windows use the search feature.</p>
<p>When you restart Outlook your toolbar will be back to its virgin settings any and all customizations will be gone!</p>
]]></content:encoded>
			<wfw:commentRss>http://articles.seoperfectcart.com/multiple-adobe-pdf-in-the-outlook-toolbar-repair-fix-30.htm/feed</wfw:commentRss>
		</item>
		<item>
		<title>MySQL 5 and Wishlist 3.5 for osCommerce fix</title>
		<link>http://articles.seoperfectcart.com/mysql-5-and-wishlist-35-for-oscommerce-fix-19.htm</link>
		<comments>http://articles.seoperfectcart.com/mysql-5-and-wishlist-35-for-oscommerce-fix-19.htm#comments</comments>
		<pubDate>Fri, 17 Aug 2007 05:30:18 +0000</pubDate>
		<dc:creator>alterego</dc:creator>
		
		<category><![CDATA[MySQL]]></category>

		<guid isPermaLink="false">http://articles.seoperfectcart.com/mysql-5-and-wishlist-35-for-oscommerce-fix-19.htm</guid>
		<description><![CDATA[If you have attempted to install Wishlist 3.5 on a server running MySQL 5 you may have received the following error
1054 - Unknown column &#8216;p.products_id&#8217; in &#8216;on clause&#8217;

According to the standard, the comma
operator has lower precedence than any of the JOIN variants.
Thus the query:
select * from t1, t2 join t3 on a=b;
actually means:
select * from [...]]]></description>
			<content:encoded><![CDATA[<p>If you have attempted to install Wishlist 3.5 on a server running MySQL 5 you may have received the following error</p>
<p><em><strong>1054 - Unknown column &#8216;p.products_id&#8217; in &#8216;on clause&#8217;</strong></em></p>
<p><span id="more-19"></span></p>
<p>According to the standard, the comma<br />
operator has lower precedence than any of the JOIN variants.<br />
Thus the query:<br />
select * from t1, t2 join t3 on a=b;<br />
actually means:<br />
select * from t1, (t2 join t3 on a=b);<br />
Since (according to ANSI SQL) column names in an ON<br />
condition are resolved against the join operands (t2, t3 in<br />
this case), then the first query above must produce a<br />
name resolution error, because there is no column &#8216;a&#8217; in<br />
tables t2, t3.</p>
<p>On the other hand the query:<br />
select * from (t1, t2) join t3 on a=b;<br />
means that the whole cross-product (t1, t2) is the left<br />
join operand. Consequently column &#8216;a&#8217; in the ON<br />
condition can be resolved against the table (t1, t2).</p>
<p>All this is described in the latest 5.0 manual:<br />
http://dev.mysql.com/doc/refman/5.0/en/join.html</p>
<p>therefore:</p>
<p>catalog/wishlist.php around line 50</p>
<p>replace $products_query with the following</p>
<p>$products_query = tep_db_query(&#8221;<br />
SELECT     pd.products_id,<br />
pd.products_name,<br />
pd.products_description,<br />
p.products_image,<br />
p.products_status,<br />
p.products_price,<br />
p.products_tax_class_id,<br />
IF(s.status, s.specials_new_products_price, NULL)<br />
AS specials_new_products_price,<br />
IF(s.status, s.specials_new_products_price, p.products_price)<br />
AS final_price<br />
FROM (&#8221; . TABLE_PRODUCTS . &#8221; p, &#8221; . TABLE_PRODUCTS_DESCRIPTION . &#8221; pd)<br />
LEFT JOIN &#8221; . TABLE_SPECIALS . &#8221; s<br />
ON (p.products_id = s.products_id)<br />
WHERE pd.products_id = &#8216;&#8221; . $product_id . &#8220;&#8216; AND p.products_id = pd.products_id AND pd.language_id = &#8216;&#8221; . $languages_id . &#8220;&#8216; order by products_name&#8221;);</p>
<p>and in file catalog/includes/boxes/wishlist.php</p>
<p>near line 45 replace $products_query with the following</p>
<p>$products_query = tep_db_query(&#8221;<br />
SELECT     pd.products_id,<br />
pd.products_name,<br />
pd.products_description,<br />
p.products_image,<br />
p.products_price,<br />
p.products_tax_class_id,<br />
IF(s.status, s.specials_new_products_price, NULL)<br />
AS specials_new_products_price,<br />
IF(s.status, s.specials_new_products_price, p.products_price)<br />
AS final_price from (&#8221; . TABLE_PRODUCTS . &#8221; p, &#8221; . TABLE_PRODUCTS_DESCRIPTION . &#8221; pd)<br />
LEFT JOIN &#8221; . TABLE_SPECIALS . &#8221; s<br />
ON (p.products_id = s.products_id)<br />
WHERE pd.products_id = &#8216;&#8221; . $wishlist_id . &#8220;&#8216; AND p.products_id = pd.products_id AND pd.language_id = &#8216;&#8221; . $languages_id . &#8220;&#8216; order by products_name&#8221;);</p>
<p>See this in action at <a href="http://www.obazaar.com/">OBAZAAR</a></p>
]]></content:encoded>
			<wfw:commentRss>http://articles.seoperfectcart.com/mysql-5-and-wishlist-35-for-oscommerce-fix-19.htm/feed</wfw:commentRss>
		</item>
		<item>
		<title>Spamming the memberlist.php PHPbb forum easy fix</title>
		<link>http://articles.seoperfectcart.com/spamming-the-memberlistphp-phpbb-forum-easy-fix-28.htm</link>
		<comments>http://articles.seoperfectcart.com/spamming-the-memberlistphp-phpbb-forum-easy-fix-28.htm#comments</comments>
		<pubDate>Sat, 14 Jul 2007 03:23:21 +0000</pubDate>
		<dc:creator>alterego</dc:creator>
		
		<category><![CDATA[Server]]></category>

		<guid isPermaLink="false">http://articles.seoperfectcart.com/spamming-the-memberlistphp-phpbb-forum-easy-fix-28.htm</guid>
		<description><![CDATA[SEOPerfectCart forum has recently experienced a rash of spammers. These are people who obviously are trying for a quick link and failed to read the conduct and permissions on the forum. We have devised a quick fix to deny spammers the ability to benefit from creating accounts and having bots index the links without actually [...]]]></description>
			<content:encoded><![CDATA[<p>SEOPerfectCart forum has recently experienced a rash of spammers. These are people who obviously are trying for a quick link and failed to read the <a href="http://forum.seoperfectcart.com/conduct-and-permissions-t4.html">conduct and permissions</a> on the forum. We have devised a quick fix to deny spammers the ability to benefit from creating accounts and having bots index the links without actually adding content to   the site. If you want the code you need to follow the READ MORE link <img src='http://articles.seoperfectcart.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> &#8230;&#8230;</p>
<p><span id="more-28"></span></p>
<p>We understand the business of the internet and that links are important but free links without reciprocal links are not in our best interest. Hell a lot of surfers still have not realized that getting information from a website and not supporting that site by clicking on the ads is a quick way to loose the gift of free information on the internet. The only sites left will be those run by public corporations that will not ever in a million years give you information that is insensitive or politically incorrect or help you succeed in any way.  If you want more to read some great rants check out <a href="http://www.advisecenter.com/">advisecenter.com</a>. So after that short rant let me tell you how to get spammers to sign up for your site thinking they can exploit your memberlist.php without adding viable content to your site and deny them the fruit of their labors.</p>
<ol>
<li>Open memberlist.php in your favorite editor.</li>
<li>at around line 36 add the following lines after the END session management and before  $start =</li>
<li>PHP
<div class="codesnip-container" >// Start session management$userdata = session_pagestart($user_ip, PAGE_VIEWMEMBERS);<br />
init_userprefs($userdata);// End session management// SEOPC login to view memberlist.php</p>
<p>if (!$userdata['session_logged_in']) {<br />
redirect(&#8221;login.$phpEx&#8221;);<br />
}</p>
<p>// EOF | login to view memberlist.php</p>
<p>$start = ( isset($_GET['start']) ) ? intval($_GET['start']) : 0;<br />
$start = ($start &lt; 0) ? 0 : $start;</p></div>
</li>
<li>Open profile.php in your favorite editor.</li>
<li>at around line 36 add the following lines after the END session management and before // session id check</li>
<li>PHP
<div class="codesnip-container" >// End session management<br />
//if (!$userdata['session_logged_in']){<br />
redirect(&#8221;login.$phpEx&#8221;);<br />
}// session id check</div>
</li>
</ol>
<p>Thats it now spiders cannot view memberlist.php or profile.php because they do not login.  The spammers become forum members but they have to actually participate to get links.</p>
<p>Have a great day and don&#8217;t forget to support internet neutrality.</p>
]]></content:encoded>
			<wfw:commentRss>http://articles.seoperfectcart.com/spamming-the-memberlistphp-phpbb-forum-easy-fix-28.htm/feed</wfw:commentRss>
		</item>
		<item>
		<title>Adwords : keywords are inactive for search raise bid!!</title>
		<link>http://articles.seoperfectcart.com/adwords-keywords-are-inactive-for-search-raise-bid-27.htm</link>
		<comments>http://articles.seoperfectcart.com/adwords-keywords-are-inactive-for-search-raise-bid-27.htm#comments</comments>
		<pubDate>Tue, 03 Jul 2007 03:37:07 +0000</pubDate>
		<dc:creator>alterego</dc:creator>
		
		<category><![CDATA[Search Engines]]></category>

		<guid isPermaLink="false">http://articles.seoperfectcart.com/adwords-keywords-are-inactive-for-search-raise-bid-27.htm</guid>
		<description><![CDATA[Has Google lost its mind!!??
I recently checked out my Adwords account and I found every one of my keywords and phrases on all my campaigns say the following or a derivative thereof:
  Inactive for search       
   Increase quality or bid  $10.00  to activate
After hours [...]]]></description>
			<content:encoded><![CDATA[<p>Has Google lost its mind!!??</p>
<p>I recently checked out my Adwords account and I found every one of my keywords and phrases on all my campaigns say the following or a derivative thereof:</p>
<p><font color="#b98b00">  Inactive for search  </font>     <span><br />
<span class="smaller">  <a href="http://www.obazaar.com"> Increase quality or bid  $10.00  to activate</a></span></span></p>
<p>After hours of scouring the internet I have found what I think is the answer!!</p>
<p><span id="more-27"></span></p>
<p><span title="Sort by keyword quality"><strong>Quality Score</strong><br />
Your Quality Score reflects your keyword&#8217;s CTR and the relevance of your ad text and landing page. Keywords with high Quality Scores are more relevant for users, more effective for your ad campaigns, and have lower minimum CPC bids.</span></p>
<p style="border: 1px solid #cccccc; margin: 1em 0pt; padding: 5px; background: #ffffff none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial"> <strong>Keywords can have one of three Quality Score states:</strong></p>
<ul style="margin: 0.5em 5px 0pt; padding: 0pt; list-style-type: none">
<li style="padding-bottom: 4px"><strong class="greenText">Great:</strong> Your keyword is very relevant and your Quality Score needs no improvement.</li>
<li style="padding-bottom: 4px"><strong class="greenText">OK:</strong> Your keyword is relevant, but you can still benefit from a higher Quality Score.</li>
<li style="padding-bottom: 4px"><strong class="redText">Poor:</strong> This keyword isn&#8217;t very relevant to users and we suggest you replace it with a more specific keyword. If you would like to keep advertising with this keyword, we recommend optimizing by using more targeted ad text and improving your landing page content.</li>
</ul>
<p><em><strong>NOPE!!!!  thats not it!!!! are you serious?<br />
</strong></em></p>
<p>If googlie was really interested in the relevance of the keyword compared to the site they wouldn&#8217;t make it possible to activate the keyword by paying more. That would be contrary to their assertion that they want to provide quality relevant ads to web searchers. Just like almost everything else in life everyones a whore if the price is right is what they are implying.</p>
<p>Don&#8217;t be silly Google is now a public charter &#8220;<em>a corporation</em>&#8221; they no longer have their customers best interest in mind. Some of you that did business with Google pre-public entity still think its the same animal. This isn&#8217;t the right forum to discuss Americas love affair with the devil &#8220;<em>public entities</em>&#8221; so I wont.</p>
<p>You should pay more for the search network compared to the content network due to the fact that these are active shoppers of your product and are therefore more likely to purchase your product.</p>
<p>So what is the answer?</p>
<p>First:</p>
<p>Started a new keyword analysis to find new and good keywords.</p>
<p>Second:</p>
<p>Break up your large keyword lists and setup new campaigns for keywords with the same topic!  This one is important. Setup a campaign with targeted keywords that are relavent to a single page on your site.</p>
<p>Third:</p>
<p>Express googlie ads so that they match what a searcher is looking for.  I know thats vague but marketing is both an art and a science. Try asking questions in your ads or making extreme statements that will not offending.</p>
<p>Are you unable to satisfy?</p>
<p>or</p>
<p>He is about to leave you! Learn 100 ways to beat her!</p>
<p>Fourth:</p>
<p><strong><em>Keep your domain name out of the </em><em>AD COPY</em></strong>.</p>
<p>This is important especially if you are a small player! By including you domain name in the ad you are getting free exposure for your site. If 1000 people a day see your ad and do not click on it Googlie doesn&#8217;t see a dime. Unfortunately although its a great idea they do not have you best interest at heart. In my experience this little fix reactivated a lot of keywords.</p>
<p>Fifth:</p>
<p>Big fish with huge budgets and high MAX CPC will increase their CTR. The rates will drop due to increased CTR due to the higher exposure. Yes its a chicken and egg thing. Remember that your MAX CPC is not necessarily what you will pay but if everyone follows Googlies advice and increases thier MAX CPC to make their keywords active well remember that supply and demand is a real phenomena and they only care about their shareholders.</p>
<p>Sixth:</p>
<p>Probably the lowest importance of all but make sure that your landing page for each keyword is relevant to the word. Do not send them to the index page if the keyword is more relevant to another page on you site.</p>
<p>The results have been:<br />
- Lower CPC<br />
- Higher CTR<br />
- More Conversions</p>
<p><a href="https://adwords.google.com/support/bin/static.py?page=tips.html">The following is from googlies website in regards to optimizing your site and keywords I am displaying it here becuase it was pretty hard to find:</a></p>
<p><a title="identify" name="identify"></a><strong><font color="#ffffff"> </font>1. Identify your advertising goals.</strong></p>
<p><em>Your optimization strategy depends on the objectives that you define for your campaigns.</em></p>
<p>With specific goals in mind, you can work strategically to achieve your objectives, track your performance, and make the modifications necessary to get the results you want. Here are some typical objectives and sample focus areas for each goal:</p>
<p><strong>&#8220;I want to get more clicks.&#8221;</strong><br />
Focus on <a href="https://adwords.google.com/support/bin/static.py?page=tips.html#choose">keywords and sites</a>. Increase your ad exposure by adding keywords and sites to your ad groups.</p>
<p><strong>&#8220;I want to increase my clickthrough rate (CTR).&#8221;</strong><br />
Focus on ad quality. Attract more clicks by <a href="https://adwords.google.com/support/bin/static.py?page=tips.html#create">refining your ads</a>, and eliminate extra impressions by choosing highly targeted <a href="https://adwords.google.com/support/bin/static.py?page=tips.html#choose">keywords and sites</a> and using <a href="https://adwords.google.com/support/bin/static.py?page=tips.html#choose">negative keywords</a>.</p>
<p><strong>&#8220;I want to improve my return on investment (ROI).&#8221;</strong><br />
First, focus on your ads and your <a href="https://adwords.google.com/support/bin/static.py?page=tips.html#choose">keywords and sites</a> to attract the right audience. Then focus on your website. Be sure your <a href="https://adwords.google.com/support/bin/static.py?page=tips.html#optimize">landing page and site</a> are set up to let users find what your ad offers.</p>
<table border="0" cellpadding="2" cellspacing="0" width="98%">
<tr>
<td bgcolor="#c6d7cf"><a title="organize" name="organize"></a><strong><font color="#ffffff"> </font>2. Organize your account for maximum effectiveness.</strong></td>
</tr>
</table>
<p><em>A well-structured account is easy to manage and allows you to effectively target your audience.</em></p>
<p><strong>Organize your campaigns by topic. </strong><br />
Create separate campaigns for each of your product lines, resources, or brands. This helps you monitor your advertising more easily and make the necessary adjustments to improve your campaign performance. Ask yourself what you want to achieve with each campaign. Then structure your campaign based on this goal. <a href="https://adwords.google.com/support/bin/answer.py?answer=6106">View a diagram and learn more</a> about the structure of your account.</p>
<p><strong>Target the right languages and locations. </strong><br />
For each campaign, you can choose to target your ads to particular <a href="https://adwords.google.com/support/bin/answer.py?answer=6277">languages and locations</a> (plus choose your budget and other settings). Be sure to target only the languages and locations that are relevant for your business. For example, if you ship your products to locations within a certain distance of your business, target the country, territory, region, or city related to the area, instead of to &#8216;All Countries.&#8217;</p>
<p><strong>Create highly specific ad groups.</strong><br />
As with your campaigns, each ad group should center on a single product or service to ensure your ads reach the most qualified users. Build a list of <a href="https://adwords.google.com/support/bin/answer.py?answer=6763">keywords</a> or <a href="https://adwords.google.com/support/bin/answer.py?answer=19652">sites</a>, then separate them into related ad groups. Create ads that pertain directly to that list. For example, if you sell mp3 players, and you&#8217;ve organized your campaigns by brand, create multiple ad groups based on the models of each brand.</p>
<p><strong>Avoid duplicate keywords across ad groups.</strong><br />
Google shows only one ad per advertiser on a particular keyword, so there&#8217;s no need to include duplicate keywords in different ad groups or campaigns. Identical keywords compete against each other, and the better-performing keyword triggers your ad.</p>
<p>Review example campaigns advertising a <a href="https://adwords.google.com/support/bin/answer.py?answer=46075">single product/service</a> and <a href="https://adwords.google.com/support/bin/answer.py?answer=46074">multiple products/services</a>.</p>
<table border="0" cellpadding="2" cellspacing="0" width="98%">
<tr>
<td bgcolor="#c6d7cf"><a title="choose" name="choose"></a><strong><font color="#ffffff"> </font>3. Choose relevant keywords and sites.</strong></td>
</tr>
</table>
<p><em>The more relevant your keywords and sites to your goals, the more easily you can reach your potential customers. </em></p>
<p><strong>Keyword-targeted campaigns</strong></p>
<p><strong>Choose your keywords carefully. </strong><br />
Include specific keywords that directly relate to the specific theme of your ad group and landing page. For optimal ad visibility, include relevant keyword variations, along with singular and plural versions. If applicable, consider using colloquial terms, alternate spellings, synonyms, and product or serial numbers. The <a href="https://adwords.google.com/support/bin/answer.py?answer=25109">Keyword Tool</a> can help generate lists of possible keywords.</p>
<p><strong>Take advantage of keyword matching options.</strong><br />
With some keywords, you&#8217;ll get more ad impressions; with others, you&#8217;ll get fewer impressions but potentially more clicks. By strategically using <a href="https://adwords.google.com/support/bin/answer.py?answer=6100">keyword matching options</a>, you can reach the most appropriate prospects, potentially reduce your actual CPC or CPM, and increase your ROI. For example, use <a href="https://adwords.google.com/support/bin/answer.py?answer=14791">negative keywords</a> to reduce irrelevant ad impressions and increase your Quality Score.</p>
<p><strong>Use unique keyword URLs.</strong><br />
Keyword destination URLs send users to a specific landing page, ensuring your customer arrives immediately at the most relevant page for the keyword that triggered your ad. Edit individual keyword URLs by clicking &#8216;Edit Keyword Settings&#8217; above your keyword table.</p>
<p><strong>Site-targeted campaigns</strong></p>
<p><strong>Choose your sites carefully. </strong><br />
Include sites that are relevant to your products or services, and be sure to choose enough sites. The more relevant sites you target, the better the chances your ad will show. We provide four ways to choose sites: by enter URLs, describe topics, select categories, or select demographics. For an effective list, we strongly suggest <a href="https://adwords.google.com/support/bin/answer.py?answer=19652">using all four methods</a>.</p>
<p>When using the site tool to find and select sites, pay attention to the <strong>Ad Formats</strong> column in the list of available sites. If you run only certain kinds of formats &#8212; for instance, image ads only, or text and video ads only &#8212; make sure you select sites that run the kinds of formats you have to offer.</p>
<p><strong>If necessary, target site sections. </strong><br />
If an entire website isn&#8217;t relevant to your ads, you have the option to target only the relevant <a href="https://adwords.google.com/support/bin/answer.py?answer=25716">parts of the site</a>. This option may be appropriate for you if the site covers a variety of topics, not all of which are relevant to your advertising. For example, if you sell kitchen appliances, you might choose to advertise only on the food section of a news site rather than placing ads across the entire site.</p>
<table border="0" cellpadding="2" cellspacing="0" width="98%">
<tr>
<td bgcolor="#c6d7cf"><a title="create" name="create"></a><strong><font color="#ffffff"> </font>4. Create straightforward, targeted ads.</strong></td>
</tr>
</table>
<p><em>   The content of your ads should capture users&#8217; attention and set your business apart.</em></p>
<p><strong>Include keywords in your ad text (for keyword-targeted ads).</strong><br />
Include your keywords in your ad text (especially the title) to show users that your ad relates to their search. If your ad shows when a user searches on a keyword in your ad group, the keyword will appear in bold in your ad text. Also, users tend to search for products and services, so avoid using your company name in the ad title unless your goal is brand/company name recognition.</p>
<p><strong>Create simple, enticing ads. </strong><br />
What makes your product or service stand out from your competitors? Highlight these key differentiating points in your ad. Be sure to describe any unique features or promotions you offer.</p>
<p><strong>Use a strong call-to-action. </strong><br />
Your ad should convey a call-to-action along with the benefits of your product or service. A call-to-action encourages users to click on your ad and ensures they understand exactly what you expect them to do when they reach your landing page. Some call-to-action phrases are <em>Buy, Sell, Order, Browse, Sign up,</em> and <em>Get a Quote</em>.</p>
<p><strong>Test multiple ads in each ad group. </strong><br />
Experiment with different offers and call-to-action phrases to see what&#8217;s most effective for your advertising goals. Our system automatically <a href="https://adwords.google.com/support/bin/answer.py?answer=6299">rotates ads</a> within an ad group and shows the better-performing ad more often.</p>
<table border="0" cellpadding="2" cellspacing="0" width="98%">
<tr>
<td bgcolor="#c6d7cf"><a title="optimize" name="optimize"></a><strong><font color="#ffffff"> </font>5. Optimize your website for conversions.</strong></td>
</tr>
</table>
<p><em>Ultimately, your website determines how well your ads convert, so be sure it&#8217;s designed to let users complete the action you want them to take. </em></p>
<p><strong>Point users to the right landing page.</strong><br />
Typical internet users decide quickly whether to stay on a website or move on to another. When users click on your ad, they should arrive at a landing page clearly displaying the information or product offered in your ad. If users don&#8217;t immediately find what prompted them to click on your ad, they&#8217;re more likely to leave your site without converting.</p>
<p><strong>Evaluate your site design.</strong><br />
Take a close look at your site&#8217;s overall layout and functionality. Sites that are attractive, easy to navigate, and informative tend to be more profitable. You might consider using <a href="https://adwords.google.com/support/bin/topic.py?topic=1591">Google Analytics</a> to get a better idea of how well your site is working.</p>
<p><strong>Keep the user experience in mind.</strong><br />
As you design or redesign your landing page and website, make the user experience a high priority. For example:</p>
<ul>
<li>Place important information and images on the top left, where the eye naturally goes first.</li>
<li>Help people get what they want in three clicks or fewer.</li>
<li>Cut out popups and popunders.</li>
<li>Create a simple process for users to complete transactions.</li>
</ul>
<p>Read our <a href="https://adwords.google.com/support/bin/answer.py?answer=47884">guidelines for landing page and site quality</a> to learn more about providing a quality user experience for your visitors.</p>
<table border="0" cellpadding="2" cellspacing="0" width="98%">
<tr>
<td bgcolor="#c6d7cf"><a title="track" name="track"></a><strong><font color="#ffffff"> </font>6. Track your account performance.</strong></td>
</tr>
</table>
<p><em>Monitoring your results allows you to ensure you&#8217;re getting a good return on your investment.</em></p>
<p><strong>Check your account statistics.</strong><br />
Your CTR, minimum bid, and keyword status are good initial indicators of how well your ads are performing. Your <a href="https://adwords.google.com/support/bin/topic.py?topic=7077">account statistics</a> are reported at the campaign, ad group, and keyword or site levels. They include clicks, impressions, CTR, average CPC or CPM, cost, average position, conversion rate, and cost-per-conversion.</p>
<p><strong>Create reports. </strong><br />
You can <a href="https://adwords.google.com/support/bin/answer.py?answer=29175">create custom reports</a> that tell you exactly what statistics you want to know, from the campaign level to the keyword or site level.</p>
<p><strong>Use web analytics.</strong><br />
<a href="https://adwords.google.com/support/bin/topic.py?topic=1591">Google Analytics</a> helps you analyze what people are doing on your site. Detailed information about user behavior can help you create more targeted and effective landing pages.</p>
<table border="0" cellpadding="2" cellspacing="0" width="98%">
<tr>
<td bgcolor="#c6d7cf"><a title="test" name="test"></a><strong><font color="#ffffff"> </font>7. Test and modify your campaigns to get the results you want.</strong></td>
</tr>
</table>
<p><em>Optimizing your campaigns regularly will help you keep up with users and market trends and ultimately reach your advertising goals. </em></p>
<p><strong>Evaluate your campaign performance and make changes as necessary. </strong><br />
Allow your ad performance to educate you about effective strategies for achieving your goals. As you observe your ads over time, you might notice things that are working especially well (or not so well). For example, if you find users aren&#8217;t responding to a particular call-to-action in your ad text, delete that ad and try something else. You can find instructions for editing your account settings <a href="https://adwords.google.com/support/bin/topic.py?topic=7023">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://articles.seoperfectcart.com/adwords-keywords-are-inactive-for-search-raise-bid-27.htm/feed</wfw:commentRss>
		</item>
		<item>
		<title>Blocking bad BOTS!</title>
		<link>http://articles.seoperfectcart.com/blocking-bad-bots-25.htm</link>
		<comments>http://articles.seoperfectcart.com/blocking-bad-bots-25.htm#comments</comments>
		<pubDate>Wed, 27 Jun 2007 06:25:08 +0000</pubDate>
		<dc:creator>alterego</dc:creator>
		
		<category><![CDATA[Search Engines]]></category>

		<category><![CDATA[Server]]></category>

		<guid isPermaLink="false">http://articles.seoperfectcart.com/blocking-bad-bots-25.htm</guid>
		<description><![CDATA[Blocking robots using robots.txt or IP addresses are both bad ideas.
Bad robots generally do not pay attention to robots.txt.
Blocking IP addresses as some have suggested has all kinds repercussions.
The following suggestings should help &#8230;..

Normally bots will not change thier name very often so use the following in you
.htaccess file in your root directory and deny [...]]]></description>
			<content:encoded><![CDATA[<p>Blocking robots using robots.txt or IP addresses are both bad ideas.<br />
Bad robots generally do not pay attention to robots.txt.<br />
Blocking IP addresses as some have suggested has all kinds repercussions.</p>
<p>The following suggestings should help &#8230;..</p>
<p><span id="more-25"></span><br />
Normally bots will not change thier name very often so use the following in you<br />
.htaccess file in your root directory and deny all from inner directories except for you local ips.</p>
<p>Using ModRewrite {Apache}</p>
<p>If the string or regular expression matches the user-agent HTTP header it will send them to a forbidden page</p>
<div class="codesnip-container" >RewriteEngine On</p>
<p>RewriteCond %{HTTP_USER_AGENT} ^Twiceler [OR]<br />
RewriteCond %{HTTP_USER_AGENT} ^Xaldon\ WebSpider [OR]<br />
RewriteCond %{HTTP_USER_AGENT} ^Baiduspider<br />
RewriteRule ^.* - [F,L]</p></div>
<p>you can change the RewriteRule and send them somewhere else like a non-linked page<br />
that records hits and user-agents therefore letting you know how many bad bots are taking<br />
the bait! You will have to use PHP and MySQL if you do not want to save it in a file.</p>
<p>If you do not have ModRewrite the following list should help and I believe that the following method uses less server resources.</p>
<div class="codesnip-container" >SetEnvIfNoCase user-agent  &#8220;^Twiceler&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^Baiduspider&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^BlackWidow&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^Bot\ mailto:craftbot@yahoo.com&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^ChinaClaw&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^Custo&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^DISCo&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^Download\ Demon&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^eCatch&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^EirGrabber&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^EmailSiphon&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^EmailWolf&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^Express\ WebPictures&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^ExtractorPro&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^EyeNetIE&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^FlashGet&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^GetRight&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^GetWeb!&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^Go!Zilla&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^Go-Ahead-Got-It&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^GrabNet&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^Grafula&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^HMView&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  â€œHTTrackâ€ bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^Image\ Stripper&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^Image\ Sucker&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;Indy\ Library&#8221; [NC,OR]<br />
SetEnvIfNoCase user-agent  &#8220;^InterGET&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^Internet\ Ninja&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^JetCar&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^JOC\ Web\ Spider&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^larbin&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^LeechFTP&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^Mass\ Downloader&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^MIDown\ tool&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^Mister\ PiX&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^Navroad&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^NearSite&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^NetAnts&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^NetSpider&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^Net\ Vampire&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^NetZIP&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^Octopus&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^Offline\ Explorer&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^Offline\ Navigator&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^PageGrabber&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^Papa\ Foto&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^pavuk&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^pcBrowser&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^RealDownload&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^ReGet&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^SiteSnagger&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^SmartDownload&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^SuperBot&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^SuperHTTP&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^Surfbot&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^tAkeOut&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^Teleport\ Pro&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^VoidEYE&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^Web\ Image\ Collector&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^Web\ Sucker&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^WebAuto&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^WebCopier&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^WebFetch&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^WebGo\ IS&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^WebLeacher&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^WebReaper&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^WebSauger&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^Website\ eXtractor&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^Website\ Quester&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^WebStripper&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^WebWhacker&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^WebZIP&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^Widow&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^WWWOFFLE&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^Xaldon\ WebSpider&#8221; bad_bot=1<br />
SetEnvIfNoCase user-agent  &#8220;^Zeus&#8221; bad_bot=1<br />
<filesmatch><br />
Order Allow,Deny<br />
Allow from all<br />
Deny from env=bad_bot<br />
</filesmatch></div>
<p>Please comment on this issue with suggestions so that we might expand it.</p>
]]></content:encoded>
			<wfw:commentRss>http://articles.seoperfectcart.com/blocking-bad-bots-25.htm/feed</wfw:commentRss>
		</item>
		<item>
		<title>PHPnuke 7.9 3.2 javascript fix</title>
		<link>http://articles.seoperfectcart.com/phpnuke-79-32-javascript-fix-24.htm</link>
		<comments>http://articles.seoperfectcart.com/phpnuke-79-32-javascript-fix-24.htm#comments</comments>
		<pubDate>Wed, 20 Jun 2007 05:58:29 +0000</pubDate>
		<dc:creator>alterego</dc:creator>
		
		<category><![CDATA[PHP Toolbox 101]]></category>

		<guid isPermaLink="false">http://articles.seoperfectcart.com/phpnuke-79-32-javascript-fix-24.htm</guid>
		<description><![CDATA[Have you lost the ability to display html or javascript or google adsense banners in phpnuke 7.9 3.2 patched?
Change line 1458 in mainfile.php from

1458 $ad_code = filter($row2['ad_code'], "nohtml");

to
1458 $ad_code = $row2['ad_code'];

this will re-enable your banners in 7.9 3.2 patched
Changing Line 227 will allow you to add html in the Content pages

$Default_Theme = filter($row["Default_Theme'], "nohtml");

to

$Default_Theme = [...]]]></description>
			<content:encoded><![CDATA[<p><em>Have you lost the ability to display html or javascript or google adsense banners in phpnuke 7.9 3.2 patched?</em></p>
<p><em>Change line 1458 in mainfile.php from</em></p>
<pre>
<div class="codesnip-container" ><em>1458 $ad_code = filter($row2['ad_code'], "nohtml");</em>

<em>to
1458 $ad_code = $row2['ad_code'];</em></div>
</pre>
<p><em>this will re-enable your banners in 7.9 3.2 patched</em></p>
<p><em>Changing Line 227 will allow you to add html in the Content pages</em></p>
<pre>
<div class="codesnip-container" ><em>$Default_Theme = filter($row["Default_Theme'], "nohtml");</em>

<em>to</em>

<em>$Default_Theme = filter($row['Default_Theme']);</em></div>
</pre>
<p><em>Use these fixes with care I am sure there may be security issues with the fixes</em></p>
]]></content:encoded>
			<wfw:commentRss>http://articles.seoperfectcart.com/phpnuke-79-32-javascript-fix-24.htm/feed</wfw:commentRss>
		</item>
		<item>
		<title>Secret to making transparent PNG images without IE javascript fix</title>
		<link>http://articles.seoperfectcart.com/secret-to-making-transparent-png-images-without-ie-javascript-fix-9.htm</link>
		<comments>http://articles.seoperfectcart.com/secret-to-making-transparent-png-images-without-ie-javascript-fix-9.htm#comments</comments>
		<pubDate>Tue, 12 Jun 2007 23:52:21 +0000</pubDate>
		<dc:creator>alterego</dc:creator>
		
		<category><![CDATA[HTML &amp; CSS]]></category>

		<guid isPermaLink="false">http://articles.seoperfectcart.com/secret-to-making-transparent-png-images-without-ie-javascript-fix-9.htm</guid>
		<description><![CDATA[Most web designers are still using gifs due to the fact that pngs are not transparent on Internet Explorer. There are fixes throughout the internet but I have discovered a fix that does not require any CSS or HTML or JAVASCRIPT programming.
So whats the secret you ask?

First of all I have tested this in both [...]]]></description>
			<content:encoded><![CDATA[<p>Most web designers are still using gifs due to the fact that pngs are not transparent on Internet Explorer. There are fixes throughout the internet but I have discovered a fix that does not require any <strong>CSS</strong> or <strong>HTML</strong> or <strong>JAVASCRIPT</strong> programming.</p>
<p>So whats the secret you ask?</p>
<p><span id="more-9"></span></p>
<p>First of all I have tested this in both PaintShopPro and Fireworks it may also work in other software with some tweaking.</p>
<p>The following steps apply to Paint Shop Pro</p>
<ol>
<li>When you create your png use a black background or white background, depending on the color scheme (not integral to fix).</li>
<li>You can create the image using true color but it will be reduced to 256 colors when you are done.</li>
<li>Be sure to flatten all your layers.</li>
<li>Choose  &#8211;&gt;FILE &#8211;&gt;EXPORT&#8211;&gt;PNG OPTIMIZER</li>
<li>Set the colors tab to Palette Base, Optimized Octree and 256 colors as in the sample below</li>
<li>Colors Tab<br />
<img src="http://articles.seoperfectcart.com/wp-content/uploads/2007/05/colors.jpg" alt="colors.jpg" /></li>
<li>In the Transparency Tab choose: Single Color Transparency, Areas that match this color ( choose the color that matches your background color and a tolorence of 1 or more)</li>
<li>Transparency<br />
<img src="http://articles.seoperfectcart.com/wp-content/uploads/2007/05/transparency.jpg" alt="transparency.jpg" /></li>
<li>In the Areas that match this color section make sure that the colorhere matches your background color and set the tolerance to 1.</li>
<li>Thats it click ok and save it</li>
</ol>
<ul>
<li><em><strong>If you are viewing this page on Mozilla or Firefox you wont be able to tell the difference but in IE you can.</strong></em></li>
</ul>
<p>PNG using standard alpha method</p>
<p><img src="http://articles.seoperfectcart.com/wp-content/uploads/2007/05/killerpignot.png" alt="killerpignot.png" /></p>
<p>PNG using Pallet-Based Method</p>
<p><img src="http://articles.seoperfectcart.com/wp-content/uploads/2007/05/killerpig.png" alt="killerpig.png" /></p>
<p>If you want to use 24-bit PNG images with alpha channel transparency.,    unfortunately Internet Explorer contains a well documented bug that messes up    the transparency of these type of images. The following is a work-around    fix for this issue.  The fix does require using javascript.</p>
<p>Create a folder and call it &#8216;/scripts&#8217; in your root directory</p>
<p>create a file and call it fixpng.js in this folder and add the following to it.</p>
<div class="codesnip-container" >&lt;!&#8211;[if gte IE 5.5000]&gt;<br />
&lt;script language=&#8221;JavaScript&#8221;&gt; var ie55up = true &lt;/script&gt;<br />
&lt;![endif]&#8211;&gt;<br />
&lt;script language=&#8221;JavaScript&#8221;&gt;<br />
function fixPNG(myImage) // correctly handle PNG transparency in Win IE 5.5 or higher.<br />
{<br />
if (window.ie55up)<br />
{<br />
var imgID = (myImage.id) ? &#8220;id=&#8217;&#8221; + myImage.id + &#8220;&#8216; &#8221; : &#8220;&#8221;<br />
var imgClass = (myImage.className) ? &#8220;class=&#8217;&#8221; + myImage.className + &#8220;&#8216; &#8221; : &#8220;&#8221;<br />
var imgTitle = (myImage.title) ? &#8220;title=&#8217;&#8221; + myImage.title + &#8220;&#8216; &#8221; : &#8220;title=&#8217;&#8221; + myImage.alt + &#8220;&#8216; &#8221;<br />
var imgStyle = &#8220;display:inline-block;&#8221; + myImage.style.cssText<br />
var strNewHTML = &#8220;&lt;span &#8221; + imgID + imgClass + imgTitle<br />
strNewHTML += &#8221; style=\&#8221;" + &#8220;width:&#8221; + myImage.width + &#8220;px; height:&#8221; + myImage.height + &#8220;px;&#8221; + imgStyle + &#8220;;&#8221;<br />
strNewHTML += &#8220;filter:progid:DXImageTransform.Microsoft.AlphaImageLoader&#8221;<br />
strNewHTML += &#8220;(src=&#8217;&#8221; + myImage.src + &#8220;&#8216;, sizingMethod=&#8217;scale&#8217;);\&#8221;&gt;&lt;/span&gt;&#8221;<br />
myImage.outerHTML = strNewHTML<br />
}<br />
}</div>
<p>Between the &lt;head and the &lt;/head&gt; tags add the following:</p>
<div class="codesnip-container" >&lt;script language=&#8221;javascript&#8221; type=&#8221;text/javascript&#8221; src=&#8221;/scripts/fixpng.js&#8221;&gt;&lt;/script&gt;</div>
<p>Now whenever you load any 24-bit png image you must add the following:</p>
<div class="codesnip-container" >onload=&#8221;fixPNG(this)&#8221;</p>
<p>example:    &lt;img src=&#8221;24bitimage.png&#8221;  onload=&#8221;fixPNG(this)&#8221; /&gt;</p></div>
]]></content:encoded>
			<wfw:commentRss>http://articles.seoperfectcart.com/secret-to-making-transparent-png-images-without-ie-javascript-fix-9.htm/feed</wfw:commentRss>
		</item>
	</channel>
</rss>
