<?xml version='1.0' encoding='UTF-8'?><rss xmlns:atom='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0' version='2.0'><channel><atom:id>tag:blogger.com,1999:blog-1064602282578827205</atom:id><lastBuildDate>Thu, 03 May 2012 11:10:17 +0000</lastBuildDate><category>apache</category><category>linux</category><category>php5</category><category>url</category><category>query string</category><category>Wordpress</category><category>web application framework</category><category>javascript</category><category>mysql</category><category>php</category><category>restart</category><category>integrated development environment</category><category>security</category><category>microsoft visual express</category><category>hosts</category><category>adobe</category><category>api</category><category>visual express</category><category>curl</category><category>encryption</category><category>wordpress mu</category><category>dates</category><category>ssl</category><category>microsoft</category><category>https</category><category>symfony</category><category>ubuntu</category><category>mcrypt</category><category>application programming interface</category><category>aptana</category><category>ide</category><title>JDUy: TechWhet</title><description>Web development tips and tidbits I had to lookup to get to tomorrow</description><link>http://techwhet.jduy.com/</link><managingEditor>noreply@blogger.com (JDUy)</managingEditor><generator>Blogger</generator><openSearch:totalResults>24</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1064602282578827205.post-4753517774758703172</guid><pubDate>Thu, 15 Sep 2011 04:46:00 +0000</pubDate><atom:updated>2011-09-14T21:47:29.735-07:00</atom:updated><title>Replace MS Word Non-Breaking Space with PHP</title><description>Microsoft Word allows people to enter a special, hidden non-breaking (nonbreaking) or no-break space character which is very difficult to recognize when one tries to find and replace unnecessary blank spaces with PHP code.&lt;br /&gt;&lt;br /&gt;To verify that the characters are not regular spaces, try looking at the original Word document with hidden characters showing. (In MS Word 2007, this is done on the ribbon under: [Home] tab &amp;gt; Paragraph &amp;gt; click on paragraph character.) It will appear as a small circle, like a degree mark.&lt;br /&gt;&lt;br /&gt;To replace the character using PHP, with a regular space, you should use something like this to replace the non-breaking space Unicode character:&lt;br /&gt;&lt;br /&gt;&amp;nbsp; &amp;nbsp; $story_text = preg_replace ("/\x{00A0}/", " ", $story_text);&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1064602282578827205-4753517774758703172?l=techwhet.jduy.com' alt='' /&gt;&lt;/div&gt;</description><link>http://techwhet.jduy.com/2011/09/replace-ms-word-non-breaking-space-with.html</link><author>noreply@blogger.com (JDUy)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1064602282578827205.post-6437959650291276544</guid><pubDate>Sat, 06 Aug 2011 13:35:00 +0000</pubDate><atom:updated>2011-08-06T06:36:04.099-07:00</atom:updated><title>How to turn on voice recognition in text field? Use Google speech recognition in forms?</title><description>To enable voice input for textfields in HTML5 / Google Chrome, add this to your input code:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&amp;nbsp; &amp;nbsp;x-webkit-speech&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Here's an example:&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #0b5394;"&gt;&amp;lt;form&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #0b5394;"&gt;&amp;nbsp; &amp;nbsp;&amp;lt;input type="text" name="myTextInput" x-webkit-speech /&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #0b5394;"&gt;&amp;lt;/form&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;form&gt;&lt;input id="myTextInput" name="myTextInput" type="text" x-webkit-speech="" /&gt;&lt;/form&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1064602282578827205-6437959650291276544?l=techwhet.jduy.com' alt='' /&gt;&lt;/div&gt;</description><link>http://techwhet.jduy.com/2011/08/how-to-turn-on-voice-recognition-in.html</link><author>noreply@blogger.com (JDUy)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1064602282578827205.post-2842882049530443392</guid><pubDate>Thu, 10 Feb 2011 08:40:00 +0000</pubDate><atom:updated>2011-09-14T21:50:14.937-07:00</atom:updated><title>4 Sites to Help You Prevent Identity Theft [video]</title><description>These four US Government sites have helpful information on how you can protect you identity from being used illegally.&lt;br /&gt;&lt;br /&gt;&lt;iframe align="right" frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=amazon@jduy.com&amp;amp;o=1&amp;amp;p=8&amp;amp;l=bpl&amp;amp;asins=0312327099&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="height: 245px; padding-left: 10px; padding-top: 5px; width: 131px;"&gt;&lt;/iframe&gt;I know: "You want me to visit sites written in 'government speak?' ... yuck!"&amp;nbsp; But, it's not that way.&lt;br /&gt;&lt;br /&gt;These are sites written for you and me -- as short articles, in plain, easy English. Some videos can be seen, too. These might not be the most entertaining sites you've ever visited, but there's important information for you to know.&lt;br /&gt;&lt;br /&gt;Identity theft and identity fraud are crimes that are punishable under the law. Recovering your credit and clearing your good name may take a lot of effort and time.&lt;br /&gt;&lt;br /&gt;So, before you have a problem, visit these four sites for some great tips on how to spot the bad guys and how to avoiding their evil tactics: &lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://www.blogger.com/"&gt;&lt;b&gt;US Department of Justice&lt;/b&gt;&lt;/a&gt; - Information about identity theft and identity fraud, and what to do if you are a victim.&lt;/li&gt;&lt;li&gt;&lt;b&gt;&lt;a href="http://www.blogger.com/"&gt;Office of the Comptroller of the Currency&lt;/a&gt;&lt;/b&gt; - Specific information about financial crimes like counterfeit documents, unauthorized banking. And how businesses may fight fraud.&lt;/li&gt;&lt;li&gt;&amp;nbsp;&lt;a href="http://oig.hhs.gov/fraud.asp"&gt;&lt;b&gt;Office of the Inspector General&lt;/b&gt;&lt;/a&gt; - Medical fraud and ID theft are explained here.&lt;/li&gt;&lt;li&gt;&amp;nbsp;&lt;a href="http://www.ftc.gov/bcp/edu/microsites/idtheft/"&gt;&lt;b&gt;Federal Trade Commission&lt;/b&gt;&lt;/a&gt; - Contains lots of information about identity theft and what steps you can take to recover.&lt;/li&gt;&lt;/ol&gt;And, also from the &lt;b&gt;&lt;a href="http://www.youtube.com/user/FTCvideos"&gt;FTC.gov site&lt;/a&gt;&lt;/b&gt;, here are some videos that contain information about common scams aimed at senior citizens and others.&lt;a href="http://www.amazon.com/s/?ie=UTF8&amp;amp;tag=amazon@jduy.com&amp;amp;link_code=btl&amp;amp;camp=213689&amp;amp;creative=392969&amp;amp;search-alias=aps&amp;amp;field-keywords=id%20theft" target="_blank"&gt;Search Amazon.com  for id theft&lt;/a&gt;&lt;img alt="" border="0" height="1" src="http://www.assoc-amazon.com/e/ir?t=amazon@jduy.com&amp;amp;l=btl&amp;amp;camp=213689&amp;amp;creative=392969&amp;amp;o=1&amp;amp;a=" style="border: medium none ! important; margin: 0px ! important; padding: 0px ! important;" width="1" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="width: 425px;"&gt;10 Million people are victims of ID theft -- Avoid giving criminals the opportunity to steal your info:&lt;br /&gt;&lt;object height="349" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/bC8pjXn-sWM?fs=1&amp;amp;hl=en_US"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/bC8pjXn-sWM?fs=1&amp;amp;hl=en_US" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="349"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="width: 425px;"&gt;Con Artist Fraud -- "You can earn a lot of money. I'll show you how!"&lt;br /&gt;&lt;object height="349" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/OoB2PKYbu4Q?fs=1&amp;amp;hl=en_US"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/OoB2PKYbu4Q?fs=1&amp;amp;hl=en_US" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="349"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="width: 425px;"&gt;Job Scams:&lt;br /&gt;&lt;object height="349" width="560"&gt;&lt;param name="movie" value="http://www.youtube.com/v/A-4N9z21U7o?fs=1&amp;amp;hl=en_US"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/A-4N9z21U7o?fs=1&amp;amp;hl=en_US" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="560" height="349"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="width: 425px;"&gt;Phishing Scams -- at home, in a store, at the office:&lt;br /&gt;&lt;iframe allowfullscreen="" frameborder="0" height="349" src="http://www.youtube.com/embed/e_TALggP0xQ" title="YouTube video player" width="425"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;object height="349" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/yfdXrhOoNrQ?fs=1&amp;amp;hl=en_US"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/yfdXrhOoNrQ?fs=1&amp;amp;hl=en_US" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="349"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;object height="349" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/tR64APeWACg?fs=1&amp;amp;hl=en_US"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/tR64APeWACg?fs=1&amp;amp;hl=en_US" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="349"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="width: 425px;"&gt;Foreclosure scams:&lt;br /&gt;&lt;object height="349" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/GvxOC5SBEyI?fs=1&amp;amp;hl=en_US"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/GvxOC5SBEyI?fs=1&amp;amp;hl=en_US" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="349"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="width: 425px;"&gt;File a complaint with the Federal Trade Commission&lt;br /&gt;&lt;object height="349" width="560"&gt;&lt;param name="movie" value="http://www.youtube.com/v/4RK88mH69pA?fs=1&amp;amp;hl=en_US"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/4RK88mH69pA?fs=1&amp;amp;hl=en_US" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="560" height="349"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="width: 425px;"&gt;Phone fraud:&lt;br /&gt;&lt;object height="349" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/JxSiwVvwoeA?fs=1&amp;amp;hl=en_US"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/JxSiwVvwoeA?fs=1&amp;amp;hl=en_US" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="349"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1064602282578827205-2842882049530443392?l=techwhet.jduy.com' alt='' /&gt;&lt;/div&gt;</description><link>http://techwhet.jduy.com/2011/02/4-sites-to-help-you-pfrom-identity.html</link><author>noreply@blogger.com (JDUy)</author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://img.youtube.com/vi/e_TALggP0xQ/default.jpg' height='72' width='72'/><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1064602282578827205.post-4609771722206807040</guid><pubDate>Sun, 28 Nov 2010 03:14:00 +0000</pubDate><atom:updated>2011-09-14T21:51:18.035-07:00</atom:updated><title>Connect your PS3 or Wii to a Wireless Internet Via Laptop or PC Tether: Can it be done?</title><description>No.&lt;br /&gt;&lt;br /&gt;I tried this technique yesterday&amp;nbsp;(November 26, 2010)&amp;nbsp;at my in-laws -- they have a &lt;b&gt;Playstation 3&lt;/b&gt;, a &lt;b&gt;Wii&lt;/b&gt;, and a desktop &lt;b&gt;PC running Windows Vista&lt;/b&gt;.&amp;nbsp;The PC is connected to the intenet through a &lt;b&gt;DSL router&lt;/b&gt; using a network cable. The router has no wireless capabilities -- Verizon did not send them a wireless DSL modem. The Dell PC they own does not have a wireless card, either.&lt;br /&gt;&lt;br /&gt;But they wanted to update the PS3's operating system. They could not play Blu-Ray discs until the Playstation's OS was updated for some reason.&lt;br /&gt;&lt;br /&gt;The PS3 is in the living room -- 30 feet away from the home office with the DSL router.&lt;br /&gt;&lt;br /&gt;The Playstation 3 and Wii do have built-in wireless connectivity, of course, but they had nothing to connect to.&lt;br /&gt;&lt;br /&gt;My proposed solution -- use my &lt;b&gt;laptop &lt;/b&gt;running &lt;b&gt;Windows 7&lt;/b&gt; to create a wireless connection to the internet.&lt;br /&gt;&lt;br /&gt;This is possible through something called an &lt;b&gt;"ad hoc" network connection&lt;/b&gt;.&lt;br /&gt;You plug your PC or laptop into the network using a cable.&lt;br /&gt;Then you set up your PC to share the internet connection using the built-in wireless card as the access point.&lt;br /&gt;&lt;br /&gt;Using later versions of MS Windows, you can do this under:&lt;br /&gt;&lt;br /&gt;Control Panel &amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;Network and Sharing &amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;Set up a connection or network &amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;Set Up a Wireless Router or Access Point (or Ad Hoc Connection)&lt;br /&gt;&lt;br /&gt;... or something similar to that depending on your OS and version.&lt;br /&gt;&lt;br /&gt;This can also be done on a Mac.&lt;br /&gt;&lt;br /&gt;Anyway, after I did that (many times!), I could not get the PS3 to recognize or find my laptop's ad hoc network name (a/k/a the SSID). The Wii would find the ad hoc network's name, but would never finish the connection. Yet, when I tried to connect to the ad hoc network using an iPhone or iPod Touch, it worked just fine. I even tried dragging all the cords and the laptop closer. Very frustrating.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: red;"&gt;Well, it turns out that a PS3 cannot connect to an ad hoc connection. It just won't do it.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;So, in the end, &lt;b&gt;I had to unplug the wired DSL modem, use a really long phone cord from the kitchen to the living room, and connect directly to the PS3 using a LAN cable.&lt;/b&gt; That worked perfectly, but was not the solution I had hoped for. (The Wii does not appear to have a LAN connector, so it remains un-updated.)&lt;br /&gt;&lt;br /&gt;In the future I will just have to get them a wireless router (tried it before but they said it stopped working after I left). Or they will have to call Verizon to send them a wireless modem instead of the older none-wireless one they have now.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1064602282578827205-4609771722206807040?l=techwhet.jduy.com' alt='' /&gt;&lt;/div&gt;</description><link>http://techwhet.jduy.com/2010/11/connect-your-ps3-or-wii-to-wireless.html</link><author>noreply@blogger.com (JDUy)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1064602282578827205.post-4863574981323502112</guid><pubDate>Sun, 28 Nov 2010 02:25:00 +0000</pubDate><atom:updated>2010-12-31T10:23:41.813-08:00</atom:updated><title>PC to Cell Phone Video Calls: New developments make it possible</title><description>Yes, iPhones, iPods and other handhelds can finally do live, face-to-face video chat with desktop computers.&lt;br /&gt;&lt;br /&gt;Now dial back your expectations a bit -- it's a mixed message today (Saturday, November 27, 2010).&lt;br /&gt;&lt;br /&gt;The good news is that three very exciting developments have made big gains toward the communication visions that are a staple of science fiction and comic book fantasy worlds. &lt;b&gt;Skype&lt;/b&gt;, &lt;b&gt;Apple's Facetime&lt;/b&gt;, &lt;b&gt;Yahoo's Messenger&lt;/b&gt;, and &lt;b&gt;Fring &lt;/b&gt;have made the inevitable possible in 2010.&lt;br /&gt;&lt;br /&gt;However, there are specific problems associated with each service's platform and the devices they can and cannot communicate with.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;SKYPE &lt;/b&gt;is the long-running VOIP service that broke out as the favorite desktop to phone calling service. It integrated free video calls and became a technical darling as it was heavily promoted by Oprah Winfrey's talk show. Skype has really solid video calling features for computer-to-computer calling over fast internet connections. And there are versions of Skype for most handhelds and even the latest televisions.&amp;nbsp;&lt;b&gt;As of December 31, 2010, Skype became the leader in mobile video chat. The made it possible for PC desktops and iPhones to do video chat over Wi-Fi and and 3G phone lines.&amp;nbsp;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;FACETIME &lt;/b&gt;is Apple's impressive new video calling feature launched in conjunction with the iPhone 4 and iPod Touch 4th Generation devices. These are the handhelds that now have a camera on both the front and back. Facetime will only work for these devices; the current iPads have no camera so are not allowed to participate in Facetime. In October 2010 Apple released beta software that will allow Mac computers with a video camera to connect to iPhone 4 and iPod Touch users.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;YAHOO MESSENGER&lt;/b&gt; has come up with the first fully-supported service to connect desktop video to handhelds. Their service does require that both users have a camera on their computer or device; however the earlier iPhone 2G are not supported by the current software. The video is very blurry over a 3G network connection, but it does work. A fast wireless connection to the internet is suggested. Yahoo Messenger also includes the ability to send images and text chat messages back and forth, as well as do VOIP calls from a desktop to the receiving phone.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;FRING &lt;/b&gt;has been around for a couple of years, and earlier in 2010 made the first widely available connection between phones and desktops. Unfortunately, their implementation used Skype as the backbone and the two companies had a dispute over the terms of service. So, Fring only supports handheld-to-handheld video conversations at this time. A camera is not required by a receiving device to watch video.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;b&gt;&lt;span style="font-size: large;"&gt;Video Phone calls -- PC Desktop/Laptop to Cell Phone/Handhelds&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: large;"&gt; (as of December 31, 2010)&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;table border="1" padding="3" style="border-collapse: collapse; border: 1px solid gray; margin: 1em auto; padding: 3px; width: 500px;"&gt;&lt;thead&gt;&lt;tr&gt;  &lt;th&gt;&lt;span style="font-size: x-small;"&gt;Application&lt;/span&gt;&lt;/th&gt;  &lt;th&gt;&lt;span style="font-size: x-small;"&gt;Handhelds&lt;/span&gt;&lt;/th&gt;  &lt;th&gt;&lt;span style="font-size: x-small;"&gt;PC Desktop&lt;/span&gt;&lt;/th&gt;  &lt;th&gt;&lt;span style="font-size: x-small;"&gt;Mac Desktop&lt;/span&gt;&lt;/th&gt;  &lt;th&gt;&lt;span style="font-size: x-small;"&gt;Notes&lt;/span&gt;&lt;/th&gt;  &lt;/tr&gt;&lt;/thead&gt;    &lt;tbody&gt;&lt;tr style="font-family: Arial,Helvetica,sans-serif;"&gt; &lt;td&gt;&lt;span style="font-size: x-small;"&gt;&lt;a href="http://www.skype.com/"&gt;&lt;b&gt;Skype&lt;/b&gt;&lt;/a&gt;&lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span style="font-size: x-small;"&gt;iPhone 3G/3GS&lt;br /&gt;iPhone 4&lt;br /&gt;iPod Touch 4th Gen &lt;/span&gt;&lt;/td&gt;&lt;td&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;yes&lt;/span&gt;&lt;/td&gt; &lt;td&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;yes&lt;/span&gt;&lt;/td&gt; &lt;td&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;YAY! It works for communications between PC desktops, Macs and Apple mobiledevices. Video is a bit slow and choppy, but communicates between various versions of Skype. AND receiving caller does not need to have a camera to enjoy video.&lt;/span&gt;&lt;/td&gt; &lt;/tr&gt;&lt;tr style="font-family: Arial,Helvetica,sans-serif;"&gt;  &lt;td&gt;&lt;span style="font-size: x-small;"&gt;&lt;b&gt;&lt;a href="http://www.apple.com/mac/facetime/"&gt;Facetime&lt;/a&gt;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt;  &lt;td nowrap="nowrap"&gt;&lt;span style="font-size: x-small;"&gt;iPhone 4 &lt;br /&gt;iPod Touch 4th Gen&lt;/span&gt;&lt;/td&gt; &lt;td&gt;&lt;span style="font-size: x-small;"&gt;no&lt;/span&gt;&lt;/td&gt;  &lt;td&gt;&lt;span style="font-size: x-small;"&gt;yes&lt;/span&gt;&lt;/td&gt;  &lt;td&gt;&lt;span style="font-size: x-small;"&gt;Beta version for Mac products.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;WiFi required.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;Very good quality.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;Receiving handhelds must have front-facing camera.&lt;/span&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;tr&gt; &lt;td style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;b&gt;&lt;a href="http://messenger.yahoo.com/"&gt;Yahoo Messenger&lt;/a&gt;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt; &lt;td nowrap="nowrap" style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;iPhone 3G/3GS&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;iPhone 4&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;iPod Touch 4th Gen&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;Android devices&lt;/span&gt;&lt;/td&gt;  &lt;td style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;yes &lt;/span&gt;&lt;/td&gt; &lt;td style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;yes&lt;/span&gt;&lt;/td&gt; &lt;td style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;Both ends must have cameras.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;Back-facing cameras do work, but kind of awkward for calls. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;Does not do video on earlier iPhone 2G despite camera.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;Low quality over 3G networks.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;Fast WiFi suggested.&lt;/span&gt;&lt;/td&gt; &lt;/tr&gt;&lt;tr style="font-family: Arial,Helvetica,sans-serif;"&gt;  &lt;td&gt;&lt;span style="font-size: x-small;"&gt;&lt;b&gt;&lt;a href="http://www.fring.com/"&gt;Fring&lt;/a&gt;&lt;/b&gt;&lt;/span&gt;&lt;/td&gt; &lt;td&gt;&lt;span style="font-size: x-small;"&gt;&lt;br /&gt;iPhones&lt;br /&gt;iPod Touches &lt;br /&gt;iPads &lt;br /&gt;Android devices&lt;/span&gt;&lt;/td&gt; &lt;td&gt;&lt;span style="font-size: x-small;"&gt;no&lt;/span&gt;&lt;/td&gt;  &lt;td&gt;&lt;span style="font-size: x-small;"&gt;no&lt;/span&gt;&lt;/td&gt;  &lt;td&gt;&lt;span style="font-size: x-small;"&gt;Did briefly utilize Skype to do video calls to desktops, but stopped service in July 2010. &lt;br /&gt;No desktop client software available now.&lt;br /&gt;No camera required by receiving phone.&lt;/span&gt;&lt;/td&gt; &lt;/tr&gt;&lt;/tbody&gt; &lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1064602282578827205-4863574981323502112?l=techwhet.jduy.com' alt='' /&gt;&lt;/div&gt;</description><link>http://techwhet.jduy.com/2010/11/pc-to-cell-video-calls-new-developments.html</link><author>noreply@blogger.com (JDUy)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1064602282578827205.post-3644164438321420664</guid><pubDate>Tue, 25 May 2010 09:18:00 +0000</pubDate><atom:updated>2010-05-25T02:18:18.846-07:00</atom:updated><title>Change your Text Editor for MovableType Posts</title><description>&lt;h2&gt;Use TinyMCE to replace your Rich-Text Editor in Movable Type&lt;/h2&gt;&lt;br /&gt;Here's a link to a Movable Type plugin that will give you a much better WYSIWYG text editor -- TinyMCE.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;a href="http://code.google.com/p/tinymce-mtplugin/"&gt;http://code.google.com/p/tinymce-mtplugin/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;This version works with MovableType 4. After unzipping there is one folder which contains to parts -- on folder goes into &lt;b&gt;/plugins&lt;/b&gt; and one goes into&lt;b&gt; /mt-static/plugins.&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;After using FTP to drop the two folders over to the appropriate locations of your MovableType directory, you can create a new entry, and the Rich-Text editor should have lots more buttons available. Plus, the code created is much more XHTML correct.&lt;br /&gt;&lt;br /&gt;It's not perfect, but it works much better than the standard MovableType 4 editor.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1064602282578827205-3644164438321420664?l=techwhet.jduy.com' alt='' /&gt;&lt;/div&gt;</description><link>http://techwhet.jduy.com/2010/05/change-your-text-editor-for-movabletype.html</link><author>noreply@blogger.com (JDUy)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1064602282578827205.post-963693846842421777</guid><pubDate>Tue, 25 May 2010 03:19:00 +0000</pubDate><atom:updated>2010-05-24T21:46:00.471-07:00</atom:updated><title>Comparison of WordPress and MovableType</title><description>&lt;h2&gt;Which blog sofware package is better?&lt;/h2&gt;Here's a few notes of mine, as I'm trying to decide which package to go with for a CMS / Blog system comparing primarily &lt;a href="http://www.movabletype.com/"&gt;MovableType 4.3&lt;/a&gt; vs &lt;span id="goog_180392824"&gt;&lt;/span&gt;&lt;a href="http://wordpress.org/"&gt;WordPress&lt;span id="goog_180392825"&gt;&lt;/span&gt;&lt;/a&gt; 2.9:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Cost?&lt;/b&gt;&lt;br /&gt;WordPress is free.&lt;br /&gt;MovableType can cost hundreds of dollars for 5 users, plus upgrades.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Multiple Blogs?&lt;/b&gt;&lt;br /&gt;MovableType allows for multiple blogs.&lt;br /&gt;WordPress is for one blog.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;User control?&lt;/b&gt;&lt;br /&gt;MovableType is better. You can assign user permissions on both systems that give varying levels of access to administrative functions. However, MovableType allows you to restrict user access to different blogs. Whereas, WordPress is one blog and users of the same level will have equal access to all areas of the site -- a Sports Category writer would have access to posts in the Arts Category.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Separation of sections?&lt;/b&gt;&lt;br /&gt;MovableType is better. Each section can be set up to be a separate blog. So, Sports has a blog with it's own categories. Arts has a blog with it's own categories. With WordPress, you have one blog with categories that can have more sub categories.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Flexibility of design?&lt;/b&gt;&lt;br /&gt;MovableType allows each blog to have it's own template. WordPress has one template for the one blog. All of the top and side content will look the same. For non-designers, both have pre-made templates, but WordPress seems to have lots more designs available.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Programming language?&lt;/b&gt;&lt;br /&gt;WordPress is written in PHP (considered by most to be a more "modern" language for web projects). MovableType is written in PERL (which has been in use since the early days of the web, but has lost a lot of its development base since PHP became a more popular standard).&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Expansion / Plug-Ins?&lt;/b&gt;&lt;br /&gt;WordPress has plug-ins that add lots of functionality. MovableType also has plug-ins, but the number and variety are not as great. Many of WordPress' shortcomings are covered by plug-ins, however, as WordPress is upgraded, many of those plug-ins can and have stopped working.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Speed?&lt;/b&gt;&lt;br /&gt;I tend to think WordPress is faster.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Template manipulation?&lt;/b&gt;&lt;br /&gt;WordPress seems to have better template control. MovableType has a lot of flipping back and forth and can get confusing easily.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Ease of learning?&lt;/b&gt;&lt;br /&gt;Neither one is perfect in its execution. A lot of options are too hard to find. MovableType is clearly trying to catch up to WordPress by making it's latest interface (vers 5) resemble that of WordPress. WordPress had a better WYSIWYG editor, but it looks like MovableType 5 may have started using the same Javascripts (called TinyMCE).&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Why pick WordPress?&lt;/b&gt;&lt;br /&gt;WordPress is more popular. WordPress has more momentum and a larger user base. WordPress uses PHP. WordPress is Free. WordPress is easier to understand for simple bloggers.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Why pick MovableType?&lt;/b&gt;&lt;br /&gt;MovableType opens with the ability to separate blogs. Each blog can have it's own look. MovableType has better user control.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Anything Else?&lt;/b&gt;&lt;br /&gt;WordPress also has a 2nd related software package called "WordPress MU" which allows for multiple separate blogs. I found it difficult to understand. MovableType is up to version 5, and I have not tried out that version yet. There is also a free Open Source version of MovableType. WordPress.com is a website that uses WordPress MU to host free blogs.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1064602282578827205-963693846842421777?l=techwhet.jduy.com' alt='' /&gt;&lt;/div&gt;</description><link>http://techwhet.jduy.com/2010/05/comparison-of-wordpress-and-movabletype.html</link><author>noreply@blogger.com (JDUy)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1064602282578827205.post-8459521852825747258</guid><pubDate>Wed, 14 Apr 2010 16:47:00 +0000</pubDate><atom:updated>2010-04-14T09:47:14.742-07:00</atom:updated><title>Card reader, touchpad on Acer Laptop stopped working after upgrade to Windows 7</title><description>Looking around the internet, I can see that this has been a common problem -- people upgraded their Acer laptops from Microsoft Vista to Windows 7, and lost functionality of their card reading devices, and touch pads and some other devices.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;For the the Card reader&lt;/h3&gt;&lt;br /&gt;On my Acer Aspire 5630, I tried several things, but the one that seems to have restored the driver, was to go to Acer's support page:&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;a href="http://support.acer.com/drivers_download.aspx"&gt;http://support.acer.com/drivers_download.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I found my laptop and downloaded the zip file for the card reader driver. Then I unzipped the file to my desktop.&lt;br /&gt;&lt;br /&gt;Apparently, just installing the driver by using the Setup.exe, is not enough.&lt;br /&gt;You may have to specify the operating system that the driver is made for.&lt;br /&gt;&lt;br /&gt;To do this, have your Windows 7 machine on, the installation folder open, and the driver's Setup.exe file located:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Right-click on the Setup.exe file.&lt;/li&gt;&lt;li&gt;From the pop-up menu, choose "Properties."&lt;/li&gt;&lt;li&gt;Click on the [Compatability] tab of the pop-up Setup.exe Properties window.&lt;/li&gt;&lt;li&gt;Check on "[x] Run this program in compatability mode for:"&lt;/li&gt;&lt;li&gt;Choose [Windows Vista Service Pack 2] from the drop down, or whatever your driver is made for.&lt;/li&gt;&lt;li&gt; Click okay.&lt;/li&gt;&lt;li&gt;Double-click the Setup.exe installer and follow the prompts.&lt;/li&gt;&lt;/ol&gt;You may need to reboot your operating system.&lt;br /&gt;&lt;br /&gt;At some point, hopefully, you will see that Windows 7 is installing a new device, which will be your SD Card / Memory Stick reader.&lt;br /&gt;&lt;br /&gt;You can verify this by looking under Start button &amp;gt; Control Panel &amp;gt; Device Manger and looking for "Storage Controllers."&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;For the TouchPad Driver&lt;/h3&gt;&lt;br /&gt;On my touch pad, there the main area, the two buttons on the bottom and the silver 4-sided scroll button in the middle. On the main area, the right side is supposed to allow you to press and drag to scroll.&lt;br /&gt;&lt;br /&gt;After installing Windows 7, the silver square button was being totally ignored, and I don't think the press and scroll was working on the touch pad either.&lt;br /&gt;&lt;br /&gt;On my Acer 5630, the touchpad appears to be manufactured by a company called Synaptics.&lt;br /&gt;&lt;br /&gt;I found drivers for the touch pad here:&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;span id="goog_602804660"&gt;&lt;/span&gt;&lt;a href="http://www.blogger.com/"&gt; http://www.synaptics.com/support/drivers&lt;span id="goog_602804661"&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;However, after I installed the download for Windows 7, I did not get full functionality out of the buttons. I did get it to recognize the silver button, but it is only as a left-click, not a scroller. But the press and drag does work fine now.&lt;br /&gt;&lt;br /&gt;The last thing that doesn't seem to work in the volume control / media controller on the right side of the keyboard. I'm reading that this can't be fixed without going back to the original Acer software widget. I haven't figured it out yet.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1064602282578827205-8459521852825747258?l=techwhet.jduy.com' alt='' /&gt;&lt;/div&gt;</description><link>http://techwhet.jduy.com/2010/04/card-reader-touchpad-on-acer-laptop.html</link><author>noreply@blogger.com (JDUy)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1064602282578827205.post-8300025252322318890</guid><pubDate>Mon, 22 Feb 2010 13:25:00 +0000</pubDate><atom:updated>2010-02-22T09:42:57.867-08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>microsoft</category><title>Discount student versions of Microsoft Office, Windows 7, Visio?</title><description>&lt;h2&gt;Is "The Ultimate Steal" legitimate and for-real, or a rip-off scam?&lt;/h2&gt;For the last couple of years, Microsoft has run a website called &lt;b&gt;&lt;a href="http://theultimatesteal.com/"&gt;TheUltimateSteal.com&lt;/a&gt;&lt;/b&gt;. There's not a great deal of information on the site, but it is a totally legitimate site operated for students only. The name, the prices and combined with the sparse info, may make you wonder. But if you can believe this cautious, cheapskate, I can report that the software is fully functioning and checks out with Microsoft's Genuine Software checker.&lt;br /&gt;The cost for Office Ultimate 2007 (as of Feb 2010) is just under $60, and $56 for Visio. There is also a $65 version of Windows 7 Professinal Upgrade (32- or 64-bit version), but I haven't yet given that a try.&lt;br /&gt;So, how do they know you are a student?&lt;br /&gt;&lt;ol&gt;&lt;li&gt;You say you are a student&lt;/li&gt;&lt;li&gt;You use an e-mail address that ends with ".edu"&lt;/li&gt;&lt;/ol&gt;You will be downloading the software, which is quite a huge download. You need a credit card. And you need to receive your confirmation at your ".edu" e-mail address.&lt;br /&gt;I'm no fan of Microsoft, but I am impressed that they have offered such a great deal to students like me. Without these savings it would cost hundreds of dollars more for me to buy software that will likely be out of date by the time I finish school, and may only use as part of my classroom exposure. Thanks MS!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1064602282578827205-8300025252322318890?l=techwhet.jduy.com' alt='' /&gt;&lt;/div&gt;</description><link>http://techwhet.jduy.com/2010/02/discount-student-versions-of-microsoft.html</link><author>noreply@blogger.com (JDUy)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1064602282578827205.post-4351541331375199467</guid><pubDate>Mon, 22 Feb 2010 12:55:00 +0000</pubDate><atom:updated>2010-02-22T10:12:40.423-08:00</atom:updated><title>Acer Web Cam / Orbicam Update</title><description>&lt;h2&gt;Where can I find the latest Orbicam / Bison Web Camera software for my Acer?&lt;/h2&gt;&lt;br /&gt;I bought a laptop from Circuit City for college. An Aspire notebook that broke down several times. Thankfully, I had invested in an extended Acer Warranty.&lt;br /&gt;&lt;br /&gt;But when I got it back this last time, they had removed my hard drive and replaced with a completely new installation of their customized Windows Vista.&lt;br /&gt;&lt;br /&gt;When I tried to use the built-in web cam (a/k/a Acer Orbicam) it would function, but the picture was overexposed. So, I went to the Acer website, found my model, and downloaded the Bison driver and software (&lt;b&gt;version 6.96.0.06&lt;/b&gt;, size 9.3 MB, 2008/12/02). A familiar-looking interface was included in the ZIP, but there were virtually no settings I could change for the camera other than adjusting the size of the image. I remembered downloading an update at some point in the past, but that probably disappeared with my hard drive.&lt;br /&gt;&lt;br /&gt;I guess Acer used three different camera models for the same model laptop -- Bison, Logitech, Suyin. But after downloading and trying out the latter two as well, it became obvious that I did indeed own the Bison model. Acer must have changed it's site and removed the later update.&lt;br /&gt;&lt;br /&gt;After scouring the internet for answers and coming up with several questionable sources, I decided that this is the best option:&lt;br /&gt;&lt;br /&gt;Try this Google Search:&lt;br /&gt;&lt;blockquote&gt;&lt;a href="http://www.google.com/search?q=site:acer.com+bison+driver&amp;amp;num=50&amp;amp;hl=en&amp;amp;newwindow=1&amp;amp;safe=off&amp;amp;filter=0"&gt;site:acer.com bison driver&lt;/a&gt;&lt;/blockquote&gt;Doing so, I came up with a newer driver version (&lt;b&gt;version 7.96.701.12&lt;/b&gt;, size 9.8 MB, date 2008/12/03). No guarantee, but this is the exact page where I got the newer driver:&lt;br /&gt;&lt;blockquote&gt;&lt;a href="http://global-download.acer.com/Step5.aspx?Step1=Notebook&amp;amp;Step2=Aspire&amp;amp;Step3=Aspire%205315&amp;amp;BC=Acer&amp;amp;SC=PA_7&amp;amp;LC=en"&gt;http://global-download.acer.com/Step5.aspx?Step1=Notebook&amp;amp;Step2=Aspire&amp;amp;Step3=Aspire%205315&amp;amp;BC=Acer&amp;amp;SC=PA_7&amp;amp;LC=en&lt;/a&gt;&lt;/blockquote&gt;&amp;nbsp;It is not the greatest software, but at least you can change the brightness and other settings.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1064602282578827205-4351541331375199467?l=techwhet.jduy.com' alt='' /&gt;&lt;/div&gt;</description><link>http://techwhet.jduy.com/2010/02/acer-web-cam-orbicam-update.html</link><author>noreply@blogger.com (JDUy)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1064602282578827205.post-4461878898536968112</guid><pubDate>Wed, 20 Jan 2010 13:34:00 +0000</pubDate><atom:updated>2010-02-22T09:43:32.920-08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>microsoft</category><title>Enable/Disable Automatic Hyperlinking in Microsoft Outlook 2007</title><description>&lt;h2&gt;Turn on/off auto linking while your type an e-mail&lt;/h2&gt;&lt;br /&gt;&lt;iframe align="right" frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=amazon@jduy.com&amp;amp;o=1&amp;amp;p=8&amp;amp;l=bpl&amp;amp;asins=0735623287&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="height: 245px; padding-right: 10px; padding-top: 5px; width: 131px;"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;br /&gt;For months, I've been unnecessary work to links in Outlook 2007, Microsoft's ubiquitous e-mail program.&lt;br /&gt;&lt;br /&gt;When I pasted a link into the body of the e-mail, it would not turn blue and underline like it was linked. Earlier versions did this before, (even when i didn't want it to).&lt;br /&gt;&lt;br /&gt;So, if you want to make MS Outlook 2007 auto-hyperlink while you do this:&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;From the main Outlook window go to Tools &amp;gt; Options&lt;/li&gt;&lt;li&gt;Click on [Mail Format] tab&lt;/li&gt;&lt;li&gt;Click [Editor Options]&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Click [Proofing]&lt;/li&gt;&lt;li&gt;Click [AutoCorrect]&lt;/li&gt;&lt;li&gt;Click [AutoFormat As You Type]&lt;/li&gt;&lt;li&gt;Check [x] Internet and Network paths with hyperlinks.&lt;/li&gt;&lt;li&gt;Click [OK] for all open pop-up menus.&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;Or, if you have an e-mail window open:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Click the round Office button in the top left corner.&lt;/li&gt;&lt;li&gt;In the bottom left corner click on [Editor Options]&lt;/li&gt;&lt;li&gt;Follow steps 4 through 8 above.&lt;/li&gt;&lt;/ol&gt;: jduy&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1064602282578827205-4461878898536968112?l=techwhet.jduy.com' alt='' /&gt;&lt;/div&gt;</description><link>http://techwhet.jduy.com/2010/01/enabledisable-automatic-hyperlinking-in.html</link><author>noreply@blogger.com (JDUy)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1064602282578827205.post-359120748924457343</guid><pubDate>Sat, 09 Jan 2010 00:36:00 +0000</pubDate><atom:updated>2010-02-22T09:43:51.263-08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>mysql</category><title>How to Change / Reset MySQL Auto Incement</title><description>I goofed up my SQL database one day, long, long ago, and it's been bugging me ever since.&lt;br /&gt;&lt;br /&gt;I have a database that has different sections of a website.&lt;br /&gt;&lt;blockquote class="codeBox"&gt;Ex.&lt;br /&gt;&lt;br /&gt;Key&amp;nbsp;&amp;nbsp; Name&lt;br /&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Cars&lt;br /&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Houses&lt;br /&gt;3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Pets&lt;br /&gt;666&amp;nbsp;&amp;nbsp;&amp;nbsp;Junk&lt;/blockquote&gt;&lt;iframe align="right" frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="http://rcm.amazon.com/e/cm?t=amazon@jduy.com&amp;amp;o=1&amp;amp;p=8&amp;amp;l=bpl&amp;amp;asins=0596514336&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" style="height: 245px; padding-right: 10px; padding-top: 5px; width: 131px;"&gt;&lt;/iframe&gt;&lt;br /&gt;Well, setting that 666 for the (Auto_Incement) key for the Junk column was a nice idea at the time, but when I added new sections, they'd jump forward to 667, 668, 669, etc. Even after I deleted the whole record for 666 Junk. I would have to go in and manually set the new records to a lower number.&lt;br /&gt;&lt;br /&gt;So, here's how to fix such a thing:&lt;br /&gt;&lt;br /&gt;First, delete the erroneous entry from your table.&lt;br /&gt;&lt;blockquote class="codeBox"&gt;&lt;b&gt;DELETE FROM exampleTableName WHERE Key = 666 LIMIT 1&lt;/b&gt;&lt;/blockquote&gt;&lt;br /&gt;Then enter this ... &lt;br /&gt;&lt;blockquote class="codeBox"&gt;&lt;b&gt;ALTER TABLE exampleTableName AUTO_INCREMENT = 1&lt;/b&gt;&lt;/blockquote&gt;This does not reset the Auto_Increment to 1. Instead (if I had deleted Key 666), the next auto increment would be set to 4.&lt;br /&gt;&lt;br /&gt;Exactly what I needed. Hope it helps you.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1064602282578827205-359120748924457343?l=techwhet.jduy.com' alt='' /&gt;&lt;/div&gt;</description><link>http://techwhet.jduy.com/2010/01/how-to-change-reset-mysql-auto-incement.html</link><author>noreply@blogger.com (JDUy)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1064602282578827205.post-2881178250138363131</guid><pubDate>Sun, 20 Dec 2009 21:36:00 +0000</pubDate><atom:updated>2009-12-20T20:52:35.367-08:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>php</category><title>What is Overloading Functions? How to Overload Functions in PHP?</title><description>Imagine if this is your objective:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Go to the grocery store.&lt;/li&gt;&lt;/ul&gt;You'll think of some way to get to the store, right?&lt;br /&gt;Now, I'll give you the same objective, but with additional information.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Go to the grocery store. Use your feet.&lt;/li&gt;&lt;li&gt;Go to the grocery store. Use your car.&lt;/li&gt;&lt;li&gt;Go to the grocery store. Use a taxi cab.&lt;/li&gt;&lt;li&gt;Go to the grocery store. Least expensive method.&lt;/li&gt;&lt;li&gt;Go to the grocery store. Fastest method.&lt;/li&gt;&lt;li&gt;Go to the grocery store. There won't be any parking when you get there.&lt;/li&gt;&lt;/ul&gt;So, your objective remains the same, but the actions you perform to reach the objective changes depending on the parameters I'm giving you. Overloading a function is much like this.&lt;br /&gt;&lt;br /&gt;With &lt;b&gt;Function Overloading&lt;/b&gt;, there is &lt;b&gt;one name for the function&lt;/b&gt;, but &lt;b&gt;different types of parameters are passed to the function&lt;/b&gt;, and as a result, there are often &lt;b&gt;multiple function definitions with the same name&lt;/b&gt;. These separate, but same-named function definitions are typically meant to produce similar results. Each definition computes the result based on the type of arguments it receives. Values passed to the functions could, for example, be either characters or numbers, or perhaps you might have 2 values, but the function is normally waiting to take 3.&lt;br /&gt;&lt;br /&gt;Here's another example, we could have written our own function that returns a UNIX epoch timestamp (number of seconds from 1/1/1970 to the specified date: 1262322000 = Jan 1, 2010). These function calls are all legitimate with function overloading:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;getDate();&lt;/li&gt;&lt;li&gt;getDate(2010);&lt;/li&gt;&lt;li&gt;getDate(2010, "Mar");&lt;/li&gt;&lt;li&gt;getDate(2010, "Mar", 13);&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;They all are designed to do the same thing, but because the number of parameters being sent can vary, the calculations must be handled differently. And without overloading, the program might crash if it does not receive all 3 values. In some languages, like C++ and JAVA, you would write different function headers and bodies that would accommodate the different numbers of parameters sent to the functions. The one with no parameters becomes the default method. If the number of parameters or type of data being passed to the function does not match any of the possibilities, then an error occurs.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Overloading Functions with PHP&lt;/h3&gt;&lt;br /&gt;PHP does not appear to support my definition of overloading. Instead the &lt;a href="http://php.net/manual/en/language.oop5.overloading.php"&gt;PHP manual&lt;/a&gt; talks about ways to compensate for calls to methods that don't exist in an object, or to create member variable value "setters" and "getters" dynamically. &lt;br /&gt;&lt;br /&gt;Huh? I know -- a bit advanced and confusing. But PHP does have a useful way to accept different numbers of arguments passed to a function.&lt;br /&gt;&lt;br /&gt;And it's easy, too. &lt;b&gt;The function head can be written using default values.&lt;/b&gt; &lt;br /&gt;&lt;br /&gt;&lt;h3&gt;PHP Example&lt;/h3&gt;&lt;br /&gt;Normally a basic function is written like this:&lt;br /&gt;&lt;blockquote&gt;getDate() {&lt;br /&gt;&amp;nbsp; // DO SOME CALCULATIONS&lt;br /&gt;&amp;nbsp; return $someValue;&lt;br /&gt;}&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;If your are passing, values to the function, you normally write it like this: &lt;br /&gt;&lt;blockquote&gt;getDate ($year, $month, $day) {&lt;br /&gt;&amp;nbsp; // DO SOME CALCULATIONS&lt;br /&gt;&amp;nbsp; return $someValue;&lt;br /&gt;}&lt;br /&gt;&lt;/blockquote&gt;That assumes you have all three pieces of data ready to go. But what if you have only the year, or just the year or month?&lt;br /&gt;&lt;br /&gt;You could still get some kind of response back. How?&lt;br /&gt;&lt;br /&gt;Assign default values to the possible variables that might be passed to the function: &lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;getDate($year&lt;span style="color: red;"&gt; &lt;b&gt;= 0&lt;/b&gt;&lt;/span&gt;, $month &lt;b&gt;&lt;span style="color: red;"&gt;= "Jan"&lt;/span&gt;&lt;/b&gt;, $day &lt;b&gt;&lt;span style="color: red;"&gt;= 1&lt;/span&gt;&lt;/b&gt;) {&lt;br /&gt;&amp;nbsp; // BODY OF FUNCTION THAT CAN HANDLE DIFFERENT VALUES&lt;br /&gt;&amp;nbsp; // PASSED TO IT USING &lt;br /&gt;&amp;nbsp; // IF STATEMENTS OR SWITCH STATEMENTS&lt;br /&gt;&amp;nbsp; return $someValue;&lt;br /&gt;}&lt;br /&gt;&lt;/blockquote&gt;&lt;b&gt;Using default values does not overwrite the values that are passed to the function, rather it provides a backup in case no value has been passed by the function call.&amp;nbsp;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;So, some example legal function calls could be:&lt;br /&gt;&lt;blockquote&gt;getDate (); &lt;span style="color: #6aa84f;"&gt;// year=0; month="Jan", day=1&lt;/span&gt;&lt;br /&gt;getDate (2010); &lt;span style="color: #6aa84f;"&gt;// year=2010; month="Jan", day=1 &lt;/span&gt;&lt;br /&gt;getDate (2010,"Aug"); &lt;span style="color: #6aa84f;"&gt;// year=2010; month="Aug", day=1&lt;/span&gt; &lt;br /&gt;getDate(2010,"Aug",25); &lt;span style="color: #6aa84f;"&gt;// year=2010; month="Aug", day=25 &lt;/span&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1064602282578827205-2881178250138363131?l=techwhet.jduy.com' alt='' /&gt;&lt;/div&gt;</description><link>http://techwhet.jduy.com/2009/12/what-is-overloading-functions-how-to.html</link><author>noreply@blogger.com (JDUy)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1064602282578827205.post-2579821316069176549</guid><pubDate>Sun, 22 Nov 2009 05:37:00 +0000</pubDate><atom:updated>2009-11-21T22:29:45.729-08:00</atom:updated><title>What Is a Call By Reference / Pass By Reference?</title><description>&lt;h2&gt;What's the difference between passing values and references to a function?&lt;/h2&gt;&lt;b&gt;Brief answer:&lt;/b&gt; &lt;i&gt;Passing a variable by value sends a copy of the value to the function, so the original value cannot be changed by what happens inside the function. Passing by reference tells the function where the value of the variable is stored in memory, so whenever the variable is changed inside the function, it is changed for the main program too after the function is complete. Some languages like C++ and PHP can do this with variables. Others like Javascript cannot use references with variables, but can do it by passing objects.&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&amp;nbsp;&lt;/i&gt; &lt;br /&gt;&lt;hr noshade="noshade" size="1" /&gt;&lt;h3&gt;Calling? Passing? Say what?!&lt;/h3&gt;&lt;br /&gt;If you've done some basic programming with a modern language, you've likely used &lt;b&gt;functions&lt;/b&gt; to organize and modularize your code. With functions, a programmer can take a long list of main programming instructions, break it up into chunks, and then rewrite the main instructions to be a much shorter, and easier to understand set of instructions.&lt;br /&gt;&lt;blockquote class="codeBox"&gt;userInput = getUserInput();&lt;br /&gt;processedInput = getProcessedInput(userInput);&lt;br /&gt;displayOutput(processedInput);&lt;br /&gt;&lt;/blockquote&gt;These three lines all make calls to different functions. &lt;b&gt;Calling a function &lt;/b&gt;means, you request a function to do something for you -- also known as &lt;b&gt;invoking &lt;/b&gt;a function. The first one does not send any value, but it does receive a value. The second one does send a value, and it does receive a value, too. The last one sends a value, but it does not need to receive any value back. When you send data or value to a function, you are &lt;b&gt;passing a value&lt;/b&gt; These second and third lines are call-by-value requests.&lt;br /&gt;&lt;br /&gt;&lt;hr noshade="noshade" size="1" /&gt;&lt;h3&gt;In the real world...&lt;/h3&gt;&lt;br /&gt;Put all the program lingo to the side for a moment. &lt;br /&gt;&lt;blockquote&gt;Imagine you had the balance of your bank account written on a little piece of paper (Note says $12,000). You ask your partner or spouse to figure out how much is left after you pay the bills this month. He/she says, "Well, I need to know how much is in your account, then."&lt;br /&gt;&lt;br /&gt;You can do one of two things: 1) hand your spouse your piece of paper, or 2) copy the balance onto another piece of paper and hand the copy to your spouse.&lt;br /&gt;&lt;br /&gt;He/she takes the paper, gets all the bills together, disappears to do the calculations and comes back after a while. They hand you back a piece of paper with a new value ($8,500). &lt;br /&gt;&lt;br /&gt;If you had given your spouse a copy of the value, you'd now have two pieces of paper (Note  says $12,000 and Copy says $8,500). But if you had given them your one piece of paper, and did all their calculations, erased everything on that little piece of paper, and wrote down the new value, you would have one piece of paper with the new value (Note says $8,500) and no longer know what the original value was.&lt;br /&gt;&lt;br /&gt;Either one of these situations could be fine, it depends on what you wanted back.&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;hr noshade="noshade" size="1" /&gt;&lt;h3&gt;Pick Your Poison&lt;/h3&gt;&lt;br /&gt;There are two ways that the main program can get information back from the functions.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Call-By-Value&lt;/b&gt; - Send a request with &lt;b&gt;a copy&lt;/b&gt; of a variable's value, return a single new value or array. (ex. Note and Copy)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;Call-By-Reference&lt;/b&gt; - Send a request with &lt;b&gt;a reference&lt;/b&gt; to the value of the array, change the variable value inside the function.&amp;nbsp; (ex. Note only)&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;hr noshade="noshade" size="1" /&gt;&lt;h3&gt;Simple for Simon&lt;br /&gt;&lt;/h3&gt;&lt;br /&gt;Here's the simplest example I can think of. You have a number, and you want to double it, so you send the number to a function that multiplies it by two.&lt;br /&gt;&lt;br /&gt;Here's a &lt;b&gt;call-by-value &lt;/b&gt;example written in PHP:&lt;br /&gt;&lt;blockquote class="codeBox"&gt;$origNumber = 7;&lt;br /&gt;$newNumber = &lt;b&gt;doubleIt&lt;/b&gt;($origNumber);&lt;br /&gt;&lt;br /&gt;function &lt;b&gt;doubleIt&lt;/b&gt;($numberSent) {&lt;br /&gt;&amp;nbsp;&amp;nbsp; $doubledNumber = $numberSent * 2;&lt;br /&gt;&amp;nbsp;&amp;nbsp; return $doubledNumber;&lt;br /&gt;}&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;So, in the example above, a copy of the original value (7) is passed to the function called doubleIt(). That value is received by the function. The value is multiplied times 2 to get a new value (14). Then that value is RETURNED back to the main program. The original value remains the same (original = 7, returned value = 14).&lt;br /&gt;&lt;br /&gt;Here's the &lt;b&gt;call-by-reference &lt;/b&gt;version:&lt;br /&gt;&lt;blockquote class="codeBox"&gt;$origNumber = 7;&lt;br /&gt;$newNumber = &lt;b&gt;doubleIt&lt;/b&gt;($origNumber);&lt;br /&gt;&lt;br /&gt;function &lt;b&gt;doubleIt&lt;/b&gt;(&lt;span style="color: red;"&gt;&amp;amp;&lt;/span&gt;$numberSent) {&lt;br /&gt;&amp;nbsp;&amp;nbsp; $numberSent = $numberSent * 2;&lt;br /&gt;&amp;nbsp;&amp;nbsp; return;&lt;br /&gt;}&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;In this example, nothing is returned, but instead, the value sent for the variable itself is CHANGED.&lt;br /&gt;&lt;br /&gt;The first part is the same, the original value (7) is passed to the function. But, in this case, the function receives a reference, not a copy of the value. Look at the heads of the functions. The only difference between the coding is the ampersand next to the variable name where data is being received. The program directly changes the value of the variable (original value = 14) that is sent to it in this call-by-reference.&lt;br /&gt;&lt;br /&gt;&lt;hr noshade="noshade" size="1" /&gt;&lt;h3&gt;Explaining by Example&lt;/h3&gt;&lt;br /&gt;Let's say we have a situation where we have a person's Social Security Number. And we want to get their last name. We could do something like this using a call-by-value (note: not working code, just a hypothetical example):&lt;br /&gt;&lt;blockquote class="codeBox"&gt;&lt;b&gt;&lt;i&gt;Example 1. (Call-by-Value with single value returned)&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;$lastName = &lt;b&gt;getLastNameUsingSSN&lt;/b&gt;($customerSSN);&lt;br /&gt;echo $lastName;&lt;br /&gt;&lt;br /&gt;function &lt;b&gt;getLastNameUsingSSN&lt;/b&gt;($ssnSent) {&lt;br /&gt;&amp;nbsp;&amp;nbsp; $sql = "SELECT lastName FROM customers WHERE ssn = $ssnSent LIMIT 1"; &lt;br /&gt;&amp;nbsp;&amp;nbsp; [... some magic code that retrieves the last name from a database ...]&lt;br /&gt;&amp;nbsp;&amp;nbsp; $lastName = $dbResult["lastName"];&lt;br /&gt;&amp;nbsp;&amp;nbsp; return ($lastName);&lt;br /&gt;}&lt;br /&gt;&lt;/blockquote&gt;Okay, great! We send a SSN number (123-45-6789), and the function returns a last name from the customer database (Jones).&lt;br /&gt;&lt;br /&gt;What if we want more than the last name, we could theoretically do something like this:&lt;br /&gt;&lt;blockquote class="codeBox"&gt;&lt;i&gt;&lt;b&gt;Example 2. (Call-by-Value with array returned)&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;$customerData = &lt;b&gt;getCustomerInfoArrayUsingSSN&lt;/b&gt;($customerSSN);&lt;br /&gt;echo "Name: $customerData[1] $customerData[0]\n";&lt;br /&gt;echo "Phone: $customerData[3]\n";&lt;br /&gt;echo "Email: $customerData[2]\n";&lt;br /&gt;&lt;br /&gt;function &lt;b&gt;getCustomerInfoArrayUsingSSN&lt;/b&gt;($ssnSent) {&lt;br /&gt;&amp;nbsp;&amp;nbsp; $sql = "SELECT * FROM customers WHERE ssn = $ssnSent LIMIT 1"; &lt;br /&gt;&amp;nbsp;&amp;nbsp; [... some magic code that retrieves the last name from a database ...]&lt;br /&gt;&amp;nbsp;&amp;nbsp; $customerInfoArray[0]= $dbResult["lastName"];&lt;br /&gt;&amp;nbsp;&amp;nbsp; $customerInfoArray[1]= $dbResult["firstName"];&lt;br /&gt;&amp;nbsp;&amp;nbsp; $customerInfoArray[2]= $dbResult["email"];&lt;br /&gt;&amp;nbsp;&amp;nbsp; $customerInfoArray[3]= $dbResult["phone"];&lt;br /&gt;&amp;nbsp;&amp;nbsp; return ($customerInfoArray);&lt;br /&gt;}&lt;br /&gt;&lt;/blockquote&gt;&amp;nbsp;Well then, we are doing the same thing, except we are asking for an array of data to be returned instead of a single value. Depending on the language, this it can get confusing, if it's allowed at all. If you can use a name-value array, it is a little easier to work with named indexes, rather than trying to work with numbered indexes. "lastName" is easier to understand than "0";&lt;br /&gt;&lt;br /&gt;But it's still easy to get mixed up like that.&lt;br /&gt;&lt;br /&gt;One way to avoid confusion is to use a call-by-reference.&lt;br /&gt;&lt;blockquote class="codeBox"&gt;&lt;i&gt;&lt;b&gt;Example 3. (Call-by-Reference with multiple values being changed)&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;getCustomerInfoArrayUsingSSN&lt;/b&gt;($customerSSN, $fName, $lName, $phone, $email);&lt;br /&gt;echo "Name: $fName $lName\n";&lt;br /&gt;echo "Phone: $phone\n";&lt;br /&gt;echo "Email: $email\n";&lt;br /&gt;&lt;br /&gt;function &lt;b&gt;getCustomerInfoArrayUsingSSN&lt;/b&gt;($ssnSent, &lt;span style="color: red;"&gt;&amp;amp;&lt;/span&gt;$fName, &lt;span style="color: red;"&gt;&amp;amp;&lt;/span&gt;$lName, &lt;span style="color: red;"&gt;&amp;amp;&lt;/span&gt;$phone, &amp;amp;$email) {&lt;br /&gt;&amp;nbsp;&amp;nbsp; $sql = "SELECT * FROM customers WHERE ssn = $ssnSent LIMIT 1"; &lt;br /&gt;&amp;nbsp;&amp;nbsp; [... some magic code that retrieves the last name from a database ...]&lt;br /&gt;&amp;nbsp;&amp;nbsp; $lName= $dbResult["lastName"];&lt;br /&gt;&amp;nbsp;&amp;nbsp; $fName= $dbResult["firstName"];&lt;br /&gt;&amp;nbsp;&amp;nbsp; $email= $dbResult["email"];&lt;br /&gt;&amp;nbsp;&amp;nbsp; $phone= $dbResult["phone"];&lt;br /&gt;&amp;nbsp;&amp;nbsp; return;&lt;br /&gt;}&lt;br /&gt;&lt;/blockquote&gt;If you can understand this, you'll see that calling by reference results in a more direct manipulation of the values in the main program.&amp;nbsp; Nothing is returned from the function. The values stored for the variables used in the main program and changed by the procedures in the function.&lt;br /&gt;&lt;br /&gt;Yes, you can return something, too, if you like (a status confirmation for example).&lt;br /&gt;&lt;br /&gt;Yes, this can mess up things pretty badly if it's done wrong.&lt;br /&gt;&lt;br /&gt;&lt;hr noshade="noshade" size="1" /&gt;&lt;h3&gt;PHP Usage&lt;/h3&gt;PHP allows this method pretty easily. In the function head, you just put an ampersand next to the variable you want to use as a reference:&lt;br /&gt;&lt;blockquote class="codeBox"&gt;&lt;b&gt;&lt;i&gt;PHP Example (using colors of traffic light)&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;$color = "green";&lt;br /&gt;$meaning = "";&lt;br /&gt;&lt;br /&gt;if (&lt;b&gt;trafficLight&lt;/b&gt;($color, $meaning)) {&lt;br /&gt;&amp;nbsp;&amp;nbsp; echo "$color $meaning\n"; &lt;br /&gt;}&lt;br /&gt;else {&lt;br /&gt;&amp;nbsp;&amp;nbsp; echo "I don't understand the color $color";&lt;br /&gt;}&lt;br /&gt;exit();&lt;br /&gt;&lt;br /&gt;function &lt;b&gt;trafficLight &lt;/b&gt;($colorSent, &lt;span style="color: red;"&gt;&amp;amp;&lt;/span&gt;$meaningOfLight) {&lt;br /&gt;&amp;nbsp;&amp;nbsp; if ($colorSent == "red") {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $meaningOfLight = " means stop";&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return TRUE;&lt;br /&gt;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp; elseif ($colorSent == "green") {&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; $meaningOfLight = " means go";&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return TRUE;&lt;br /&gt;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp; return FALSE;&lt;br /&gt;}&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;Here, the value of $meaning is changed, and a boolean value is returned from the function. In this case the output would be "green means go" because a value of "TRUE" was returned to the if function. If the color was changed to "red" the output would be "red means stop" because "TRUE" again would be returned. If the color were changed to "blue", a value of "FALSE" would be returned to the if statement that called the function, and the output would be "I don't understand the color blue".&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1064602282578827205-2579821316069176549?l=techwhet.jduy.com' alt='' /&gt;&lt;/div&gt;</description><link>http://techwhet.jduy.com/2009/11/what-is-call-by-reference-pass-by.html</link><author>noreply@blogger.com (JDUy)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1064602282578827205.post-817759655877215016</guid><pubDate>Sun, 25 Oct 2009 18:38:00 +0000</pubDate><atom:updated>2009-10-25T11:47:57.208-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>url</category><category domain='http://www.blogger.com/atom/ns#'>ssl</category><category domain='http://www.blogger.com/atom/ns#'>https</category><category domain='http://www.blogger.com/atom/ns#'>encryption</category><category domain='http://www.blogger.com/atom/ns#'>security</category><category domain='http://www.blogger.com/atom/ns#'>query string</category><title>Is it safe and secure to send query string data using https / ssl URL?</title><description>&lt;h2&gt;When you send data using a query string, is it encrypted / hidden?&amp;nbsp;&lt;/h2&gt;&lt;h2&gt;Can anyone see my variable values when I submit with them using a web address / GET request?&lt;/h2&gt;&lt;br /&gt;I've been wondering this for a long while. And the answer is:&lt;br /&gt;&lt;blockquote&gt;&lt;b&gt;YES &lt;/b&gt;(probably).&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;In theory, your browser would do something like this:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Read in your request: &lt;b&gt;&lt;span style="color: green;"&gt;https://&lt;/span&gt;someaddress.com/?&lt;span style="color: #cc0000;"&gt;mypassword=bugsbunny&amp;amp;creditcard=123412341234&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;&lt;li&gt;Resolve the address to someaddress.com: 255.254.253.252&lt;/li&gt;&lt;li&gt;Connect with the web server at that IP address (port 443) using a secure handshake with SSL.&lt;/li&gt;&lt;li&gt;Transmit your encrypted request.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Disconnect.&lt;/li&gt;&lt;/ul&gt;If that's good enough for your purposes, you're probably okay.&lt;br /&gt;&lt;br /&gt;For example, &lt;a href="http://www.paypal.com/"&gt;PayPal &lt;/a&gt;allows authorized users to perform searches and make credit transactions like this all the time.&lt;br /&gt;&lt;br /&gt;The main concern, in theory, appears to be the possible use of "sniffers," programs placed along networks that can read transactions. If the transactions are not encrypted, the data can be easily read.&lt;br /&gt;&lt;br /&gt;The best suggestion is, if you have control over the program on the receiving end (not the case with PayPal), you could:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Encrypt your data on your local machine&lt;/li&gt;&lt;li&gt;Send that data via the https / SSL connection&lt;/li&gt;&lt;li&gt;Decrypt the data when it is received on the other end.&lt;/li&gt;&lt;/ol&gt;Don't take my word for it alone. Do you research. I can't imagine anything worse than losing your customers' trust, and having to answer to authorities for why you inadvertently  exposed their personal data and financial information.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1064602282578827205-817759655877215016?l=techwhet.jduy.com' alt='' /&gt;&lt;/div&gt;</description><link>http://techwhet.jduy.com/2009/10/is-it-safe-and-secure-to-send-query.html</link><author>noreply@blogger.com (JDUy)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1064602282578827205.post-9110939000318906201</guid><pubDate>Wed, 07 Oct 2009 12:12:00 +0000</pubDate><atom:updated>2009-11-21T22:18:39.204-08:00</atom:updated><title>C++: How to Add or Convert  a Number to a String</title><description>&lt;h2&gt;Concatenate, Append or Attach an Integer, Int, Double, Numeric Value to a Literal String&lt;/h2&gt;In some languages, the ability to attach a number to a string is simple. For example, in PHP, string and numeric values are almost completely interchangeable:&lt;br /&gt;&lt;blockquote style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;span style="font-size: xx-small;"&gt;&amp;lt;?php&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: xx-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: xx-small;"&gt;$someNumber = $number1 + $number2;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: xx-small;"&gt;$outputString = "I calculate that $number1 and $number2 is going to be $someNumber\n";&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: xx-small;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: xx-small;"&gt;?&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;But with C++ there are some extra steps you need to go through. Apparently, C++ uses "streams" to direct output -- cout being the most used example.&lt;br /&gt;&lt;br /&gt;One way to achieve this is to use the following technique:&lt;br /&gt;&lt;br /&gt;&lt;blockquote class="codeBox"&gt;#include &amp;lt;iostream&amp;gt;&lt;br /&gt;#include &amp;lt;sstream&amp;gt;&lt;br /&gt;#include &amp;lt;string&amp;gt;&lt;br /&gt;using namespace std;&lt;br /&gt;&lt;br /&gt;int main () {&lt;br /&gt;int someNumber = 0;&lt;br /&gt;string someString = "";&lt;br /&gt;&lt;br /&gt;// GET AN INTEGER&lt;br /&gt;cout &amp;lt;&amp;lt; "Enter a small integer: ";&lt;br /&gt;cin &amp;gt;&amp;gt; someNumber;&lt;br /&gt;&lt;br /&gt;// CREATE FIRST STREAM NAMED numberAsString&lt;br /&gt;std::ostringstream numberAsString;&lt;br /&gt;numberAsString &amp;lt;&amp;lt; someNumber;&lt;br /&gt;&lt;br /&gt;// CREATE SECOND STREAM NAMED gatheredString&lt;br /&gt;std::ostringstream gatheredString;&lt;br /&gt;&lt;br /&gt;someString = "Thanks, here's some information about your number:\n\n";&lt;br /&gt;&lt;br /&gt;// START ADDING TO THE SECOND STREAM&lt;br /&gt;gatheredString &amp;lt;&amp;lt; someString;&lt;br /&gt;&lt;br /&gt;// ADD THE FIRST STREAM IN THE SECOND STREAM&lt;br /&gt;gatheredString &amp;lt;&amp;lt; "Your integer was: " &amp;lt;&amp;lt; numberAsString.str() &amp;lt;&amp;lt; "\n\n";&lt;br /&gt;&lt;br /&gt;// ADD SOME NUMERIC VALUES TO THE SECOND STREAM&lt;br /&gt;gatheredString &amp;lt;&amp;lt; "Your integer added to itself is: " &amp;lt;&amp;lt; (someNumber + someNumber) &amp;lt;&amp;lt; "\n\n";&lt;br /&gt;gatheredString &amp;lt;&amp;lt; "Your integer squared is: " &amp;lt;&amp;lt; (someNumber * someNumber) &amp;lt;&amp;lt; "\n\n";&lt;br /&gt;&lt;br /&gt;// OUTPUT THE SECOND STREAM TO THE SCREEN&lt;br /&gt;cout &amp;lt;&amp;lt; gatheredString.str();&lt;br /&gt;&lt;br /&gt;return 0;&lt;br /&gt;}&lt;br /&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1064602282578827205-9110939000318906201?l=techwhet.jduy.com' alt='' /&gt;&lt;/div&gt;</description><link>http://techwhet.jduy.com/2009/10/c-how-to-add-or-convert-number-to.html</link><author>noreply@blogger.com (JDUy)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1064602282578827205.post-3317239443840451651</guid><pubDate>Fri, 25 Sep 2009 19:06:00 +0000</pubDate><atom:updated>2009-10-25T12:04:17.247-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>symfony</category><category domain='http://www.blogger.com/atom/ns#'>integrated development environment</category><category domain='http://www.blogger.com/atom/ns#'>ide</category><category domain='http://www.blogger.com/atom/ns#'>aptana</category><category domain='http://www.blogger.com/atom/ns#'>visual express</category><category domain='http://www.blogger.com/atom/ns#'>microsoft visual express</category><category domain='http://www.blogger.com/atom/ns#'>web application framework</category><category domain='http://www.blogger.com/atom/ns#'>adobe</category><title>What is an IDE / Integrated Development Environment?</title><description>Up until recent years, most all of my work consisted of just a few rudimentary web tools:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;A Text Editor - Notepad / Notepad 2 / CuteHTML&lt;br /&gt;&lt;/li&gt;&lt;li&gt;An FTP Client - CuteFTP / FileZilla&lt;/li&gt;&lt;li&gt;Graphic software - Fireworks / Paint Shop Pro&lt;/li&gt;&lt;li&gt;Web browsers - Firefox / IE&lt;/li&gt;&lt;/ul&gt;When text editors began highlighting different types of code in different colors -- wow! Well, the 1990s are over, hon. Things have moved forward by leaps and bounds, and many of the tools available for developing web projects are free.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size: large;"&gt;&lt;b&gt;Integrated Development Environments&lt;/b&gt; (IDEs) are programs that combine a number of editing tools together along with file management methods, object-oriented programming support, and the ability to debug and preview a project inside the IDE.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;IDEs are not easy to figure out. They often require studying of a manual or taking a class from someone who has knowledge of the particular IDE. Once you understand what you're looking at, they can be quite useful in managing large, complex projects. But don't think that it's going to be self explanatory from the get-go. Plan on spending a lot of time getting to know the layout of the interface and learning exactly what the IDE can and cannot do for your needs.&lt;br /&gt;&lt;h3&gt;Some Popular IDEs&lt;/h3&gt;&lt;br /&gt;Microsoft provides a number of simplified versions of it's powerful but complicated development software. The &lt;b&gt;Microsoft Visual Express versions are free&lt;/b&gt; and allow you to develop working projects while working your way toward a better understanding of that company approaches software development. Windows only, of course. Find out more here:&lt;br /&gt;&lt;blockquote&gt;&lt;a href="http://www.microsoft.com/express"&gt;&lt;b&gt;www.microsoft.com/express&lt;/b&gt;&lt;/a&gt;&lt;br /&gt;&lt;/blockquote&gt;Aptana Studio is an IDE for web development. Again, &lt;b&gt;Aptana is free software &lt;/b&gt;that allows you to create simple programming projects or more complex Object-Oriented projects. It takes some figuring out -- just setting up the FTP client to my site took a couple of days to find. Aptana offers a lot of nice features for a lot of different web-favorite languages like PHP, Ruby on Rails, AJAX / Javascript, and of course HTML and CSS. The company provides other services that you would have to pay for like web hosting. (At one point they had an iPhone environment, but dropped that aspect in mid-2009.) Windows, Mac or Linux:&lt;br /&gt;&lt;blockquote&gt;&lt;a href="http://www.aptana.org/"&gt;&lt;b&gt;www.aptana.org/&lt;/b&gt;&lt;/a&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;I know there's got to be tons more, like &lt;b&gt;Adobe's Creative Suites&lt;/b&gt;, which cost a lot, but offer a lot, too. Dreamweaver is absolutely invaluable sometimes, and the inclusion of Adobe's AJAX suite called &lt;a href="http://labs.adobe.com/technologies/spry/"&gt;Spry&lt;/a&gt; really makes fancy javascript menus and tabs as easy as 1-2-3.&lt;br /&gt;&lt;blockquote&gt;&lt;b&gt;&lt;a href="http://www.adobe.com/"&gt;Adobe's&amp;nbsp; Creative Suites&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;Wikipedia has a great list of the different IDEs and the languages they support.&lt;br /&gt;&lt;blockquote&gt;&lt;b&gt;&lt;a href="http://en.wikipedia.org/wiki/Comparison_of_integrated_development_environments"&gt;Wikipedia: Comparison of integrated development environments&lt;/a&gt;&lt;/b&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1064602282578827205-3317239443840451651?l=techwhet.jduy.com' alt='' /&gt;&lt;/div&gt;</description><link>http://techwhet.jduy.com/2009/09/what-is-ide-integrated-development.html</link><author>noreply@blogger.com (JDUy)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1064602282578827205.post-7998885996688214309</guid><pubDate>Fri, 25 Sep 2009 13:07:00 +0000</pubDate><atom:updated>2009-10-25T12:35:21.665-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>curl</category><category domain='http://www.blogger.com/atom/ns#'>ubuntu</category><title>Ubuntu: Installing cURL? What is cURL?</title><description>How to install cURL on your Ubuntu Linux machine:&lt;br /&gt;&lt;blockquote&gt;&lt;b&gt;sudo apt-get install curl&lt;/b&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;h3&gt;So, what is cURL anyway?&lt;/h3&gt;&lt;br /&gt;In it's simplest use, you can retrieve data files over the web using URL-style communications.&lt;br /&gt;&lt;br /&gt;This includes the HTML code from any web page.&lt;br /&gt;&lt;blockquote&gt;&lt;b&gt;curl www.ExampleWebPageSite.com&lt;/b&gt;&lt;br /&gt;&lt;/blockquote&gt;But it does much more than that. It will transfer and save files. It can also make requests using a username and password. cURL can communicate through FTP, FTPS, HTTP, HTTPS, TELNET, and other protocols.&lt;br /&gt;&lt;br /&gt;One example use is &lt;a href="https://cms.paypal.com/us/cgi-bin/?&amp;amp;cmd=_render-content&amp;amp;content_ID=developer/library_code"&gt;PayPal's API&lt;/a&gt; -- thousands of people are performing web-based credit transactions right now using cURL to query PayPal. Data is transmitted securely using cURL.&lt;br /&gt;&lt;br /&gt;For more information, you can visit the cURL website.&lt;br /&gt;&lt;blockquote&gt;&lt;a href="http://curl.haxx.se/libcurl/c/https.html"&gt;http://curl.haxx.se/libcurl/c/https.html&lt;/a&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;If you have curl installed on a Linux system, you can type:&lt;br /&gt;&lt;blockquote&gt;&lt;b&gt;curl --help&lt;/b&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1064602282578827205-7998885996688214309?l=techwhet.jduy.com' alt='' /&gt;&lt;/div&gt;</description><link>http://techwhet.jduy.com/2009/09/ubuntu-installing-curl-what-is-curl.html</link><author>noreply@blogger.com (JDUy)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1064602282578827205.post-842745130425862269</guid><pubDate>Fri, 25 Sep 2009 11:57:00 +0000</pubDate><atom:updated>2009-09-25T06:12:31.639-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>api</category><category domain='http://www.blogger.com/atom/ns#'>application programming interface</category><title>What is an API / Application Programming Interface?</title><description>In the simplest terms that I can understand:&lt;br /&gt;&lt;blockquote&gt;Companies like Google and Amazon have valuable data. You would like to use their data on your web site. Those companies provide a set of tools that allows you to connect to their databases. You retrieve the data using specific programming methods, process that data into useful information, and repackage the data into something your visitors want to see.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;The method of connection provided by a company to their database and services is the Application Programming Interface (API).&lt;/b&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;blockquote&gt;Typically, you (the data requester), are required to sign up at the company's website and agree to certain rules of usage. In return, they provide you wit a "key" -- a unique identifier that let's them know that you are who you say you are and you are using their data at a website that they can monitor.&lt;br /&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1064602282578827205-842745130425862269?l=techwhet.jduy.com' alt='' /&gt;&lt;/div&gt;</description><link>http://techwhet.jduy.com/2009/09/what-is-api-application-programming.html</link><author>noreply@blogger.com (JDUy)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1064602282578827205.post-640677953249781355</guid><pubDate>Fri, 25 Sep 2009 06:51:00 +0000</pubDate><atom:updated>2009-09-24T23:53:15.682-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>Wordpress</category><category domain='http://www.blogger.com/atom/ns#'>hosts</category><category domain='http://www.blogger.com/atom/ns#'>wordpress mu</category><category domain='http://www.blogger.com/atom/ns#'>linux</category><category domain='http://www.blogger.com/atom/ns#'>ubuntu</category><title>Ubuntu: Wordpress MU installation error (localhost.localdomain)</title><description>Such a frustrating problem this week.&lt;br /&gt;&lt;br /&gt;Trying to set up a Wordpress MU installation on my home Ubuntu Linux server setup.&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Installed LAMP.&lt;/li&gt;&lt;li&gt;Downloaded Wordpress MU.&lt;/li&gt;&lt;li&gt;Copied files to Apache root WWW folder.&amp;nbsp; &lt;br /&gt;&lt;/li&gt;&lt;li&gt;Created a MySQL user account.&lt;/li&gt;&lt;li&gt;Created wordpress database &lt;br /&gt;&lt;/li&gt;&lt;li&gt;Granted proper access to new user over wordpress database.&lt;/li&gt;&lt;li&gt;Went to: &lt;b&gt;localhost&lt;/b&gt;&lt;/li&gt;&lt;li&gt;Got to this error message:&lt;/li&gt;&lt;/ul&gt;&lt;blockquote&gt;&lt;h2&gt;Warning!&lt;/h2&gt;Installing to http://localhost/ is not supported. Please use &lt;a href="http://localhost.localdomain/"&gt;http://localhost.localdomain/&lt;/a&gt; instead.&lt;br /&gt;&lt;/blockquote&gt;Looked around and around and around and finally came up with this solution:&lt;br /&gt;&lt;blockquote&gt;&lt;b&gt;&amp;gt; sudo vi /etc/hosts&lt;/b&gt;&lt;br /&gt;&lt;/blockquote&gt;&amp;nbsp;Change this line:&lt;br /&gt;&lt;blockquote&gt;&lt;b&gt;127.0.0.1&amp;nbsp;&amp;nbsp;&amp;nbsp; localhost&lt;/b&gt;&lt;br /&gt;&lt;/blockquote&gt;to read:&lt;br /&gt;&lt;blockquote&gt;&lt;b&gt;127.0.0.1&amp;nbsp;&amp;nbsp; localhost&amp;nbsp;&amp;nbsp;&amp;nbsp; localhost.localdomain&lt;/b&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;Then you just browse to:&lt;br /&gt;&lt;blockquote&gt;&lt;b&gt;localhost.localdomain&lt;/b&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Yeesh.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1064602282578827205-640677953249781355?l=techwhet.jduy.com' alt='' /&gt;&lt;/div&gt;</description><link>http://techwhet.jduy.com/2009/09/ubuntu-wordpress-mu-installation-error.html</link><author>noreply@blogger.com (JDUy)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1064602282578827205.post-4727194168641351669</guid><pubDate>Fri, 25 Sep 2009 06:12:00 +0000</pubDate><atom:updated>2009-09-25T06:37:40.320-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>php5</category><category domain='http://www.blogger.com/atom/ns#'>php</category><category domain='http://www.blogger.com/atom/ns#'>mcrypt</category><category domain='http://www.blogger.com/atom/ns#'>ubuntu</category><title>Ubuntu: PHP mCrypt Installation</title><description>mCrypt is an encryption program used on Linux systems. &lt;br /&gt;&lt;br /&gt;To install mCrypt for PHP5 on your Ubuntu Linux system:&lt;br /&gt;&lt;blockquote&gt;&lt;b&gt;sudo apt-get install php5-mcrypt&lt;/b&gt;&lt;br /&gt;&lt;/blockquote&gt;Then restart Apache with:&lt;br /&gt;&lt;blockquote&gt;&lt;b&gt;sudo /etc/init.d/apache2 restart &lt;/b&gt;&lt;br /&gt;&lt;/blockquote&gt;I needed to do this so that&amp;nbsp; phpMyAdmin would have mcrypt available.&lt;br /&gt;&lt;br /&gt;For more info about mcrypt, visit:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Official site&lt;br /&gt;&lt;a href="http://mcrypt.hellug.gr/"&gt;http://mcrypt.hellug.gr&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;PHP usage of mCrypt&lt;br /&gt;&lt;a href="http://www.php.net/manual/en/book.mcrypt.php"&gt;http://www.php.net/manual/en/book.mcrypt.php&lt;/a&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1064602282578827205-4727194168641351669?l=techwhet.jduy.com' alt='' /&gt;&lt;/div&gt;</description><link>http://techwhet.jduy.com/2009/09/ubuntu-php-mcrypt-installation.html</link><author>noreply@blogger.com (JDUy)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1064602282578827205.post-4576509558889832738</guid><pubDate>Fri, 25 Sep 2009 06:08:00 +0000</pubDate><atom:updated>2009-09-24T23:14:18.465-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>restart</category><category domain='http://www.blogger.com/atom/ns#'>apache</category><category domain='http://www.blogger.com/atom/ns#'>ubuntu</category><title>Ubuntu: Restart Apache</title><description>To restart Apache web server on Ubuntu:&lt;br /&gt;&lt;blockquote&gt;&lt;b&gt;sudo /etc/init.d/apache2 restart&lt;/b&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1064602282578827205-4576509558889832738?l=techwhet.jduy.com' alt='' /&gt;&lt;/div&gt;</description><link>http://techwhet.jduy.com/2009/09/ubuntu-restart-apache.html</link><author>noreply@blogger.com (JDUy)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1064602282578827205.post-5600405453207526366</guid><pubDate>Fri, 25 Sep 2009 03:45:00 +0000</pubDate><atom:updated>2009-10-25T12:46:27.051-07:00</atom:updated><category domain='http://www.blogger.com/atom/ns#'>javascript</category><category domain='http://www.blogger.com/atom/ns#'>dates</category><title>Javascript: How to Get the Date, Month, Year and Weekday</title><description>&lt;span style="font-size: large;"&gt;Using the Date class &lt;/span&gt;&lt;br /&gt;&lt;blockquote class="codeBox"&gt;&amp;lt;script type="text/javascript"&amp;gt;&lt;br /&gt;&lt;br /&gt;// INSTANTIATE A DATE OBJECT&lt;br /&gt;hereIsMyDate = new Date();&lt;br /&gt;&lt;br /&gt;// EXTRACT THE PARTS OF THE CURRENT DATE&lt;br /&gt;dayOfTheMonth = hereIsMyDate.getDate(); // RETURNS INTEGER 1-31&lt;br /&gt;&lt;br /&gt;monthNumber = hereIsMyDate.getMonth(); // RETRUNS INTEGER 0-11 (for Jan-Dec)&lt;br /&gt;&lt;br /&gt;weekdayNumber = hereIsMyDate.getDay(); // RETURNS INTEGER 0-6 (for Mon-Fri)&lt;br /&gt;&lt;br /&gt;fullYear = hereIsMyDate.getFullYear(); // RETURNS 4-DIGIT YEAR (ex. 2010)&lt;br /&gt;&lt;br /&gt;monthNamesArray = new Array("January","February","March","April","May","June","July","August","September","October","November","December");&lt;br /&gt;&lt;br /&gt;monthName = monthNamesArray[monthNumber];&lt;br /&gt;&lt;br /&gt;dayNamesArray = new Array("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday","Friday", "Saturday");&lt;br /&gt;&lt;br /&gt;dayOfTheWeekName = dayNamesArray[weekdayNumber];&lt;br /&gt;&lt;br /&gt;// EXAMPLE USAGE&lt;br /&gt;document.write("&amp;lt;p&amp;gt;Today's date is " + dayOfTheWeekName + ", " + monthName + ", " + dayOfTheMonth + ", " + fullYear + "&amp;lt;/p&amp;gt;");&lt;br /&gt;&lt;br /&gt;document.write("&amp;lt;p&amp;gt;&amp;amp;copy; " + fullYear + " MyWebsiteName&amp;lt;/p&amp;gt;");&lt;br /&gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;Javascript has a set of functions built into the language that will give you information about dates.&lt;br /&gt;&lt;br /&gt;The methods used to work with dates have been bundled together in something called a &lt;i&gt;class&lt;/i&gt;. The class you will be using must be referred to by its pre-defined name. Conveniently for us, it is called: &lt;b&gt;Date()&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;/b&gt;&lt;br /&gt;The first thing to do when using the Date class is to create something called an &lt;i&gt;object&lt;/i&gt;. An object allows you to make a working version of the class. (You can't work with the Date() class directly.) You need to pick a name for this new object.&lt;br /&gt;&lt;br /&gt;Here we'll call it: &lt;b&gt;hereIsMyDate&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;To create this object (this copy of the Date() class), you write a&lt;b&gt; &lt;/b&gt;statement like this:&lt;br /&gt;&lt;blockquote&gt;&lt;b&gt;hereIsMyDate = new Date();&lt;/b&gt;&lt;br /&gt;&lt;/blockquote&gt;Now, you can start using the functions or methods that come from the Date() class. There are many functions available including dates, times, and the ability to change dates and times. These functions should make for easy ways to go forward or backward in time and get information about that date. You could, for example, figure out what day of the week Valentine's Day will occur next year, what the time and date will be 8 hours from now, or perhaps get data about a date that occurred exactly 1035 days ago.&lt;br /&gt;&lt;br /&gt;&lt;hr /&gt;&lt;br /&gt;&lt;br /&gt;To get the current day of the month you use the &lt;b&gt;.getFullYear&lt;/b&gt;() method:&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;b&gt;fullYear = hereIsMyDate.&lt;span style="background-color: white;"&gt;getFullYear&lt;/span&gt;();&lt;/b&gt;&lt;br /&gt;&lt;/blockquote&gt;To get the current day of the month you use the &lt;b&gt;.getDate()&lt;/b&gt; method:&lt;br /&gt;&lt;blockquote&gt;&lt;b&gt;dayOfTheMonth = hereIsMyDate.&lt;/b&gt;&lt;b&gt;getDate();&lt;/b&gt;&lt;br /&gt;&lt;/blockquote&gt;To get the&amp;nbsp; current day of the week, you use the &lt;b&gt;.getDay()&lt;/b&gt; method. However, you will not get a string like "Monday" or "Mon," you will only get back an integer from 0 to 6, which represent Sunday to Saturday. To get a string you would have to create a separate array of date names and use the value sent back from the .getDay method to show a text version of the date:&lt;br /&gt;&lt;blockquote&gt;&lt;b&gt;dayOfTheWeekNumber = hereIsMyDate.getDay();&lt;br /&gt;&lt;br /&gt;dayNamesArray = new Array("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday");&lt;br /&gt;&lt;br /&gt;dayOfTheWeekName = dayNamesArray[dayOfTheWeekNumber];&lt;/b&gt;&lt;br /&gt;&lt;/blockquote&gt;Similarly, to get the current month, you would use the &lt;b&gt;.getMonth()&lt;/b&gt; method. The value returned will be from 0 to 11, representing January to December. If necessary, create an array of month names:&lt;br /&gt;&lt;blockquote&gt;&lt;b&gt;monthNumber = hereIsMyDate.getMonth();&lt;br /&gt;&lt;br /&gt;monthNamesArray = new Array("January","February","March","April","May","June","July","August","September","October","November","December");&lt;br /&gt;&lt;br /&gt;monthName = monthNamesArray[monthNumber];&lt;/b&gt;&lt;br /&gt;&lt;/blockquote&gt;Once you have your parts assigned to variables, you can create different uses for them. For example the code at the top of this document will output the following:&lt;br /&gt;&lt;br /&gt;&lt;blockquote class="codeBox"&gt;&lt;br /&gt;Today's date is Thursday, September, 24, 2009&lt;br /&gt;&lt;br /&gt;© 2009 MyWebsiteName&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;For the most technical explanation of the Date() class and the way it works, please see &lt;b&gt;Section 5.9 &lt;/b&gt;of the official JavaScript (a/k/a ECMAScript) &lt;a href="http://www.ecma-international.org/publications/standards/Ecma-262.htm"&gt;specification ECMA-262&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1064602282578827205-5600405453207526366?l=techwhet.jduy.com' alt='' /&gt;&lt;/div&gt;</description><link>http://techwhet.jduy.com/2009/09/javascript-how-to-get-date-month-year.html</link><author>noreply@blogger.com (JDUy)</author><thr:total>0</thr:total></item><item><guid isPermaLink='false'>tag:blogger.com,1999:blog-1064602282578827205.post-6199401054035447211</guid><pubDate>Thu, 24 Sep 2009 19:19:00 +0000</pubDate><atom:updated>2009-10-25T12:20:31.288-07:00</atom:updated><title>Ubuntu: How to install Java? (JRE and browser Plug-in)</title><description>If you have hit a website that says your Firefox browser in Ubuntu Linux needs to have Java installed, this installation instruction should work in a terminal window. It will install the Java Runtime Environment and the Java browser plug-in:&lt;br /&gt;&lt;blockquote&gt;&lt;b&gt;sudo apt-get install sun-java6-jre sun-java6-plugin&lt;/b&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1064602282578827205-6199401054035447211?l=techwhet.jduy.com' alt='' /&gt;&lt;/div&gt;</description><link>http://techwhet.jduy.com/2009/09/ubuntu-how-to-install-java-jre-and.html</link><author>noreply@blogger.com (JDUy)</author><thr:total>0</thr:total></item></channel></rss>
