<?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"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>New life in Adelaide &#187; php_mysql_js_css</title>
	<atom:link href="http://www.hatoyu.com/category/php_mysql_js_css/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.hatoyu.com</link>
	<description>Live in Adelaide</description>
	<lastBuildDate>Sat, 26 Jun 2010 12:37:08 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>The Definitive Guide to Magento</title>
		<link>http://www.hatoyu.com/2010/04/15/the-definitive-guide-to-magento/</link>
		<comments>http://www.hatoyu.com/2010/04/15/the-definitive-guide-to-magento/#comments</comments>
		<pubDate>Thu, 15 Apr 2010 12:36:03 +0000</pubDate>
		<dc:creator>james</dc:creator>
				<category><![CDATA[php_mysql_js_css]]></category>

		<guid isPermaLink="false">http://www.hatoyu.com/?p=1326</guid>
		<description><![CDATA[It seems a long time no see. I am so busy to keep the Adelaide Cartridge Company&#8217;s business going.It has been five month from we bought this small business.
Now I want to set up a online shop for ACC, www.kartridge.com base on the open source e-commerce platform Magento. 

I download the this book from hotfile.com [...]]]></description>
			<content:encoded><![CDATA[<p>It seems a long time no see. I am so busy to keep the Adelaide Cartridge Company&#8217;s business going.It has been five month from we bought this small business.</p>
<p>Now I want to set up a online shop for ACC, <a href="http://www.kartridge.com">www.kartridge.com</a> base on the open source e-commerce platform Magento. </p>
<p><img src="http://www.hatoyu.com/wp-content/uploads/2010/04/9781430272298.gif" alt="9781430272298" title="9781430272298" width="125" height="165" class="alignnone size-full wp-image-1328" /></p>
<p>I download the this book from hotfile.com and print it on our Fuji-Xerox DC450 and I like read the book on the paper and I can review a lot of thing on the paper.</p>
<p>But it is still very hard to read the book very quickly even I chat with my customer everyday in English.I hope I can finish this book in one week because I need to launch the ACC online shop before May 2010.<br />
<span id="more-1326"></span></p>
<p>CHAPTER 1<br />
Magento is the use of Zend Framework.This allows MVC which I am not good at and I want to know long long ago. I hope this time I can use ZF easily.Magento has two versions, one is opensource community version under OSL V3 and the other one is enterprise version under commercial license. </p>
<p>Magento has a six months beta for their first version and v1.0 released at March 31,2008. a young boy in the Internet, at that time I have dream to move to Australia and do something useless in web based customer relationship software &#8211; Macacus a dead project. </p>
<p>Zend: Magento&#8217;s workhorse, Zend Framework built-in at Zend studio and I have not successfully run it even once. It seems cake-PHP easy than ZF.   </p>
<p>Why Magento?<br />
1. Multiple web site.<br />
2. language pack,tax rate ,a lot of currencies<br />
3. Layered navigation<br />
4. Built -in web services SOAP/XML-RPC<br />
5. Very good SEO<br />
6. Multiple ship address<br />
7. Several reports built-in<br />
8. MVC</p>
<p>Why I choose Magento?<br />
1. Very very good at SEO<br />
2. A fontis Australia extension easy to run a online shop in Australia<br />
3. Open source<br />
4. Very good customer online shop experience in a Magento shop<br />
5. Maybe I can got some job at Magento develop like write some commercial extension.I got 100 US Dollars  at 68 classified one year ago.<br />
6. SSL ready.</p>
<p>CHAPTER 2</p>
<p>Some time installing Magento is very horrible thing, the longest time I installed Magento spent 8 hours. It&#8217;s the most problem for Magento, very hard to set-up a new website.</p>
<p>But I can understand the problem because Magento is developed for the guy good at Linux or BSD, If you install the Magento at your server with SSH. It&#8217;s should be very easy and you will find it you have ssh you can do a lot of thing in Magento.</p>
<p>I am so sorry for that I just have server in China and very slowly to connect in Adelaide. Now I just got a website using a web-hosting plan at a West-Australia company. </p>
<p>Requirements:<br />
PHP 5.20 + Mysql 4.1.20 very new platform and I like it.<br />
This book is for Magento 1.3.2.1 but now the Magento 1.4.0.1 has been released and fortunately I use the newest one this time.</p>
<p>Sample data 1.2.0 should be imported before install Magento use phpMyadmin or mysql client.</p>
<p>CHAPTER 3</p>
<p>The demo homepage include a static block to show the best selling product. Just order by best value? I have a rough idea about it.</p>
<p>I can develop a random welcome message extension and an Ajax search suggestion like google.com.</p>
<p>Magento has ability to configure the search terms connect directly to some special pages, that&#8217;s an amazing function.</p>
<p>Each category and sub category has a landing page you can customized.  </p>
]]></content:encoded>
			<wfw:commentRss>http://www.hatoyu.com/2010/04/15/the-definitive-guide-to-magento/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>mysql has not support regexp_replace function</title>
		<link>http://www.hatoyu.com/2009/04/29/mysql-has-not-support-regexp_replace-function/</link>
		<comments>http://www.hatoyu.com/2009/04/29/mysql-has-not-support-regexp_replace-function/#comments</comments>
		<pubDate>Wed, 29 Apr 2009 02:45:19 +0000</pubDate>
		<dc:creator>james</dc:creator>
				<category><![CDATA[php_mysql_js_css]]></category>

		<guid isPermaLink="false">http://www.hatoyu.com/?p=1199</guid>
		<description><![CDATA[These days I want to do some car owner database clearance.
I want to replace the car brand only use Chinese name like &#8220;福特福克斯&#8221; not &#8220;福特福克斯2.0&#8243;；
So  I write a SQL statement  and only delete 0 or 1 :

update namecard set brand = replace(brand,"[^\u4e00-\u9fa5]","");
SELECT brand , replace(brand,brand REGEXP"[\u4e00-\u9fa5]","-") from namecard limit 0,100;

I search some times [...]]]></description>
			<content:encoded><![CDATA[<p>These days I want to do some car owner database clearance.<br />
I want to replace the car brand only use Chinese name like &#8220;福特福克斯&#8221; not &#8220;福特福克斯2.0&#8243;；<br />
So  I write a SQL statement  and only delete 0 or 1 :</p>
<pre lang="SQL">
update namecard set brand = replace(brand,"[^\u4e00-\u9fa5]","");
SELECT brand , replace(brand,brand REGEXP"[\u4e00-\u9fa5]","-") from namecard limit 0,100;
</pre>
<p>I search some times at Google and Baidu to find the how to resolve the problem,But it&#8217;s a bad news MYSQL can not support regexp_replace function like ORACLE.<br />
REGEXP only return 0,1 means true or false.</p>
<p>The last method maybe use PHP.<br />
<span id="more-1199"></span></p>
<pre lang="PHP">
<?php<br />
define("DBSERVER", "localhost");<br />
define("DBNAME", "carowner");<br />
define("DBUSER", "root");<br />
define("DBPASSWORD", "tina0913");<br />
define("PERPAGE", "1000");</p>
<p>$arrCarOwner = listRegexp();<br />
if (count($arrCarOwner) > 0) {<br />
	updateDatabase($arrCarOwner);<br />
	$int = $_REQUEST['PB_page'] + 1;<br />
	echo '<html><br />
<META http-equiv="Refresh" content="1; url=http://localhost/macacus/car_owner.php?PB_page=' . $int . '"><br />
<body><br />
' . $int . '<br />
</body><br />
</html>';<br />
} else {<br />
	echo "Finished";<br />
}</p>
<p>function updateDatabase ($arrCarOwner)<br />
{<br />
	foreach ($arrCarOwner as $arrCarOwner) {<br />
		$dbh = &#038; db_conn();<br />
		$brand = regexp_replace($arrCarOwner['brand']);<br />
		$strQuery = "UPDATE `namecard` SET<br />
		 `brand` = '" . $brand . "'<br />
		 WHERE (`id` = '" . ($arrCarOwner['id']) . "')";<br />
		$result = $dbh->query($strQuery);<br />
	}<br />
	return TRUE;<br />
}</p>
<p>function regexp_replace ($str)<br />
{<br />
	$pattern = '/[u4e00-u9fa5]/';<br />
	$replace = "";<br />
	$str = preg_replace($pattern, $replace, $str);<br />
	return $str;<br />
}</p>
<p>function listRegexp ()<br />
{<br />
	if (isset($_REQUEST['PB_page'])) {<br />
		$intOffset = ($_REQUEST['PB_page'] - 1) * PERPAGE;<br />
	} else {<br />
		$intOffset = 0;<br />
	}</p>
<p>	$dbh = &#038; db_conn();<br />
//	$strQuery = 'SELECT namecard.id,namecard.brand FROM namecard';<br />
	$strQuery = 'SELECT namecard.id,namecard.brand FROM namecard WHERE brand like ';<br />
	$strQuery .= " LIMIT " . $intOffset . "," . PERPAGE;<br />
	$sth = $dbh->prepare($strQuery);<br />
	$sth->execute();<br />
	$result = $sth->fetchAll(PDO::FETCH_ASSOC);<br />
	return $result;<br />
}</p>
<p>function &#038;db_conn ($dbuser = null, $dbname = null, $pass = null, $server = null)<br />
{<br />
	if (!$dbuser) {<br />
		$dbuser = DBUSER;<br />
	}<br />
	if (!$dbname) {<br />
		$dbname = DBNAME;<br />
	}<br />
	if (!$pass) {<br />
		$pass = DBPASSWORD;<br />
	}<br />
	if (!$server) {<br />
		$server = DBSERVER;<br />
	}</p>
<p>	$option = array (PDO::ATTR_PERSISTENT => TRUE);<br />
	try {<br />
		$db = new PDO('mysql:host=' . $server . ';dbname=' . $dbname, $dbuser, $pass, $option);<br />
		$db->exec('SET NAMES UTF8');<br />
	} catch (PDOException $e) {<br />
		echo $e->getMessage();<br />
		die();<br />
	}<br />
	return $db;<br />
}</p>
<p>?></p>
<pre>
]]></content:encoded>
			<wfw:commentRss>http://www.hatoyu.com/2009/04/29/mysql-has-not-support-regexp_replace-function/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>First income from software license</title>
		<link>http://www.hatoyu.com/2009/04/02/first-income-from-software-license/</link>
		<comments>http://www.hatoyu.com/2009/04/02/first-income-from-software-license/#comments</comments>
		<pubDate>Thu, 02 Apr 2009 02:54:40 +0000</pubDate>
		<dc:creator>james</dc:creator>
				<category><![CDATA[php_mysql_js_css]]></category>

		<guid isPermaLink="false">http://www.hatoyu.com/?p=1180</guid>
		<description><![CDATA[Yesterday David tell me he sell a license of Location Filter module at templatecodes.com and it&#8217;s my fisrt sell license of software I developed.
Previous I only sell the software as a project case by case.
I think it&#8217;s a start of my developer life.I want to develop much more useful software and earn much more money.
Only [...]]]></description>
			<content:encoded><![CDATA[<p>Yesterday David tell me he sell a license of <a href="http://www.templatecodes.com/products/modules/filter-4.1.php">Location Filter</a> module at <a href="http://www.templatecodes.com/products/modules/filter-4.1.php">templatecodes.com </a>and it&#8217;s my fisrt sell license of software I developed.<br />
Previous I only sell the software as a project case by case.<br />
I think it&#8217;s a start of my developer life.I want to develop much more useful software and earn much more money.</p>
<p>Only half of US$ 29.95.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.hatoyu.com/2009/04/02/first-income-from-software-license/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Country Filter Module of 68 Classifieds</title>
		<link>http://www.hatoyu.com/2009/03/30/country-filter-module-of-68-classifieds/</link>
		<comments>http://www.hatoyu.com/2009/03/30/country-filter-module-of-68-classifieds/#comments</comments>
		<pubDate>Mon, 30 Mar 2009 03:32:57 +0000</pubDate>
		<dc:creator>james</dc:creator>
				<category><![CDATA[php_mysql_js_css]]></category>

		<guid isPermaLink="false">http://www.hatoyu.com/?p=1178</guid>
		<description><![CDATA[CountryFilter is a module for 68 Classifieds a professionally developed PHP Classifieds script.
Demo:
Download:
CountryFilter Module V2.0 Release For  68 Classifieds V4.1.1 V4.1.2  35KB
License
GNU General Public License v3
Howto:

How to I install a 68 Classifieds Location Filter Module?
Notice: It is a third-party module, so please backup your system.
Step1 :
Download the Location Filter Module and unzip. You [...]]]></description>
			<content:encoded><![CDATA[<p><strong>CountryFilter</strong> is a module for <a href="http://www.68classifieds.com/">68 Classifieds</a> a professionally developed PHP Classifieds script.</p>
<p><strong>Demo:</strong></p>
<p><strong>Download:</strong></p>
<p><a href="http://www.ourcomputer.com.au/68C_modules/countryfilter.rar">CountryFilter Module V2.0 Release For  68 Classifieds V4.1.1 V4.1.2 </a> 35KB</p>
<p><strong>License</strong><br />
<a href="http://www.gnu.org/licenses/gpl.html">GNU General Public License v3</a></p>
<div id="attachment_68" class="wp-caption alignnone" style="width: 310px"><img src="http://www.ourcomputer.com.au/wordpress/wp-content/uploads/2009/03/countryfilter-300x236.jpg" alt="Country Filter Thumb" title="countryfilter" width="300" height="236" class="size-medium wp-image-68" /><p class="wp-caption-text">Country Filter Thumb</p></div>
<p><strong>Howto:</strong><br />
<span id="more-1178"></span><br />
<strong>How to I install a 68 Classifieds Location Filter Module?</strong></p>
<p>Notice: It is a third-party module, so please backup your system.</p>
<p>Step1 :<br />
Download the Location Filter Module and unzip. You will find one folders:<br />
&#8216;locationfilter&#8217;.</p>
<p>Step2 :<br />
Upload the &#8216;locationfilter&#8217; folder to [your site]/modules/.</p>
<p>Step3:<br />
Active the module locationfilter and enjoy it.</p>
<p>Tips:<br />
1. You can modify locationfilter.js at /modules/locationfilter/include/locationfilter.js<br />
(lines 1 &#8211; 8 inclusive) to dictate thick box pop-up width and height and the title. eg:</p>
<pre lang="javascript">$('#dialog').dialog({
        autoOpen: false,
        width: 800,
        height: 200,
        title: "Choose Country:"
});</pre>
<p>2. You can change CSS elements in the /modules/locationfilter/css/location.css<br />
file including text sizing and columns that are presented in the thick box pop-up.<br />
3. You can active the country at settings/country settings and modify the order.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.hatoyu.com/2009/03/30/country-filter-module-of-68-classifieds/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Easycheckout Module of 68 Classifieds</title>
		<link>http://www.hatoyu.com/2009/03/26/easycheckout-module-of-68-classifieds/</link>
		<comments>http://www.hatoyu.com/2009/03/26/easycheckout-module-of-68-classifieds/#comments</comments>
		<pubDate>Thu, 26 Mar 2009 05:31:56 +0000</pubDate>
		<dc:creator>james</dc:creator>
				<category><![CDATA[php_mysql_js_css]]></category>

		<guid isPermaLink="false">http://www.hatoyu.com/?p=1176</guid>
		<description><![CDATA[Easycheckout is a module for 68 Classifieds a professionally developed PHP Classifieds script.
Support Site:
http://code.google.com/p/easycheckout/
Demo:
http://ourcomputer.com.au/68C_demo/
Download:
Eashcheckout Module V1.0 Beta For  68 Classifieds V4.1.x  2KB
License
GNU General Public License v3
Howto:
How to I install a 68 Classifieds Easycheckout Module?
Notice: It is a third-party module, so please backup your system.
Step1 :
Download the Easycheckout Module and unzip. You will find [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Easycheckout</strong> is a module for <a href="http://www.68classifieds.com/">68 Classifieds</a> a professionally developed PHP Classifieds script.</p>
<p><strong>Support Site:</strong><br />
<a href="http://code.google.com/p/easycheckout/">http://code.google.com/p/easycheckout/</a></p>
<p><strong>Demo:</strong><br />
<a href="http://ourcomputer.com.au/68C_demo/">http://ourcomputer.com.au/68C_demo/</a></p>
<p><strong>Download:</strong></p>
<p><a href="http://www.ourcomputer.com.au/68C_modules/easycheckoutV1.rar">Eashcheckout Module V1.0 Beta For  68 Classifieds V4.1.x </a> 2KB</p>
<p><strong>License</strong><br />
<a href="http://www.gnu.org/licenses/gpl.html">GNU General Public License v3</a></p>
<p><strong>Howto:</strong><br />
How to I install a 68 Classifieds Easycheckout Module?</p>
<p>Notice: It is a third-party module, so please backup your system.</p>
<p>Step1 :<br />
Download the Easycheckout Module and unzip. You will find one folders:<br />
&#8216;easycheckout&#8217;.</p>
<p>Step2 :<br />
Upload the &#8216;easycheckout&#8217; folder to [your site]/modules/.</p>
<p>Step3:<br />
Active the module easycheckout and enjoy it.</p>
<blockquote><p>Using easycheckout module let you customer only 3 page checkout process.<br />
You can have only 2 page checkout page if you have only one product and the product is not allow photos.</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.hatoyu.com/2009/03/26/easycheckout-module-of-68-classifieds/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Location Filter Module of 68 Classifieds</title>
		<link>http://www.hatoyu.com/2009/03/18/location-filter-module-of-68-classifieds/</link>
		<comments>http://www.hatoyu.com/2009/03/18/location-filter-module-of-68-classifieds/#comments</comments>
		<pubDate>Wed, 18 Mar 2009 05:21:39 +0000</pubDate>
		<dc:creator>james</dc:creator>
				<category><![CDATA[php_mysql_js_css]]></category>

		<guid isPermaLink="false">http://www.hatoyu.com/?p=1166</guid>
		<description><![CDATA[Location Filter is a module for 68 Classifieds a professionally developed PHP Classifieds script.
Demo:
http://ourcomputer.com.au/68C_demo/
The site use the module:


Everest Classifieds
ClassieCentral
&#8230;&#8230;


Download:
Location Filter Module of 68 Classifieds V2.0 Release 33KB
Location Filter Module of 68 Classifieds V1.0 RC 33KB
License
Commercial
Price: $29.00






Speacial Thanks:
Chas Cleland
Update Log:


Use start jquery ui style instead of smoothness
Only use the 68 Classifieds default tpl_hook
And other clean up [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Location Filter</strong> is a module for <a href="http://www.68classifieds.com/">68 Classifieds</a> a professionally developed PHP Classifieds script.</p>
<p><strong>Demo:</strong><br />
<a href="http://ourcomputer.com.au/68C_demo/">http://ourcomputer.com.au/68C_demo/</a></p>
<p>The site use the module:</p>
<ul>
<li>
<ol><a href="http://www.8848.com.au/">Everest Classifieds</a></ol>
<ol><a href="http://www.classiecentral.com.au/">ClassieCentral</a></ol>
<ol>&#8230;&#8230;</ol>
</li>
</ul>
<p><strong>Download:</strong><br />
<a href="http://www.ourcomputer.com.au/68C_modules/locationfilterV2.rar">Location Filter Module of 68 Classifieds V2.0 Release</a> 33KB<br />
<a href="http://www.ourcomputer.com.au/68C_modules/locationfilter.rar">Location Filter Module of 68 Classifieds V1.0 RC</a> 33KB</p>
<p><strong>License</strong><br />
Commercial<br />
Price: $29.00</p>
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_s-xclick">
<input type="hidden" name="hosted_button_id" value="4048182">
<input type="image" src="https://www.paypal.com/en_US/i/btn/btn_buynowCC_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
<img alt="" border="0" src="https://www.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1"><br />
</form>

<p><strong>Speacial Thanks:</strong><br />
<a href="http://www.auscity.com">Chas Cleland</a></p>
<p><strong>Update Log:</strong></p>
<ul>
<li>
<ol>Use start jquery ui style instead of smoothness</ol>
<ol>Only use the 68 Classifieds default tpl_hook</ol>
<ol>And other clean up works &#8230;&#8230;</ol>
</li>
</ul>
<p><strong>Howto:</strong><br />
<span id="more-1166"></span><br />
<strong>How to I install a 68 Classifieds Location Filter Module?</strong></p>
<p>Notice: It is a third-party module, so please backup your system.</p>
<p>Step1 :<br />
Download the Location Filter Module and unzip. You will find one folders:<br />
&#8216;locationfilter&#8217;.</p>
<p>Step2 :<br />
Upload the &#8216;locationfilter&#8217; folder to [your site]/modules/.</p>
<p>Step3:<br />
Active the module locationfilter and enjoy it.</p>
<p>Tips:<br />
1. You can modify locationfilter.js at /modules/locationfilter/include/locationfilter.js<br />
(lines 1 &#8211; 8 inclusive) to dictate thick box pop-up width and height and the title. eg:</p>
<pre lang="javascript">$('#dialog').dialog({
        autoOpen: false,
        width: 800,
        height: 200,
        title: "Choose Region:"
});</pre>
<p>2. You can change CSS elements in the /modules/locationfilter/css/location.css<br />
file including text sizing and columns that are presented in the thick box pop-up.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.hatoyu.com/2009/03/18/location-filter-module-of-68-classifieds/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Map Adelaide8 API key</title>
		<link>http://www.hatoyu.com/2009/02/26/google-map-adelaide8-api-key/</link>
		<comments>http://www.hatoyu.com/2009/02/26/google-map-adelaide8-api-key/#comments</comments>
		<pubDate>Thu, 26 Feb 2009 03:37:49 +0000</pubDate>
		<dc:creator>james</dc:creator>
				<category><![CDATA[php_mysql_js_css]]></category>

		<guid isPermaLink="false">http://www.hatoyu.com/?p=1142</guid>
		<description><![CDATA[ABQIAAAAIJuHsuqcWTw5-G7AvBJkphQ3vLDj_eBzIbFCvvb2Hh9ujV-COhQlGUnYT_ZgdpAuNpsUGT9yINxVMQ
]]></description>
			<content:encoded><![CDATA[<p>ABQIAAAAIJuHsuqcWTw5-G7AvBJkphQ3vLDj_eBzIbFCvvb2Hh9ujV-COhQlGUnYT_ZgdpAuNpsUGT9yINxVMQ</p>
]]></content:encoded>
			<wfw:commentRss>http://www.hatoyu.com/2009/02/26/google-map-adelaide8-api-key/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ionCube loader 和 Zend Optimizer 共存</title>
		<link>http://www.hatoyu.com/2009/02/25/ioncube-loader-%e5%92%8c-zend-optimizer-%e5%85%b1%e5%ad%98/</link>
		<comments>http://www.hatoyu.com/2009/02/25/ioncube-loader-%e5%92%8c-zend-optimizer-%e5%85%b1%e5%ad%98/#comments</comments>
		<pubDate>Tue, 24 Feb 2009 15:04:27 +0000</pubDate>
		<dc:creator>james</dc:creator>
				<category><![CDATA[php_mysql_js_css]]></category>

		<guid isPermaLink="false">http://www.hatoyu.com/?p=1140</guid>
		<description><![CDATA[ionCube loader 和 Zend Optimizer 共存實際上必不難，
只要注意一下載入的先後優先順序 ionCube 一定要修先於 Zend 否則一定會失敗
詳細設定檔如下
[Zend]
zend_extension=/usr/local/ionCube/lib/ioncube_loader_lin_5.1.so
zend_extension_manager.optimizer=/usr/local/Zend/lib/Optimizer-3.3.3
zend_extension_manager.optimizer_ts=/usr/local/Zend/lib/Optimizer_TS-3.3.3
zend_optimizer.version=3.3.3
zend_extension=/usr/local/Zend/lib/ZendExtensionManager.so
zend_extension_ts=/usr/local/Zend/lib/ZendExtensionManager_TS.so
zend_optimizer.optimization_level=15
ionCube loader下載：http://www.ioncube.com/loaders.php
Zend Optimizer 下載：http://www.zend.com/en/products/guard/downloads
]]></description>
			<content:encoded><![CDATA[<p>ionCube loader 和 Zend Optimizer 共存實際上必不難，</p>
<p>只要注意一下載入的先後優先順序 ionCube 一定要修先於 Zend 否則一定會失敗</p>
<p>詳細設定檔如下</p>
<p>[Zend]<br />
zend_extension=/usr/local/ionCube/lib/ioncube_loader_lin_5.1.so<br />
zend_extension_manager.optimizer=/usr/local/Zend/lib/Optimizer-3.3.3<br />
zend_extension_manager.optimizer_ts=/usr/local/Zend/lib/Optimizer_TS-3.3.3<br />
zend_optimizer.version=3.3.3<br />
zend_extension=/usr/local/Zend/lib/ZendExtensionManager.so<br />
zend_extension_ts=/usr/local/Zend/lib/ZendExtensionManager_TS.so<br />
zend_optimizer.optimization_level=15</p>
<p>ionCube loader下載：<a href="http://www.ioncube.com/loaders.php">http://www.ioncube.com/loaders.php</a></p>
<p>Zend Optimizer 下載：<a href="http://www.zend.com/en/products/guard/downloads">http://www.zend.com/en/products/guard/downloads</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.hatoyu.com/2009/02/25/ioncube-loader-%e5%92%8c-zend-optimizer-%e5%85%b1%e5%ad%98/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ZendStudio for Eclipse 加装CDT与QT开发环境</title>
		<link>http://www.hatoyu.com/2008/12/23/zendstudio-for-eclipse-%e5%8a%a0%e8%a3%85cdt%e4%b8%8eqt%e5%bc%80%e5%8f%91%e7%8e%af%e5%a2%83/</link>
		<comments>http://www.hatoyu.com/2008/12/23/zendstudio-for-eclipse-%e5%8a%a0%e8%a3%85cdt%e4%b8%8eqt%e5%bc%80%e5%8f%91%e7%8e%af%e5%a2%83/#comments</comments>
		<pubDate>Tue, 23 Dec 2008 02:22:19 +0000</pubDate>
		<dc:creator>hatoyu</dc:creator>
				<category><![CDATA[php_mysql_js_css]]></category>
		<category><![CDATA[CDT]]></category>
		<category><![CDATA[QT]]></category>
		<category><![CDATA[zend studio]]></category>

		<guid isPermaLink="false">http://www.hatoyu.com/?p=830</guid>
		<description><![CDATA[这是一个比较绝的想法，受2个方面的启发：
1.ZendStudio可以装Aptana studio
2.Eclipse可以同时装 PDT和CDT与QT
所以就尝试了一下 ，Ubuntu下很顺利，Windows遇到点小问题：
单独安装了MinGW，再安装QT for win的时候提示MinGW找不到，所以卸载了MinGW，让QT自己又下载了MinGW，又是漫长的等待，只有挪威的站点可以下载，看来QT人缘不好啊。
为什么还需要下载MinGW的SourceCode啊，时间无限制的拉长了。
windows下Build Debug Labaries 始终是报错了，修改了无数的环境变量还是不能顺利Debug QT程序，C＋＋的Debug搞定了。
所以还是回到ubuntu下面，看来作C或者C＋＋的开发还是Linux最佳。

第一个用Eclipse CDT调试通过的QT程序段《C＋＋设计模式 基于Qt4开源夸平台开发框架》示例3-1居然有错，你吃得消那些编辑吧。

#include 
#include 
#include 
#include 

int main(int argc, char *argv[]) {
	QApplication a(argc, argv);
	QWidget wid;
	qDebug() ]]></description>
			<content:encoded><![CDATA[<p>这是一个比较绝的想法，受2个方面的启发：</p>
<blockquote><p>1.ZendStudio可以装Aptana studio<br />
2.Eclipse可以同时装 PDT和CDT与QT</p></blockquote>
<p>所以就尝试了一下 ，Ubuntu下很顺利，Windows遇到点小问题：</p>
<p>单独安装了MinGW，再安装QT for win的时候提示MinGW找不到，所以卸载了MinGW，让QT自己又下载了MinGW，又是漫长的等待，只有挪威的站点可以下载，看来QT人缘不好啊。</p>
<p>为什么还需要下载MinGW的SourceCode啊，时间无限制的拉长了。</p>
<p>windows下Build Debug Labaries 始终是报错了，修改了无数的环境变量还是不能顺利Debug QT程序，C＋＋的Debug搞定了。</p>
<p>所以还是回到ubuntu下面，看来作C或者C＋＋的开发还是Linux最佳。<br />
<span id="more-830"></span><br />
第一个用Eclipse CDT调试通过的QT程序段《C＋＋设计模式 基于Qt4开源夸平台开发框架》示例3-1居然有错，你吃得消那些编辑吧。</p>
<pre lang="cpp" line="1">
#include <QtGui>
#include <QApplication>
#include <QTextStream>
#include <QObject>

int main(int argc, char *argv[]) {
	QApplication a(argc, argv);
	QWidget wid;
	qDebug() << "sizeof widget: " << sizeof(wid) << " sizeof qappcaction: "
			<< sizeof(a);
	QString message;
	QTextStream buf(&#038;message);
	QObject obj;//书上这句没有的
	buf << "A QWidget is " << sizeof(wid) << " bytes." << endl;
	buf << "A QObject is " << sizeof(obj) << " bytes." << endl;
	buf << "A QApplication is " << sizeof(QApplication) << " bytes." << endl;
	qDebug()<<message;
	QLabel label(message);

	label.show();

	return a.exec();
}
</pre>
<p> Excample 4-1:</p>
<pre lang="cpp" line="1">
#include <QStringList>
#include <QDebug>
#include <cassert>

int main() {
	QString winter = "December , January , February";
	QString spring = "March , April , May";
	QString summer = "June , July , August";
	QString fall = "September , October , November";
	QStringList list;
	list << winter;
	list += spring;
	list.append(summer);
	list << fall;

	qDebug() << "The Spring months are: " << list[1];
	QString allmonths = list.join(",");
	qDebug() << allmonths;

	QStringList list2 = allmonths.split(",");
	assert(list2.size() == 12);

	foreach(QString str,list2) {
			qDebug() << QString("[%1]").arg(str);
		}

	for (QStringList::iterator it = list.begin(); it != list.end(); ++it) {
		QString current = *it;
		qDebug() << "[[" << current << "]]";
	}
	QListIterator<QString> itr(list);
	while (itr.hasNext()) {
		QString current = itr.next();
		qDebug() << "{" << current << "}";
	}

	return 0;
}
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.hatoyu.com/2008/12/23/zendstudio-for-eclipse-%e5%8a%a0%e8%a3%85cdt%e4%b8%8eqt%e5%bc%80%e5%8f%91%e7%8e%af%e5%a2%83/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Macacus CRM MSSQLSERVER数据导入MySQL PHP程序开发思路</title>
		<link>http://www.hatoyu.com/2008/12/17/macacus-crm-mssqlserver%e6%95%b0%e6%8d%ae%e5%af%bc%e5%85%a5mysql-php%e7%a8%8b%e5%ba%8f%e5%bc%80%e5%8f%91%e6%80%9d%e8%b7%af/</link>
		<comments>http://www.hatoyu.com/2008/12/17/macacus-crm-mssqlserver%e6%95%b0%e6%8d%ae%e5%af%bc%e5%85%a5mysql-php%e7%a8%8b%e5%ba%8f%e5%bc%80%e5%8f%91%e6%80%9d%e8%b7%af/#comments</comments>
		<pubDate>Wed, 17 Dec 2008 06:37:05 +0000</pubDate>
		<dc:creator>hatoyu</dc:creator>
				<category><![CDATA[php_mysql_js_css]]></category>
		<category><![CDATA[Macacus]]></category>

		<guid isPermaLink="false">http://www.hatoyu.com/?p=762</guid>
		<description><![CDATA[将近30万的数据要从MSSQL 转到MySQL，其中车险订单表要分拆为车辆表，订单表，订单险种表，礼品表。
所以估计最后分拆后的导好数据库大小会在2G左右，不知道这样倒需要多少时间。
因为有表的分拆，并且SQL导MySQL的时候出了点错，所以准备用PHP一条一条记录从MSSQL读出，然后在MySQL写入。
这样做的好处：逻辑清晰，保证不会出错。
坏处：处理速度，之前帮PIS 升PIS2 10多万的数据用了10几分钟，而且基本没有这么复杂的分拆。
PDO支持MSSQL：修改php.ini 文件重启APACHE，PHP数据库连接代码 ， 分页代码。
建立车险订单和客户资料的View ,把字段的中文名字都改成英文，这样避免了还要iconv转码的麻烦。

view ac 的SQL语句：

SELECT     dbo.车险订单.id AS aid, dbo.车险订单.保单号 AS oCommerceCode, dbo.车险订单.客户ID AS oCZid, dbo.车险订单.custid AS aCid,
                      dbo.车险订单.行驶证车主 AS aOwner, dbo.车险订单.[座位/吨位] AS aSeat, dbo.车险订单.使用性质 AS [...]]]></description>
			<content:encoded><![CDATA[<p>将近30万的数据要从MSSQL 转到MySQL，其中车险订单表要分拆为车辆表，订单表，订单险种表，礼品表。</p>
<p>所以估计最后分拆后的导好数据库大小会在2G左右，不知道这样倒需要多少时间。</p>
<p>因为有表的分拆，并且<a href="http://www.hatoyu.com/2008/12/16/sql-server%e5%af%bc%e5%85%a5%e6%95%b0%e6%8d%ae%e5%88%b0mysql-%e5%87%ba%e7%8e%b0%e5%b8%b8%e8%a7%84%e9%94%99%e8%af%af2147217891/">SQL导MySQL的时候出了点错</a>，所以准备用PHP一条一条记录从MSSQL读出，然后在MySQL写入。<br />
这样做的好处：逻辑清晰，保证不会出错。<br />
坏处：处理速度，之前帮PIS 升PIS2 10多万的数据用了10几分钟，而且基本没有这么复杂的分拆。</p>
<p>PDO支持MSSQL：修改php.ini 文件重启APACHE，<a href="http://www.hatoyu.com/2008/12/17/pdo-mssql-%E4%B8%8D%E6%94%AF%E6%8C%81%E4%B8%AD%E6%96%87%E8%A1%A8%E5%90%8D/#more-750">PHP数据库连接代码</a> ，<a href="http://www.hatoyu.com/2008/12/17/ms-sqlserver-%E5%88%86%E9%A1%B5%E8%AF%AD%E5%8F%A5/"> 分页代码</a>。</p>
<p>建立车险订单和客户资料的View ,把字段的中文名字都改成英文，这样避免了还要iconv转码的麻烦。<br />
<span id="more-762"></span><br />
view ac 的SQL语句：</p>
<pre lang="sql" line="1">
SELECT     dbo.车险订单.id AS aid, dbo.车险订单.保单号 AS oCommerceCode, dbo.车险订单.客户ID AS oCZid, dbo.车险订单.custid AS aCid,
                      dbo.车险订单.行驶证车主 AS aOwner, dbo.车险订单.[座位/吨位] AS aSeat, dbo.车险订单.使用性质 AS aUseType, dbo.车险订单.发动机号 AS aEngine,
                      dbo.车险订单.车牌号码 AS aLicense, dbo.车险订单.车架号码 AS aFrame, dbo.车险订单.厂牌型号 AS aModel,
                      dbo.车险订单.登记年月 AS aRegisterDate, dbo.车险订单.投保险种1 AS iName1, dbo.车险订单.保险金额1 AS iAmount1,
                      dbo.车险订单.保险费1 AS iCosts1, dbo.车险订单.投保险种2 AS iName2, dbo.车险订单.保险金额2 AS iAmount2, dbo.车险订单.保险费2 AS iCosts2,
                      dbo.车险订单.投保险种3 AS iName3, dbo.车险订单.保险金额3 AS iAmount3, dbo.车险订单.保险费3 AS iCosts3, dbo.车险订单.投保险种4 AS iName4,
                      dbo.车险订单.保险金额4 AS iAmount4, dbo.车险订单.保险费4 AS iCosts4, dbo.车险订单.投保险种5 AS iName5, dbo.车险订单.保险金额5 AS iAmount5,
                      dbo.车险订单.保险费5 AS iCosts5, dbo.车险订单.投保险种6 AS iName6, dbo.车险订单.保险金额6 AS iAmount6, dbo.车险订单.保险费6 AS iCosts6,
                      dbo.车险订单.投保险种7 AS iName7, dbo.车险订单.保险金额7 AS iAmount7, dbo.车险订单.保险费7 AS iCosts7, dbo.车险订单.投保险种8 AS iName8,
                      dbo.车险订单.保险金额8 AS iAmount8, dbo.车险订单.保险费8 AS iCosts8, dbo.车险订单.投保险种9 AS iName9, dbo.车险订单.保险金额9 AS iAmount9,
                      dbo.车险订单.保险费9 AS iCosts9, dbo.车险订单.保险费合计 AS oCosts, dbo.车险订单.投保险种10 AS iName0, dbo.车险订单.保险金额10 AS iAmount0,
                      dbo.车险订单.保险费10 AS iCosts0, dbo.车险订单.承保公司 AS oInsurer, dbo.车险订单.起保日期 AS oStartTime, dbo.车险订单.承保日期 AS oEndTime,
                      dbo.车险订单.datatype AS oType, dbo.车险订单.车船税 AS oTax, dbo.车险订单.费用总计 AS oTotal, dbo.车险订单.userid AS oUid,
                      dbo.车险订单.userdate AS oTime, dbo.车险订单.状态 AS oStatus, dbo.客户资料.id AS cid, dbo.客户资料.被保险人 AS cName,
                      dbo.客户资料.所属性质 AS cType, dbo.客户资料.[身份证/企业代码] AS cIdCode, dbo.客户资料.传真 AS cFax, dbo.客户资料.Email AS cEmail,
                      dbo.客户资料.送单地址 AS cAddress, dbo.客户资料.备注 AS cComment, dbo.客户资料.userid AS cStaffcode, dbo.客户资料.userdate AS cUtime,
                      dbo.客户资料.渠道 AS cChannel, dbo.客户资料.客户意愿 AS cDesire, dbo.客户资料.生日 AS cBirthday
FROM         dbo.车险订单 INNER JOIN
                      dbo.客户资料 ON dbo.车险订单.custid = dbo.客户资料.id
</pre>
<p>归零清空MySQL内的记录：</p>
<pre lang="sql">truncate tmcauto;
truncate tmtclient;
truncate tmctel;
truncate tmcorder;</pre>
<p>取所有记录数的SQL语句：</p>
<pre lang="sql">
SELECT COUNT(aid) AS intNum FROM ac;
</pre>
<p>添加用户函数，注意对strQuery的3次处理</p>
<pre lang="php" line="1">
function addClient ($arrOrder)
{
    $strQuery = "INSERT INTO tmtClient (cName,cType,cDataType,cIdCode,cAddress,cLinkName,cComment,cStaffcode,cUtime,cChannel,cDesire)
		Value('" . ($arrOrder['cName2']) . "','" . $arrOrder['cType'] . "','" . $arrOrder['cDataType'] . "','" . $arrOrder['cIdCode'] . "','" . ($arrOrder['cAddress']) . "'
		,'" . ($arrOrder['cLinkName']) . "','" . $arrOrder['cComment'] . "','" . $arrOrder['cStaffcode'] . "','" . ($arrOrder['cUtime']) . "'
		,'" . $arrOrder['cChannel'] . "','" . $arrOrder['cDesire'] . "');";
    $strQuery = stripslashes(i(addslashes($strQuery)));
    $db = &#038; make_db_conn();
    $db->exec('SET NAMES UTF8');
    $result = $db->query($strQuery);
    if ($result) {
        return $db->lastInsertId();
    } else {
        return "No";
    }
}
</pre>
<p>过滤SQLSERVER tel表 感觉数据被污染了，传真号码居然有400多万，空tel有100多万，去掉这些数据还剩下30多万条比较合理的电话号码：</p>
<pre lang="sql">
DELETE FROM tel WHERE tel = '' OR type = '传真' </pre>
]]></content:encoded>
			<wfw:commentRss>http://www.hatoyu.com/2008/12/17/macacus-crm-mssqlserver%e6%95%b0%e6%8d%ae%e5%af%bc%e5%85%a5mysql-php%e7%a8%8b%e5%ba%8f%e5%bc%80%e5%8f%91%e6%80%9d%e8%b7%af/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
