First of all, PEARL/CGI vs. PHP/mySQL are not exactly the same. mySQL is the database, and PHP is the programming language. CGI (Common Gateway Interface) is a specification how to pass information between an HTTP server and a program that will do something with the request. Pearl is the language that this program would be written in. A few years ago, Microsoft wrote ASP which is basically Microsoft's server-side language and response to CGI's faults. ASP is also a way to proccess the requests, and the actuall programs in ASP, like in CGI, are written in other languages - Javascript, VBScript, Pearl, Python, etc. Meanwhile, PHP is the whole package in one - the instructions for interacting with the HTTP server and a programming language in one. MySQL is just a database, so whichever way you go, you're going to have to learn MySQL.
Technically (yeah yeah, I'm being anal here, but I just thought you'd like to understand what you're considering better), your title should be "CGI/Pearl/MySQL vs. PHP/MySQL"
I'm just learning php/mysql right now (so far I can post to a database some information and view it/arrange it nicely, go me!

). My expierience is that php/mysql are pretty easy to pick up. That and I suggest php/mysql for a simple reason - it's newer.
My book on ASP has a little description about CGI and why Microsoft made ASP. The server needs to create a new CGI process for every CGI request. If the site is under a lot of stress, this severly limits performance. So Microsoft did something called ISAPI (Internet Server Application Programming Interface). Basically, ISAPI allows it so DLLs are loaded into the same memory space as the server. The server processes requests by executing code from the DLL, which, because is in the same memory as the server, results in no additional process overhead. Basically, "ISAPI applications execute exponentially faster than CGIs, while at the same time making less demands on the server's memory."
Now that was from my ASP book. It didn't really mention anything about PHP, but I'm assuming PHP is also an ISAPI application. What it comes down to is PHP is newer than CGI, and so, was designed with CGI's faults in mind (looking at it the other way, why make something completely new (PHP) when the old way (CGI) isn't broken?). If the differences really don't matter to you (you're site isn't going to be under that much stress), look at it this way - are you going to learn something old, or learn something new? Obviously, the old way is going to die out eventually, so my way of thinking is you might as well learn whats going to be used longer - PHP.
Now, I mentioned ASP. ASP is newer than PHP, so by my logic, ASP should be learned over PHP, which is why I got the ASP book instead of the PHP book (if you're curious, the improvement over PHP in ASP is "sessions" - these guys store information about unique users in the
server's memory rather than external sources, like cookies or files on the server. The way I see it, unless you need that kind of tracking ability (i.e. commercial sites), there is no real difference between ASP and PHP). After some expirience with ASP, I'm liking PHP better. I like PHP better mainly because it's more flexible. I've found that you can do more with variables easier in PHP than you can in ASP (atleast using Javascript to make ASP pages, which is how the book taught it). However, the
biggest reason why I prefer PHP over ASP is the fact that
PHP is more broadly used. The reason why I kept on saying Microsoft made ASP is because ASP isn't supported on non-Microsoft platforms (I'm almost certain this is true). PHP on the other hand runs on almost every platform - Windows, Unix, Linux, etc. And if you know anything about the internet, you'll know most hosts don't use Windows. Because of this, it's very hard to find a provider that hosts ASP. PHP is also open-source, meaning it's undergoing constant revisions (open-source is also probably the reason why it's available on every platform). In conclusion, PHP is the way to go
DISCLAIMER: All of these facts are what I've learned (or atleast think I've learned) in my expierience with server-side languages. If you know something I said is complete bs, please tell me. I'd like to know
