Posts filed under 'Books'
All this week, Adobe is running Adobe Developer Week, a series of seminars on web development. On Friday 28 March, it’s my turn to give a talk called “The Essential Guide to Dreamweaver CS3 with CSS, Ajax, and PHP”. If that sounds an incredibly ambitious subject for a one-hour talk, it is, but what the heck. Actually, Adobe simply decided to use the title of my book; but there’s no way I can cram the content of all 750 pages into my talk, so what I plan to do is give a little flavour of each aspect: CSS, Adobe’s version of Ajax (Spry), and PHP. I’ll be demonstrating live with Dreamweaver, showing tips and best practice techniques.
So, why not join me online at 1600 UTC (0900 PST) on Friday? To participate, you need to register on the Adobe website. Up to 2,500 can join the live presentation, and it will be available as a recording about a week later. One lucky person joining the live seminar will be chosen at random to receive a free copy of Dreamweaver CS3, Flash CS3, or Flex Builder 3. (Unfortunately, for legal reasons, the draw applies only to the US and Canada.)
March 26th, 2008
Several readers have asked me to explain how to create a link to a specific panel in a Spry tabbed panels widget or accordion. The Essential Guide to Dreamweaver CS3 shows how to do this from the same page, but not from another page. It’s quite simple to do with the help of SpryURLUtils.js, which was added to the Spry framework in version 1.6. I’ve added step-by-step instructions in the Tutorials section of my site, complete with a zip file containing a simple example. I hope you find it useful.
February 9th, 2008
A week ago, I wrote about the blip in supplies of The Essential Guide to Dreamweaver CS3 with CSS, Ajax, and PHP. My publisher (friends of ED) got onto the case immediately, and told me that 388 copies of the book were on the way to Amazon.com. You might think that would be enough to keep Amazon going for a while. Indeed it did—about one day. Now, although I’d love to sell that number of books in a day—and every day—for a sustained period, books about Dreamweaver and PHP don’t fall into the same category as Harry Potter. The reason the mountain of books disappeared so quickly is because of back orders waiting to be fulfilled.
I’ve just checked Amazon again—and on Monday morning (London time, 28 January), the book was back in stock, but there was only one copy left. Wow, this book is hot! Grab it while you can. Nothing pleases me more than to see my book fly off the shelves, but it’s equally frustrating to see readers unable to get hold of a copy because demand was higher than anticipated. I see that Amazon is now quoting 4 February as the date supplies should be back to normal. Let’s hope it’s no later than that, and preferably sooner.
January 28th, 2008
For the past couple of weeks, the availability of The Essential Guide to Dreamweaver CS3 with CSS, Ajax, and PHP has been listed on Amazon.com as “usually ships within 1 to 3 weeks”. Very often, particularly with a recently published book, that means demand has been higher than expected, and there’s a temporary blip in supply. However, today the availability suddenly changed to “usually ships within 3 to 6 weeks”, so I decided to get in touch with my publisher to find out what’s going on.
Apparently, demand for the book has risen in recent weeks, so that’s good news for me. Thank you to everyone who has bought a copy. It has also been reprinted, and I’m told the new copies should already be in the distribution chain. Apologies if you have ordered a copy, and still haven’t got it. We’re trying to find out if we can speed up deliveries. [Update:] It looks as though things are moving. Amazon seems to have got hold of a few copies, and it’s quoting January 30 as the day when supplies should be back to normal. If you can’t wait, The Essential Guide to Dreamweaver CS3 is available for immediate download as an eBook. You can buy it through visiting the book’s page on the friends of ED website. By the way, this distribution problem does not affect Amazon in the UK, where the book is reported to be in stock.
January 22nd, 2008
One of the features I stressed in PHP Solutions was the need to write secure code. On page 378, I said it was essential to display error messages in a development environment so that you can debug your code. However, raw error messages look unprofessional in a live website. Well, guess who forgot to take his own advice? Yes, it was me—guilty as charged. Do as I say, not do as I do.
I found out as a result of a couple of messages posted under a pseudonym to my blog. Since I have been involved in an acrimonious discussion about security in the past couple of days, I suspect that someone involved in that discussion, either as a participant or an observer, wanted to embarrass me. The way in one of the messages was phrased appeared to be a direct reference to something I had written in the other discussion. Sure, I’ve ended up with (a little) egg on my face, but the error message didn’t reveal anything about the structure of the site; and I have now implemented the advice on page 378.
Am I embarrassed about the event? Yes, I suppose I am, but we all make mistakes from time to time. If I have made a mistake, I’m usually the first to admit it, particularly if the person pointing it out does so in a spirit of mutual help. I decided not to publish the messages—not to save my red face, but because the poster didn’t have the decency to use his (or her) own name, and because it was done in an offensive way. The poster accused me of wasting my time in a forum that I haven’t visited probably for about two years, although it’s a forum that provides a lot of free and usually very sound advice about website design.
Security on the web, as well as in everyday life, is important to all of us. Pointing out another person’s mistakes can be a valuable service. It’s not a question of scoring points, but of helping one another. Throughout the other discussion, I used my own name, as did most other participants. We had a genuine disagreement, but everyone was open about it. Sadly, the person who found a minor security error in one of my pages decided to be abusive and hide behind a false name. So, whoever you are, thank you for bringing it to my attention, but your actual posts have been sent to cyberoblivion.
January 22nd, 2008
A question in the friends of ED forum from a reader of The Essential Guide to Dreamweaver CS3 with CSS, Ajax, and PHP has alerted me to a change in the way Spry 1.6 handles HTML tags in CDATA sections of an XML file. This results in most of the examples in Chapters 19 & 20 breaking after you upgrade to Spry 1.6. Fortunately, the remedy is simple. You can find the details on the book’s updates page.
January 6th, 2008
Several readers of my books have reported being unable to find the Windows installer for Apache on the Apache download page. Apache is available in many different versions, so the direct links don’t always list the MSI installer package for Windows. If the Windows installer isn’t listed, click the link for Other files, followed by the links for binaries and win32. On the final page, scroll down until you find apache_2.2.x-win32-x86-no_ssl.msi
(where x represents the number of the most recent version).
I can’t give a direct link to the file because Apache requests that you always use a mirror site close to you. Following the links as described here automatically takes you to a mirror site.
December 14th, 2007
It seems as though the cause of the European clock change crashes on Dreamweaver CS3 is a corrupted file called WinFileCache-[random_numbers].dat. On Windows XP, it’s located at C:\Documents and Settings\<username>\Application Data\Adobe\Dreamweaver 9\Configuration. On Vista, it’s at C:\Users\<username>\AppData\Roaming\Adobe\Dreamweaver 9\Configuration. Simply delete the file and restart Dreamweaver. This still hasn’t been confirmed as the definitive solution, but it seems to work on most systems. It certainly fixed the problem for me.
[Update]: This has now been confirmed as the solution. Dreamweaver creates a new version of the file as soon as you relaunch the program.
October 29th, 2007
I have just upgraded my Mac PowerBook G4 laptop to Mac OS X 10.5 (Leopard). The installation went fine, but there are a couple of issues you need to be aware of if you use your Mac to develop PHP, as they could affect your decision to upgrade—at least for the time being.
Leopard installs Apache 2.2.6 instead of the Apache 1.3 series that was used in all previous versions of Mac OS X. As a result, when you restart your computer for the first time, web sharing will be disabled. Turning it on is exactly the same as described in all my books. However, if you use the Mac OS X PHP package from Marc Liyanage, it won’t work.
Although Marc offers an Apache 2 version on his site, that won’t work on Leopard, either. According to a post from Marc on 26 October in this thread in his forum, he needs to figure out how to integrate it all, but is currently very busy at work. The same thread discusses using the version of PHP preinstalled in Leopard. Apple has inexplicably decided to install PHP 4, even though it comes to the end of its support life in just over two months’ time. [Updated 28 Oct 2007] As Dan Brown points out below, PHP 5 is, indeed, preinstalled in Leopard. The confusion is caused by Apache being in a new location. I suspect that the old versions of Apache and PHP were left on my machines because they were upgraded from OS X 10.4, and that a completely fresh install of Leopard would have only Apache 2.2.6 and PHP 5.2.4.
Following Dan’s instructions below will get PHP 5 up and running in Leopard. However, the default installation of PHP doesn’t read php.ini. You need to create that yourself. I’ll try to get some instructions up on my site in the next day or two.
I have no idea how long it will take Marc Liyanage to work his usual wonders with his PHP package, but if you want to use Mac OS X to develop PHP sites, either delay upgrading to Leopard follow Dan’s instructions below or use the all-in-one package from MAMP. I have never used MAMP, but it has a good reputation. Perhaps it’s time for me to give it a try.
[Added 28 Oct 2007] MAMP seems to work without problem on Leopard, and is definitely worth considering if the idea of working in Terminal sends cold shivers up your spine. After downloading it, simply copy the MAMP folder to Applications, and then double-click the MAMP icon inside the MAMP folder. I suggest that you select Preferences > Ports, and click “Set to default Apache and MySQL ports”. If you do this, it’s important not to switch on Web Sharing in System Preferences. You must also close down any existing MySQL server. It’s also important to realize that the Apache and MySQL versions installed by MAMP are completely independent. The site root and MySQL data store are in different locations. Any databases created in a previous installation of MySQL must be exported, and reimported into the MAMP version of MySQL. The need to move things around detracts from the attraction of MAMP if you already have several databases stored in an existing installation of MySQL.
October 27th, 2007
At long last, Adobe has created an extension to update the version of Spry in Dreamweaver CS3. You can download the extension by going to the Spry section of Adobe Labs. The extension is free, but to obtain it, you need to log into Labs using your Adobe ID. If you don’t already have an Adobe ID, it’s easy to create an account (also free).
Use the Extension Manager to install the Spry Updater for Dreamweaver CS3. When you first launch Dreamweaver after installation, you’ll be presented with a dialog box explaining how the updater works. It lets you update the Spry library files on existing sites, and gives you the option to replace all files or just those that you want to change. And if anything goes wrong, you can retrieve the old files from a backup folder.
The extension updates the Spry files to version 1.6 (the version that shipped with CS3 was 1.4), and adds code hints for the new features. However it does not add any new features to the Dreamweaver interface. To use the new features in Spry 1.6, you need to hand-code them yourself.
October 2nd, 2007
Next Posts
Previous Posts