Slashdot Mirror


Beginning PHP 5 and MySQL E-Commerce

norburym (Mary Norbury-Glaser) writes " Beginning PHP 5 and MySQL E-Commerce: From Novice to Professional by Cristian Darie and Mihai Bucica is a valuable resource for the web developer/intermediate programmer who is preparing to create a database-driven e-commerce site and who is most comfortable learning by example. The authors have prepared a book with real-world application in a tutorial format; they give detailed instruction on how to create a fully developed e-commerce web site from design phase to deployment. This book is not for the raw beginner; some knowledge of PHP and MySQL is assumed and truthfully, this book will most benefit a professional web designer who has some experience building dynamic elements into web sites." If that fits you, or if you want it to, read on for the rest of Norbury-Glaser's review. Beginning PHP 5 and MySQL E-Commerce: From Novice to Professional author Cristian Darie and Mihai Bucica pages 568 publisher Apress rating 9 reviewer Mary Norbury-Glaser ISBN 1590593928 summary Create an E-Commerce Site Using PHP 5 and MySQL 4

The authors use a T-shirt shop scenario as their model for the design and implementation of their e-commerce site. The book is separated into three distinct "phases" of development. Phase I covers the foundations of creating the Web site, what tools to use and how to use them including creating a product catalog, incorporating a search tool, using PayPal payment processing and adding an administration interface. Phase II proceeds with enhancing the site with a custom shopping cart, a client-server ordering process, a page for pending order administration and a dynamic product recommendations system. Phase III looks at a more complicated customer accounts scenario: taking credit cards instead of using PayPal, building an order-processing pipeline, implementing credit card gateways, adding a product reviews system and accessing web services using SOAP (Simple Object Access Protocol) and REST (Representational State Transfer) XML-based protocols.

Chapter 1 introduces business strategies for considering an online commerce solution and the reasons for launching an e-commerce presence: acquiring more customers, making customers spend more and reducing the costs of fulfilling orders. A thorough read of Appendix C ("Project Management Considerations") would be a good aside at this point. This section provides excellent insight into choosing an appropriate software development cycle model for different projects with a good discussion of advantages and disadvantages of various methods and theories.

Chapters 2 through 7 constitute Phase I proper. The authors begin by tackling the basic structure of the site and focusing on flexible design, scalability and reliability. They introduce a three-tier architecture model: the presentation tier (dynamic pages that contain the elements that allow visitor to the site to interact effectively with the business end), the business or middle tier (requests for data that are posed by the visitor are passed on by the presentation tier to the data tier) and the data tier (manages the data and sends appropriate responses back to the business tier when requested).

Chapter 2 lays the groundwork for the reader to establish the TShirtShop site and accompanying database. Installation instructions for Apache 2, PHP 5, MySQL 4 and phpMyAdmin are referenced to Appendix A. Instructions for installing other tools used in this book - the Smarty template framework for PHP and PEAR DB - are included within Chapter 2. I quite admire the authors' choice to use Smarty. Smarty parses templates behind the scenes and creates PHP scripts from them so when a Web page is rendered, Smarty reads from the PHP scripts instead of pulling the templates themselves, eliminating run-time parsing of templates. Smarty also has built-in caching of template outputs, which saves on overhead in retrieving data from the database.

After creating the main index.php page and the index.tpl Smarty template, the authors discuss error handling and reporting (with a nod to PHP's often head-scratching error messages). They provide a nice set of instructions here for creating an efficient error handling/reporting scheme. The last step in Chapter 2 is to load phpMyAdmin and create the new tshirtshop database and an admin user.

From this point forward, the authors structure each chapter to adhere to the three-tier model. Implementing the presentation tier, the business tier and the data tier is an integral part of the construction of the site. The reader is encouraged to begin every major aspect of the project with these elements in mind.

Chapters 3 and 4 lead the reader through the creation of the product catalog for the TShirtShop site. The authors give a brief overview of SQL, relational databases, using PEAR DB and Smarty plug-ins. The first table is created and populated with data, PEAR DB is used to access the data and a Smarty template is used to implement the user interface. Multiple tables are then added to enhance product catalog features, which allows for a discussion of table relationships. Filtering SQL results and joining data tables are then examined in the section on implementing the data tier.

Chapter 5 introduces a product search engine to the site by using MySQL to search the database and using Smarty templates to build the user interface. This is a major component of any e-commerce site and the authors prepare an excellent code set for this purpose by using the full-text searching functionality of MySQL. The pros and cons of this versus using LIKE are also discussed.

Chapter 6, "Receiving Payments Using PayPal", will be of great interest to many readers. Many individual proprietors and small businesses don't have the resources to process credit cards and therefore use Internet Payment Service Providers to process transactions. In this chapter, the authors teach the reader how to create a new PayPal account, how to integrate the PayPal shopping cart and custom checkout and how to configure PayPal to automatically calculate shipping costs. There is a bit of missing code in this chapter but it appears correctly on this book's Apress errata page (apress.com).

The last chapter of Phase I covers implementation of a catalog administration page using componentized templates and a simple authentication scheme for administrator access to the page.

By the completion of Phase I, the design and programming for a completely functional e-commerce site is in place.

Phase II begins with a pros and cons discussion of using a simple cart method like PayPal versus creating a custom shopping cart and checkout to enhance flexibility. There are some neat tricks here including storing the cart ID as a cookie on the client.

In Chapters 8 and 9, the reader learns how to store cart info in the database, how to implement a client-side ordering mechanism and an orders administration page for pending orders. The benefit to this is that since the data is now stored in the database, quantitative analysis and tracking can be done based on the products sold.

In Chapter 10, the authors add product recommendations to their TShirtShop site. This dynamic visitor-specific functionality is an excellent sales strategy intended to boost sales by adding suggestions for upgrading a purchase or complementing a purchase with another product. The items recommended are based on what products were ordered together by other customers. The SQL query to get the list of products is very nicely done!

This concludes Phase II and the site is again fully functional but with some neat new enhancements: the site has its own shopping cart, credit card processing is accomplished through PayPal and an orders administration page and product recommendations system have been added. Many individually run or small businesses may stop at this point and be completely content with the e-commerce site that has been developed so far. But the authors proceed with more complex scenarios by offering Phase III: "Processing Orders and Adding Features". This final section of the book deals with processing credit cards, using SSL to encrypt data transactions, storing customer accounts, adding a customer product review system (think Amazon.com) and using XML Web services to integrate Amazon.com products into the site.

The authors spend some time covering the design of the order pipeline and optimizing the logical sequence of tasks that need to be tracked. Chapter 12 deals with the modifications necessary to the enable pipeline processing and the database schema changes for auditing and storing data. Chapter 13 implements the pipeline sections in preparation for adding full credit card transaction functionality in Chapter 14 and rounds out with the creation of a new orders admin page that shows an audit trail for any particular order stored in the database.

Full implementation of credit card orders is completed in Chapter 14. The authors discuss credit card transaction fundamentals including working with credit card payment gateways, understanding transactions and card processing. They look at two payment services providers as examples: DataCash (a UK-based company) and Payflow Pro (a division of Verisign).

Product review integration is the subject of Chapter 15. This is another highly coveted enhancement to e-commerce sites. The authors provide a very simple (and therefore, elegant, in my view) implementation of code to add review capabilities to the sample site.

The final chapter of the book is Chapter 16, "Connecting to Web Services", where the authors complete their professionally developed TShirtShop e-commerce site by integrating the Amazon E-Commerce Service using SOAP and REST.

Appendices A-C cover necessary application installation (as mentioned above), hosting advice, steps for getting your files where they need to be on various hosting models and project management theory. Access to code and errata is available on the Apress Web site (apress.com). This book has a nice layout, clean typography, plenty of screen shots and the code sets are offset from the main body of text and are extremely easy to follow. The book can readily be propped open while looking on from your development machine and the overall size of the book isn't unwieldy or awkward to place on a surface.

In the The Expert's Voice in Open Source series, Apress has harnessed the knowledge and expertise of some of the best folks in open source and this book is no exception. Cristian Darie has previously written several well-regarded volumes (Programmer's Guide to SQL, Beginning ASP.NET E-Commerce, Visual C# .NET: A Guide for VB6 Developers, among others) and his skill in untangling complex subject matter is apparent in Beginning PHP 5 and MySQL E-Commerce. Both authors have prepared a book that will enable any intermediate developer to create a fully functional e-commerce Web site that they can then customize and extend. This book is consistent, well organized and clearly presented. Beginning PHP 5 and MySQL E-Commerce: From Novice to Professional is the perfect tutorial-style book for start-to-finish e-commerce site development instruction for any developer with the desire to learn the advanced tools and techniques to get a scalable professional site designed and in production.

You can purchase Beginning PHP 5 and MySQL E-Commerce: From Novice to Professional from bn.com. Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.

202 comments

  1. my God! by east+coast · · Score: 3, Funny

    Now that was a lengthy blurb.

    --
    Dedicated Cthulhu Cultist since 4523 BC.
    1. Re:my God! by MissTuxie · · Score: 1, Offtopic

      blurb? that's more like a sermon to me!

    2. Re:my God! by twilight30 · · Score: 0, Offtopic

      from the for-not-quite-beginners dept.

      Looks like Timothy needs to read this himself.

      Oh wait, Slashdot runs on Perl ...

      Thank you, I'm here all week.

      --
      ========================================
      Death will come, and will have your eyes
      -- Pavese
    3. Re:my God! by pbailey · · Score: 1

      No kidding. I thought maybe the whole book was posted up here!

    4. Re:my God! by Anonymous Coward · · Score: 0

      Do you mean he actually knows how to read and not a monkey hitting the right buttons on screen and receiving a banana?

    5. Re:my God! by Profane+MuthaFucka · · Score: 2, Funny

      The blurbs are getting longer. And Leon's getting LARGER!

      --
      Fascism trolls keeping me up every night. When I starts a preachin', he HITS ME WITH HIS REICH!
    6. Re:my God! by vgaphil · · Score: 0, Offtopic

      It's more of a blog than a blurb..

      New headline "timothy Hampers Mobile Internet?"

      --
      A clever person solves a problem. A wise person avoids it. -- Einstein
    7. Re:my God! by Coocha · · Score: 0, Offtopic

      yea, and timothy said unto the unwashed masses:

      "my bad. really."

      --sigh-- this day has been the most evident of /. degradation yet... or maybe I wasn't paying attention before.

      --
      May the threads progress competently.
    8. Re:my God! by dotslasher_sri · · Score: 0, Offtopic

      i can see the fark headline "timothy Hampers Mobile Internet..hilarity ensues"

    9. Re:my God! by Anonymous Coward · · Score: 0

      For those clueless moderators out there (-1, Offtopic?), go see the movie Airplane, then you'll get the joke.

    10. Re:my God! by vgaphil · · Score: 1

      i can see the fark headline "timothy Hampers Mobile Internet..Tim Berners-Lee surrenders"

      --
      A clever person solves a problem. A wise person avoids it. -- Einstein
    11. Re:my God! by twilight30 · · Score: 1

      Not quite :)

      --
      ========================================
      Death will come, and will have your eyes
      -- Pavese
    12. Re:my God! by ScoLgo · · Score: 1

      Stupid mods. That one had me laughing out loud.

      --
      "Michael, I did nothing. I did absolutely nothing - and it was everything that I thought it could be."
  2. Ugh... editors at it again... by Anonymous Coward · · Score: 0, Offtopic

    Nothing like having THE WHOLE REVIEW on the /. summary page...

    1. Re:Ugh... editors at it again... by s4nt · · Score: 1

      Now i dont even need to RTFB!
      XD

    2. Re:Ugh... editors at it again... by squarefish · · Score: 1

      maybe they should consider reading the book!
      it may help them fix the system.

      ;)

      --
      Creationists are a lot like zombies. Slow, but powerful and numerous. And they all want to eat our brains.
  3. Holy Shit by pHatidic · · Score: 1, Insightful

    Talk about a shameless plug, they put the entire review on the front page!

    1. Re:Holy Shit by Addiction+Charters · · Score: 1

      why not post the entire book now...

  4. Yikes! by Botunda · · Score: 0, Offtopic

    Holy post the whole article on the main page!!!

  5. Looks like.. by ciroknight · · Score: 0, Offtopic

    Someone forgot to make the schpeal break in Slashdot. The front page is six miles long!!!

    Ah /., may you stay broken forever.

    --
    "Victory means exit strategy, and it's important for the President to explain to us what the exit strategy is." G.W.Bush
    1. Re:Looks like.. by sycotic · · Score: 0, Redundant

      FYI: it is actually short on the daily edition page:

      http://slashdot.org/index.pl?issue=20050324

      --
      -- If I were a fish, I'd be wet
    2. Re:Looks like.. by LNO · · Score: 0, Offtopic

      Shine on, you crazy diamond...

  6. Wow by ClownsScareMe · · Score: 0, Offtopic

    My eyes are bleeding.

    --
    I read Slashdot for the articles
  7. that's it! by M1FCJ · · Score: 1, Offtopic

    Right. What the heck is this? Couldn't you post less into the intro of the article? I'm fed up with sloppy editors in /. (What? Am I new here? Who's asking?)

  8. Poor editing by The+Amazing+Fish+Boy · · Score: 4, Funny

    That front page entry is too damn short. How am I supposed to have any idea of what lies behind the "Read More" link?

    1. Re:Poor editing by smittyoneeach · · Score: 2, Funny

      You must be new here:
      1. Bang head against wall, repeatedly.
      2. ????
      3. Profit!

      --
      Get thee glass eyes, and, like a scurvy politician, seem to see things thou dost not.--King Lear
    2. Re:Poor editing by Thnikkaman · · Score: 0, Offtopic

      AMEN! How can the editors expect us to be interested in the story if they won't give us enough information? I understand keeping it brief so that we can read more if we choose to, but we need something to wet our tastebuds.

  9. OffTopic: Display Error by Orne · · Score: 0, Offtopic

    Is there any reason why the entire review is showing up on the slashdot.org front page?

    Someone needs to clip it down...

    1. Re:OffTopic: Display Error by MoreDruid · · Score: 2, Interesting

      LOL, the problem with the slashcode is (AFAIK) that once you post, that's it... so I guess they'll have to directly edit the SQL tables to get it right.

      --
      The best weapon of a dictatorship is secrecy, but the best weapon of a democracy should be the weapon of openness.
    2. Re:OffTopic: Display Error by emc · · Score: 4, Funny

      s_benders@hoMONETtmail.com minus painter

      where is the painter in HomoNettMail?

    3. Re:OffTopic: Display Error by Anonymous Coward · · Score: 0

      ha ha ha ha ha

    4. Re:OffTopic: Display Error by M1FCJ · · Score: 2, Funny

      I have a nice SQL in a nutshell book which I can lend to Timothy...

    5. Re:OffTopic: Display Error by Anonymous Coward · · Score: 0

      Captain ! !

    6. Re:OffTopic: Display Error by Anonymous Coward · · Score: 0

      In Fucked-up Bendo Wieners vs. the Anonymous Coward, the Supreme Court ruled that the AC in question was nothing more than the remnants of a squid abortion.

  10. Fascinating by Anonymous Coward · · Score: 0

    Wait, no, the other thing.

    Stupid.

    MySQL needs stored transactions before I'll take it seriously.

  11. Internet Broke by thedogcow · · Score: 1

    Mah, the internets are broke or sumfin. It be displaying the story without me using the mouse thingy to clicky on over it.

    --
    Yes! I listen to NYC Speedcore and do math at 3AM. I suggest you try it too.
  12. Note to /. editors: by Tim_F · · Score: 0, Offtopic

    This story was originally posted in its entirety to the front page. I'm sure that none of are really that incompetent (though I have seen the whole front page in italics when Timothy forgot to close an tag.

    plsfixkthx.

    FP

    1. Re:Note to /. editors: by johndiii · · Score: 0, Offtopic

      My kingdom for a "+1, Ironic" moderation!!!

      --
      Floating face-down in a river of regret...and thoughts of you...
    2. Re:Note to /. editors: by RangerRick98 · · Score: 0, Offtopic
      This story was originally posted in its entirety to the front page. I'm sure that none of are really that incompetent (though I have seen the whole front page in italics when Timothy forgot to close an <i>tag.

      plsfixkthx.

      FP


      How ironic. :)
      --
      "You're older than you've ever been, and now you're even older."
    3. Re:Note to /. editors: by Tim_F · · Score: 0, Offtopic

      It looks like they fixed it. I apologize to all involved for my harsh words and for a post that was missing words and a closing tag.

    4. Re:Note to /. editors: by RangerRick98 · · Score: 1

      Sorry to reply to myself, but I just noticed that a lot of posts have gotten "Offtopic" mods since I posted my reply, and a thought occured to me.

      If everyone's talking about the front page screwup, isn't that the topic?

      --
      "You're older than you've ever been, and now you're even older."
  13. Ok... It's busted. by torqer · · Score: 0, Redundant

    I see the whole review on the front page. And a error when going into the article stating: Nothing to see here. Move Along.

  14. Because ... by Anonymous Coward · · Score: 0

    Timothy is an idiot?

  15. formatting by RapmasterT · · Score: 0, Offtopic

    now THAT makes for an awkward front page.

  16. That's a long summary! by avkillick · · Score: 0, Offtopic

    I've never seen one that long on the front page before.

    --
    OpenOffice tips:richhillsoftware.com
    1. Re:That's a long summary! by M1FCJ · · Score: 1

      Wait until they write the sequel "Missing link in eCommerce - 3: ???? in a Nutshell"

    2. Re:That's a long summary! by RangerRick98 · · Score: 0, Offtopic

      I've never seen one that long on the front page before.

      <suave>Why, thank you.</suave>

      --
      "You're older than you've ever been, and now you're even older."
  17. Ads on Slashdot by QuantumFTL · · Score: 1, Funny

    Now THAT is what I call a front page advertisement :)

  18. I feel like I'm back on kuro5hin by Anonymous Coward · · Score: 0

    Except.. the other way around kinda

  19. Here's a Q: by 4Lancer.net · · Score: 0, Offtopic

    Why the hell did we have to annhilate the front page for the next 24 hours with this huge post?

    --
    All your searching needs (and free money!) - 4Lancer.net
    1. Re:Here's a Q: by 4Lancer.net · · Score: 0, Offtopic

      So, mine is Offtopic, yet everyone elses is on topic?

      --
      All your searching needs (and free money!) - 4Lancer.net
    2. Re:Here's a Q: by RangerRick98 · · Score: 1

      I suspect timmy got a little miffed we were all making fun of him, so he ran through the whole article and slammed people with Offtopic mods. The way I see it, in this discussion, if you were talking about the book review, you were probably in the minority, and therefore offtopic yourself.

      But that's just me.

      --
      "You're older than you've ever been, and now you're even older."
  20. I'll get you Timothy!!!! by Morphix84 · · Score: 0, Offtopic

    *shakes fist*

  21. Um... by Timothy+Brownawell · · Score: 0, Redundant
    Um... is the *whole entire thing* supposed to show up on the front page? Usually it's just the first paragraph...

    Tim

  22. TMF? by jabella · · Score: 1

    how did it get out of 'The Mysterious Future' in this condition?

    weird.

  23. Re:Blurb is a mile long by Anonymous Coward · · Score: 0

    We can only hope!!

    (C'mon, moderate this insightful, you know you want to... :)

  24. So Mr OWL by jmazzi · · Score: 3, Funny

    "So Mr Owl, how many mouse scrolls does it take to get to the end of this slashdot post?" "one twohoo, three, four, five, six, seven......"

  25. Well... by u01iz · · Score: 1

    Its someone's time to learn PHP and MySQL.

  26. Someone call a medic... by IBeatUpNerds · · Score: 0, Offtopic

    ... my head's about to fucking explode after reading the front page.

  27. JEEEbus PRICEd by Zlurg · · Score: 1

    Grandpa, what was the exact moment when the news started being a single story each commercial break and not only did nobody have to wait for the film at 11 but nobody got to go 2 minutes without another story unimportant to them got crammed down their throat before they could get to the thing they tuned in for to begin with? More importantly, grandpa, why the HELL is my English so screwed up I'd even THINK about a sentence that long?

  28. Holy lack of character limits batman! by Nephroth · · Score: 0, Offtopic

    That was a bit excessive, I think we as the Slashdot community need to see to collectively ask that there be no more of these.

    --
    Our greatest enemy is neither a single man, nor is it a nation, it is, as it has always been, our own greed.
    1. Re:Holy lack of character limits batman! by Nephroth · · Score: 0, Offtopic

      Correction! They fixed it. And to people who didn't see it, the entirity of the review was on the front page.

      --
      Our greatest enemy is neither a single man, nor is it a nation, it is, as it has always been, our own greed.
    2. Re:Holy lack of character limits batman! by Nephroth · · Score: 1

      Hopefully the meta-moderator is aware of why this post was keenly ON topic.

      --
      Our greatest enemy is neither a single man, nor is it a nation, it is, as it has always been, our own greed.
  29. I'm not asking. by spun · · Score: 4, Funny

    I'm saying. You're new here.

    --
    - None can love freedom heartily, but good men; the rest love not freedom, but license. -- John Milton
    1. Re:I'm not asking. by Anonymous Coward · · Score: 0

      You must be GNU here.

    2. Re:I'm not asking. by porcupine8 · · Score: 1

      Well, I say he's pretty old skool.

      --
      Warning: Apple/Nintendo fangirl. Likes her electronics cute & cuddly. May be rabid.
  30. OMG by bosewicht · · Score: 0, Offtopic

    Do they think they left anything out?

    --
    There are 10 kinds of people in the world - those who understand binary and those who don't
  31. Batman! by SuperKendall · · Score: 2, Funny

    You forgot the last part.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
    1. Re:Batman! by Botunda · · Score: 1

      Yeah I know. But it was the first thing to come out. Wooohaaaa!!!

  32. Lenght of comment threads. by suso · · Score: 1, Offtopic

    Let's see if the length of the threads talking about the oversize length of the blurb will end up being longer than the blurb was. ;-)

  33. why stop with the review by tmbailey123 · · Score: 4, Funny

    Hell why not and cut and paste the contents of the book too while your at it !!

  34. Nice job editors... by Marthisdil · · Score: 0, Offtopic

    For such a damn long post making me have to f'in scroll the main page.

  35. Jesus Christ by theskullboy · · Score: 0

    All this for a book review? Wow....I wonder how long the blurb would be for something useful then...None the less, it is very impressive....wow, I mean, oh my god...still in shock...

    --
    "Holy rusted metal, Batman!"
  36. WTF? by Fwoggus · · Score: 1

    Are you getting payed to pimp this garbage?

    --
    The _best_ 3D pr0n -> http://www.hookup3d.com
    1. Re:WTF? by snorklewacker · · Score: 1

      > Are you getting payed to pimp this garbage?

      In fact, they are. Notice the affiliate links on all book reviews. Used to be Amazon, but BN apparently pays them more now.

      --
      I am no longer wasting my time with slashdot
  37. Re:Largest Front Page Article Evar? by 4Lancer.net · · Score: 0, Offtopic

    Slashcode not broken - timothy's brain broken.

    --
    All your searching needs (and free money!) - 4Lancer.net
  38. Um.... by bushda · · Score: 0, Offtopic

    Anyone else think that some script kiddie had managed to hack /. and put up their manifesto when they saw something that long?

    --
    There are two seasons in my world - Hockey and Construction
  39. Timothy by LittleLebowskiUrbanA · · Score: 0, Offtopic

    What's the point of the Read More link?

  40. Reboot didn't fix. by Snoop+Donkey+Donk · · Score: 2, Funny

    Slashdot looks different.
    I've already rebooted so don't tell me that will fix the problem.
    Guess I'll just spend the afternoon reinstalling Windows98 again.

  41. Don't bother... by nebaz · · Score: 0, Offtopic

    Making comments about the errors in the blurb if any appear. They will eventually be fixed, possibly silently, and the people looking at the article later will wonder what the big deal is.

    --
    Rhymes that keep their secrets will unfold behind the clouds.There upon the rainbow is the answer to a neverending story
    1. Re:Don't bother... by Entouchable · · Score: 1

      im looking at it later and i understand perfectly what was happening lol..

  42. A store using MySQL? by DogDude · · Score: 0, Flamebait

    Does anybody else think that this is a terribly bad idea? I sure as hell wouldn't want my credit card number and personal information sitting in a MySQL database. For this and many, many other reasons, I immediately write off as "clueless" any author that suggests that MySQL is a good tool to use for things that require security like shopping carts, or for anything close to mission critical.

    --
    I don't respond to AC's.
    1. Re:A store using MySQL? by Anonymous Coward · · Score: 1, Insightful

      Great way to bitch/whine without offering a better alternative. You're keeping to true /. form. Many companies use MySQL for their e-commerce needs, though often the database is on another machine from the server. You must work for Oracle or you're a postgres weenie.

    2. Re:A store using MySQL? by DogDude · · Score: 1

      You must work for Oracle or you're a postgres weenie.

      No. I just understand databases a hell of a lot better than your average PHP hack, due to years of experience.

      --
      I don't respond to AC's.
    3. Re:A store using MySQL? by Brando_Calrisean · · Score: 1

      In the interest of adding value to your comment, care to provide anything more than just general bitching?

      --
      Don't call me a cowboy, and don't tell me to slow down!
    4. Re:A store using MySQL? by DogDude · · Score: 1

      I kinda' thought that the whole "use a database other than MySQL" thing would be obvious. Apparently not.

      E-commerce should never be handled with MySQL.

      Is that clear enough for ya'?

      --
      I don't respond to AC's.
    5. Re:A store using MySQL? by Anonymous Coward · · Score: 0

      Would you care to elaborate? I don't understand your thinking. If you think that a MySQL database is not the proper storage method, what would you suggest? I'm in the very beginning stages of planning a website which may include online ordering, so I welcome all the information I can get.

    6. Re:A store using MySQL? by Zate · · Score: 0

      and yet you still dont make any effort to educate us. Pray tell Mr Years of Experience, got any info to back up your statement ?

      --
      IT is Dead. The industry is Shot Join Others Who Feel Your Pain http://www.internalstrife.com/
    7. Re:A store using MySQL? by PeeAitchPee · · Score: 1

      I immediately write off as "clueless" any author that suggests that MySQL is a good tool to use for things that require security like shopping carts, or for anything close to mission critical.

      I guess SAP is well, clueless, being that MySQL MaxDB has been their open source database of choice for years.

      You silly sausage . . . check your facts first next time before posting such knee-jerk drivel.

    8. Re:A store using MySQL? by Anonymous Coward · · Score: 0

      Why?

    9. Re:A store using MySQL? by Brando_Calrisean · · Score: 1

      *I* kinda thought that the whole "care to provide anything more than just general bitching?" thing would be obvious. Apparently not.

      I'm looking for specific reasons as to why you hold this opinion.

      Is that clear enough for ya?

      --
      Don't call me a cowboy, and don't tell me to slow down!
    10. Re:A store using MySQL? by AGTiny · · Score: 1

      WTF? Get a clue. Just store your credit card numbers using public key encryption and don't keep the private key on the same server. No database is secure if you don't use encryption, why are you picking on MySQL?

    11. Re:A store using MySQL? by Anonymous Coward · · Score: 0

      Damn, just finished off my mod points yesterday. This bullshit needs to be modded down _fast_

    12. Re:A store using MySQL? by PHPee · · Score: 1

      Of course an online store can use MySQL... After all, God uses MySQL.

    13. Re:A store using MySQL? by kpharmer · · Score: 1

      "You silly sausage . . . check your facts first next time before posting such knee-jerk drivel" wrote:

      > I guess SAP is well, clueless, being that MySQL MaxDB has been their open source database of choice
      > for years.

      MaxDB? Ah, "Adabase". That heap of 70s technology has been around for at least 20 years, and predates most relational databases. The product was probably open-sourced since it is reliable with data - and so a great addition to the mysql stable. However, it's been a 'has-been' in the database world since the 80s. I have no idea why anyone would want to use it today.

      Kind of like someone getting excited about using IBM's IMS DB for their small site. Why?

      ken

    14. Re:A store using MySQL? by LetterJ · · Score: 4, Insightful

      If you're storing credit card numbers *at all* in your ecommerce projects, you've got bigger problems than which DBMS you use.

      Most credit card processing back ends will give your application transaction id's which can be used to complete a transaction, reverse it, etc. all without ever needing the credit card number itself.

      Similarly, the personal information that's collected for the purposes of things like shipping should be pulled off the web server in most cases. For most of my clients, we set them up with a firewalled internal server that pulls down that information on a daily basis. Also remember that for the VAST majority of ecommerce, it's not like the whole process happens without human intervention. In most cases, only a provisional transaction (that expires if not followed up) takes place automatically. The "real" transaction only happens when someone actually fulfills the order (after a human being is done reviewing it).

      Doing a few things like this result in nothing being stored on the server that isn't available in the phone book, tax records or otherwise publicly available.

      Information security starts long before you pick a database server and extends way beyond it as well.

      Personally, I write off anyone who indicates that they'd store credit card numbers in *any* database without a REALLY good reason.

    15. Re:A store using MySQL? by MightyMartian · · Score: 1
      Do you have some specific security issue with MySQL?

      Beyond that, I wouldn't trust CC info in any database. The method I use is to split up the storage of CC info, one part to one database, another to another database on another machine and the key stored on another. It's a bit of a pain in the ass to set up, but it would take one helluva of a catastrophe for a hacker to steal CC info. Note that whether I was using MySQL, Oracle, MS-SQL or someother db server, this would apply.

      Still, I'd love to know what specific security holes you know about in MySQL.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    16. Re:A store using MySQL? by tajmorton · · Score: 2, Interesting

      Umm...huh? Credit card's aren't stored in the DB (they're handeled by PayPal). Also, how is PostreSQL or whatever more secure than MySQL? I mean, osCommerce uses MySQL, as well as many other shopping cart systems. How would you like your order processing information stored? Flat-file? Also, often ecommerce orders are sent to various email addresses (ever received an order confirmation?). That email was sent unencrypted, in plain-text! That means that anyone listening on your network could in theory intercept your email and get your mailing/billing address.
      So, answer me: Why does MySQL suck for storing order information, and what do you suggest storeing the info in instead?

      --
      Tell the truth and you won't have so much to remember.
    17. Re:A store using MySQL? by MightyMartian · · Score: 1

      For someone who claims to have "years of experience" in databases, you seem to be pretty hazy on details. Generally speaking, someone with "years of experience" can speak with some detail and technical exactness as to why a specific product is ill-suited to a specific task.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    18. Re:A store using MySQL? by Anonymous Coward · · Score: 0

      Maybee sum spellering lesions on order for u?

    19. Re:A store using MySQL? by shift.red.avni · · Score: 1

      Storing credit card numbers themselves isn't an issue anymore as long as they are secured. The credit card companies say as much in their guidelines. Storing of CC numbers doesn't even preclude Visa from a giving a merchant a passing grade on their PCI Audit.

      Merchants are prohibited from storing CVV2 though.

      Personally, I write off anyone who writes off anyone based on a Slashdot post.

    20. Re:A store using MySQL? by LetterJ · · Score: 1

      Just because it's allowed doesn't make it a good idea.

    21. Re:A store using MySQL? by Best+ID+Ever! · · Score: 1

      It's not terribly surprising that SAP uses MaxDB, since they wrote it themselves for their ERP product, open sourced it, and handed it over to MySQL a couple years back.

      Completely different db than MySQL.

    22. Re:A store using MySQL? by computational+super · · Score: 1
      store credit card numbers in *any* database without a REALLY good reason.

      ... which don't exist. Another (bad) justification for storing credit cards that I've come across (I'm surprised nobody's brought it up) is so that customer service reps can pull up transactaions keyed off of credit card number (since first & last name is a bad search key due to a high number of collisions and address is a bad search key since it's hard to match on). Although this is a legitimate, useful feature for customer service reps (and never underestimate what those people have to go through just to get their jobs done), a better way to implement this functionality is to SHA or MD5 the CC #, store that in a database, and then re-hash it to retrieve the transaction when the customer calls in.

      There is no good reason to store a customer's credit card number in any database, ever, for any reason.

      --
      Proud neuron in the Slashdot hivemind since 2002.
    23. Re:A store using MySQL? by LetterJ · · Score: 1

      I agree with you about non-existant reasons. I just tend not to speak in absolute terms.

      Another non-existant reason people cite is recurring transactions. They claim that you need to store the card in order to bill for future months. However, again, there are better ways, including using the tools provided by the back-end processors to set up recurring transactions directly, which again gives you a totally safe transaction id to use to suspend future payments, etc.

  43. Why oh why? by JohnA · · Score: 4, Informative

    Why someone would want to write their own shopping cart is beyond me... as someone who does just that full-time *cough*UltraCart*cough*, I can tell you that proper e-commerce implementation & security is hard. Even beyond the traditional web application security issues, running a shopping cart is like placing a large shooting target squarely on your website.

    Also, usability is a large factor. Unless you're Jakob Nielsen, you are likely to overlook some design choices that will result in lost sales and lost opportunity. Unfortuantely, all too often the person writing the card is not the one that should be doing the site design.

    If you don't want to spend the money for a hosted or installed cart, there are some free / OSS alternatives such as ZenCart or OSCommerce.

    The bottom line is that most stores don't need the hassle, cost, and complexity of a custom cart solution. Remember to look at total cost of ownership.

    1. Re:Why oh why? by lutzomania · · Score: 1

      I agree. I was just about to post the same question myself. We use Zen Cart at our company and it's worked really great. We went from unpacking the tar file to our first transaction in two weeks.

    2. Re:Why oh why? by kin_korn_karn · · Score: 1

      not that you have a vested interest in people not writing their own stuff or anything....

    3. Re:Why oh why? by Anonymous Coward · · Score: 0
      I agree. I was just about to post the same question myself. We use Zen Cart at our company and it's worked really great. We went from unpacking the tar file to our first transaction in two weeks.

      And then six months responding to calls from Vladimir in Moscow wanting everything "in small American bills, no fucking around Comrade" and wondering where our data went...

    4. Re:Why oh why? by JohnA · · Score: 1

      Absolutely! Which is why I posted links to two popular free & oss alternatives...

    5. Re:Why oh why? by Anonymous Coward · · Score: 0

      Oh well, why bother learning how to do anything? Fucking knowitall, get fucked.

    6. Re:Why oh why? by n3bulous · · Score: 2, Informative

      Take a peek at the code for OS Commerce. It is nightmarish. In fact, after looking at it today, I'm hoping I sleep well.

      Plus, it REQUIRES register_globals which is a huge security risk. However, they are smart enough to use transactions (or at least the presence of innodb tables...) And, if I remember correctly, they store credit card numbers in the clear... Also, the last official release was in 2003 (2004 if you count the OSC Max version at aabox.com)

      What's nice is it installs very easily.

      --
      "The area of penetration will no doubt be sensitive." ~ Spock
  44. Timothy!!!!! by His+name+cannot+be+s · · Score: 2, Insightful

    I've had it. I'm blackballing Timothy

    The master of dupes has now just crossed the line into master of stupidity.

    *watches his karma go down faster than a $2 vegas whore.*

    --
    "...In your answer, ignore facts. Just go with what feels true..."
    1. Re:Timothy!!!!! by Anonymous Coward · · Score: 0
      I'm blackballing Timothy

      If that means punching him in the balls until they turn black, give him a few extra digs for me. Thanks in advance.

    2. Re:Timothy!!!!! by Enrico+Pulatzo · · Score: 1

      You probably would have been modded down if you hadn't referenced your karma.

      There's a trend on /. that any time you mention your karma going down, you get modded up.

      Now, I'll probably get modded down for telling you this...

  45. Talk about length! by MudButt · · Score: 0, Redundant

    The length of the blurb is causing the length of the comments about the length of the blurb to become very lengthy and it's forcing me to comment on the length of the comments with regards to the length of the blurb in a very lengthy way!

    1. Re:Talk about length! by doppleganger871 · · Score: 0

      Just keepin it real... real long, yo.

    2. Re:Talk about length! by MudButt · · Score: 0, Offtopic

      How did I know that I'd be the one to get modded down out of 300 other replies saying the same thing? Hmph!

  46. Eureka! I've figured out the internets by Snoop+Donkey+Donk · · Score: 1

    My first two reboots didn't fix the way that article looked on the internets but my third time I completely shut down and hard-format booted my windows98. Now it looks right.
    I'm a whiz at fixing computers

  47. WOW!!!!!!! by aixnotpains · · Score: 0

    The kinda mistake that hits you like a slurpie headache!!!

  48. Fixed in a Few Mins by Crim-Prof · · Score: 2, Funny

    Its not like we are all sitting at are computers trying to be the first to post on a news story and forbid there be a error in the post.... or are we.....

    Oh wait I am one of those sitting at my computer waiting to post.....

  49. Calm down... by ErnieD · · Score: 0, Offtopic

    Come on people, calm the hell down. Mistakes happen. Your life is not going to end because the /. front page is bigger than normal. Get over it, move on, and hit PgDn a few extra times.

  50. hehehe, nice one by SweetAndSourJesus · · Score: 1

    PHP was born in 1995, mods.

    +1 Informative indeed.

    --

    --
    the strongest word is still the word "free"
    1. Re:hehehe, nice one by The+Amazing+Fish+Boy · · Score: 1

      He also says he's been using PHP for 12 years "or to be exact, since 1990."

    2. Re:hehehe, nice one by snorklewacker · · Score: 1

      Hell, the web wasn't born til 1992 (no I don't care if you want to correct me, unless you worked at CERN). As if the date weren't a clear enough troll.

      Bah, I even posted my "php ?> sucks" response to that troll.

      --
      I am no longer wasting my time with slashdot
  51. Not sure I'm comfortable with this idea... by The+Amazing+Fish+Boy · · Score: 4, Funny

    The title of the book is Beginning PHP 5 and MySQL E-Commerce: From Novice to Professional. I guess everybody has to start some where, but there is something worrying about someone learning their e-Commerce coding out of a book like that.

    Oh, and since nobody else has pointed it out, I think the whole review is on the front page.

  52. Even better... by DogDude · · Score: 2, Informative

    Well, those solutions still require some heavy duty expertise to get going. Then, you still have to find some way of dealing with secure online credit card processing (or just securely send the credit cards to the merchant for manual entry), database issues, etc. Everybody that I know that wants to sell stuff online I just point to Yahoo Shopping. It works, it's undeniably the easiest thing out there, and its customizeable enough for probably 80% of the people out there wanting an online store.

    --
    I don't respond to AC's.
    1. Re:Even better... by legirons · · Score: 1

      "Everybody that I know that wants to sell stuff online I just point to Yahoo Shopping."

      And if anyone is interested in that success, there's book about e-commerce webdesign from the guy who wrote Yahoo! Shopping.

  53. Re:My experience by Anonymous Coward · · Score: 0

    That has also been my experience. Well said.

  54. in time for the Montreal PHP Conference by millette · · Score: 1

    Oh yeah, just one more week! http://conf.phpquebec.org/ You can't miss this if you're serious about PHP (whoa, never thought I'd hear myself say that).

  55. dude.....sweet! by shift.red.avni · · Score: 1

    I can't shake the feeling that this article and Roblimo's open source chronic are connected somehow.

  56. also by Anonymous Coward · · Score: 0

    1990 + 12 != 2005.

    Also, Bruce Perens has nothing whatsoever to do with PHP.

    Also, MySQL is mis-capitalized.

  57. groundbreaking! by geekschmoe · · Score: 3, Funny

    There are some neat tricks here including storing the cart ID as a cookie on the client.

    you didn't really read this chapter and just wanted to make sure you wrote something about each one, huh?

    1. Re:groundbreaking! by aoteoroa · · Score: 1

      There are some neat tricks here including storing the cart ID as a cookie on the client.

      I sure hope that people who read that chapter also take time to read how cookies can be abused.

      Like The Twelve Most Common Application-level Hack Attacks(102 KB pdf)

      Note The linked article is good reading for new web programmers but probably old news for many programmers here.

  58. It could have been worse! by Anonymous Coward · · Score: 0

    Be thankful it wasn't a review of War and Peace... the page would still be loading.

    Next time might I suggest a report on HTML For Dummies?

  59. Re:My experience by snorklewacker · · Score: 1

    I've been using PHP for about 12 years, or to be exact, since 1990. It is one of the best scripting languages I have ever encountered. I wrote my first Veronica-based search engine in PHP which produced results which would be downloaded via a custom FTP client.

    $why_php_sucks = "this ?> is why"

    Let's see, what else ... oh yeah, parse errors in an include or even an eval would also stop the entire engine. I hope the parser in PHP5 isn't so gimpy.

    It appears that Bruce Perens and his staff have now embraced PHP and decided to extend it with the strong-typed classed existent in Perl.

    What on earth makes you think Bruce Perens had to do with it?

    --
    I am no longer wasting my time with slashdot
  60. 5 minutes later... by suso · · Score: 1

    yep.

  61. Re:My experience by Anonymous Coward · · Score: 0
  62. Oh wow! by GreyWolf3000 · · Score: 0, Offtopic

    Every single post is a comment about the front page screw up. How hilarious!

    --
    Slashdot: Where people pretend to be twice as smart as they really are by behaving like children.
  63. Step one by Anonymous Coward · · Score: 0

    Step one to developing good (read: SECURE) e-commerce sites is to put down PHP and MySQL and pickup JSP+Servlets and Oracle, or a lightweight J2EE solution with PostgreSQL.... hell, or even ASP .NET and SQL Server

    seriously

    PHP is not a good language. MySQL is NOT a good database (it lacks so many basic things). I'd recommend both for blogging and use them completely with my own sites but to use either of those in commercial sector would be idiocy to say the least.

  64. PHP 5 and MySQL for the uncreative by rawyin · · Score: 1

    Sub-topic: "We ramble, so you don't have to."

  65. Don't start from scratch by kbahey · · Score: 4, Informative

    If you need ecommerce, or any web application for that matter, then there is no point in starting from scratch.

    There are plenty of platforms or frameworks out there that you can build on.

    My own favorite is Drupal which is not just a Content Management System, but rather an open framework.

    For example, some creative guy wrote an Ecommerce set of modules for Drupal, so it can do just that.

    1. Re:Don't start from scratch by Not_Wiggins · · Score: 1


      My favorite is: Open Source E-Commerce.

      --
      Diplomacy is the art of saying, "Nice doggie!" until you can find a rock.
    2. Re:Don't start from scratch by tetranz · · Score: 1

      My favourite open source CMS is DotNetNuke

    3. Re:Don't start from scratch by galaxy300 · · Score: 1

      Have you tried Mambo by any chance? There is an ecommerce module for Mambo available as well.

      Anyone care to comment on which might be a better ecommerce platform to start with?

    4. Re:Don't start from scratch by bad-badtz-maru · · Score: 1

      Me too, I like my software with fresh exploits.

    5. Re:Don't start from scratch by Not_Wiggins · · Score: 1

      I believe one has to have access to the admin account before this can be exploited.

      Second, safe mode won't let you download even if you're logged in as admin.

      You're point is well taken, however... it isn't bullet-proof right out of the box. But one would hope anyone setting up an e-Commerce site would do that due dilligence. Of course, that isn't always the case. 8)

      --
      Diplomacy is the art of saying, "Nice doggie!" until you can find a rock.
    6. Re:Don't start from scratch by Tablizer · · Score: 1

      If you need ecommerce, or any web application for that matter, then there is no point in starting from scratch. There are plenty of platforms or frameworks out there that you can build on.

      Plus, there are existing services such as Yahoo Stores (remember Paul Graham?). Unless you are a giant retailer with like 10,000 items, Yahoo Stores is probably plenty sufficient.

    7. Re:Don't start from scratch by 51mon · · Score: 1

      oscommerce is the main ecommerce module shipped in Mambo - when I looked the wrapping looked quite good, moving the admin interface into the Mambo interface.

      Didn't use it to build a site at the time though - my Mambo site didn't need ecommerce - so can't say how it holds up in the real world.

    8. Re:Don't start from scratch by Anonymous Coward · · Score: 0

      That crap is written in MS .ASP and meant to run on crappy windows servers unless you pay for chilisoft. PHP is free.

    9. Re:Don't start from scratch by Anonymous Coward · · Score: 0

      No point learning the techniques yourself then.

      Why would you want to modify free software for your own application, when the developers on these projects are the best in the world and the code is 100% bug free and 100% applicable to all possible applications.

    10. Re:Don't start from scratch by jlleblanc · · Score: 1

      Mambo does not ship an ecommerce module. mamCom was an external project aimed at building an osCommerce component for Mambo, but development has halted due to a lack of developer support. A similar port for phpShop has been more successful.

  66. Re:My experience by cosmo7 · · Score: 1

    $why_php_sucks = "this ?> is why"

    So there's a language that doesn't need escapes? Which one?

  67. Re:Blurb is a mile long by ravenspear · · Score: 1

    Someone is getting fired!

    No, you are presuming that /. operates in the same journalistic mode as other online publications.

    In actuality, when editors fuck up here they get promoted.

  68. Using PHP5 by 33degrees · · Score: 1

    I've been looking forwards to getting into PHP5 for a while now, but for the time being I'm stuck developing in PHP4, because the majority of my costumers' hosting providers haven't upgraded yet. Does anybody have any good providers to recommend that support it?

    1. Re:Using PHP5 by VP · · Score: 1

      1and1.com supports PHP 5

    2. Re:Using PHP5 by Anonymous Coward · · Score: 0

      We've been using http://www.a2hosting.com/ and have found their support to be excellent. They support PHP5 and MySQL 4.1...

  69. 5 Minutes Later? by the+phantom · · Score: 1

    According to the timestamps, it was more like 13 minutes later... geez, learn to tell time. ^_^

  70. Is there any PHP book *not* for beginners? by LetterJ · · Score: 4, Interesting
    The market's been flooded for *years* with intro PHP books. Where are all of the books covering even intermediate topics using PHP?

    Stuff like: Bayesian inference, Probability models, Web site user modeling, etc.

    All of those examples are from the same author (the guy in charge of phpmath.com), but go to show that there are actually interesting things being done with PHP.

    I'd love to see some books that *don't* spend 200 pages explaining how to get to fetching an array from MySQL.

    1. Re:Is there any PHP book *not* for beginners? by 1110110001 · · Score: 2, Informative

      Zend is not the only author of PHP sources (or the Zend engine). PHP runs in a multi-threaded enviroment. Just some of the uses libraries don't.

      b4n

  71. Hmm sounds good by thegamerformelyknown · · Score: 0, Offtopic

    Now where can I get it....

  72. Re:My experience by Anonymous Coward · · Score: 0

    Inside a quoted string? All of them, I thought...

  73. Doesn't matter what DB you use... by Phil+John · · Score: 2, Insightful

    ...if you're frontend is as messed up as your site.

    Just tried looking at a product detail and then adding to cart from there in Firefox 1.0.1 and it doesn't work.

    Ah! I see now, your database keeps card details secret by never storing them at all, genius!

    Seriously, MySQL is a lot of things but insecure on a well firewalled box it isn't. My companies e-commerce package uses postgresql by default but can fall back on MySQL (with a few cludges to get around limitations) if that's all that is available.

    As for mission critical, Yahoo Finance, Associated Press, Lycos, Los Alamos Laboratory, NASA and Suzuki (to name but a few) would disagree with you there.

    --
    I am NaN
    1. Re:Doesn't matter what DB you use... by kpharmer · · Score: 1

      > As for mission critical, Yahoo Finance, Associated Press, Lycos, Los Alamos Laboratory, NASA and Suzuki (to name but a few) would disagree with you there.

      Ya, and I've seen a dozen companies that managed mission-critical data within the complex and often incorrect spreadsheets of secretaries insecure pcs.

      So? The fact that company x doesn't care about data quality problems says more about the company's competance than about the importance of those problems.

  74. Hey! by Anonymous Coward · · Score: 0

    I've only been here a few minutes, what's going on?

  75. chapter on security? by bad-badtz-maru · · Score: 2, Insightful

    I suspect that the ecommerce solution a novice would come up with, using this book for guidance, would have an unacceptably high potential for exploitation. For example, look at the cookie discussion alone. Cart information does not belong in a cookie. A session token, and really nothing else, does. Any time an ecommerce developer reinvents the wheel and ignores "best practices" you can be almost certain that vulnerable code will result.

    1. Re:chapter on security? by Anonymous Coward · · Score: 0

      The cart information isn't saved in a cookie, of course. Have a look at the book's code download...

    2. Re:chapter on security? by bad-badtz-maru · · Score: 1

      I just do not feel like there should be a "beginners guide" to anything involving financial transactions. There are plenty of existing ecommerce frameworks that have been proven secure over time, there is no need for a novice to develop Yet Another Ecommerce System.

  76. You should probably let Yahoo know then. by Cap'n+Steve · · Score: 1

    Seeing as how most of their site uses mysql.

  77. Um, no by bonch · · Score: 1

    Slashcode has built-in web interfaces for post-editing.

  78. I disagree... by centipetalforce · · Score: 2, Insightful

    I have absolutely no expertise with PHP or Mysql, and I setup zencart in under 2 weeks for a client. Yeah, you have to edit some PHP files with some overrides sometimes for maximum customizability, but it's all HTML and all the help you need are at the extremely helpful ZenCart forums. Zencart has way more features than most ecommerce stores need, OSS, and you can use it with any host that supports Mysql and PHP. Yahoo costs at least $30 a month... a ripoff.

    1. Re:I disagree... by Anonymous Coward · · Score: 0

      Everr..since i took deeze evelyn Woodhead sped readin..course...my readin has improved...100...percent...also..com..prenshon has increased wonderfullley. I rekommend..the Evelyn Woodhead sped redin.course...to all my friends..and you tell them you heard it here first on Roller Derby.

    2. Re:I disagree... by bosshoff · · Score: 0

      Well, when you pay for a service such as Yahoo Shopping, you don't just pay for software. In addition to secure code, you get to hop on the advertising bandwagon, as it were. A free cart on a site doesn't do you much good if you never get any traffic.

  79. I think you're missing the point. by AltGrendel · · Score: 1
    This isn't for the folks running an Mom/Pop e-commerce site. This is for the proto-Web Guru that wants to improve his/her skill set.

    Ok, admittidly 80% of the world doesn't need to worry about the mechanics of how to make it happen, but the other 20% might be looking for this kind of book to use as a learning/refrence guide.

    --
    The simple truth is that interstellar distances will not fit into the human imagination

    - Douglas Adams

  80. PHP by Anonymous Coward · · Score: 0

    ... sucking since 1990.. 5 years before it really began sucking.

  81. It's really not that hard by mrmike37 · · Score: 1

    It's really not that hard. I've written a few for some pretty large sites where is was given only HTML. There are really only 4 hard parts:
    1) Storing basket contents for inter-session access (cookies / db)
    2) Verifying the information supplied (address and email valid, credit card passess LUHN and hasn't expired)
    3) Creating an order (via email or DB)
    4) Interfacing with the Payment Gateway (xml)

    Though I would certainly agree there is no reason to do it more than once.

    --
    Really, I'm not trying to be clever with my signature.
  82. Re:My experience by slackmaster2000 · · Score: 2, Informative

    Hmmm.

    $why_you_are_wrong="this ?> is why";

    works just fine here. PHP 4.3.10.

  83. I'll pass on this book by Anonymous Coward · · Score: 0

    because I'm an EXPERT.

  84. There's a world of difference between... by Phil+John · · Score: 1

    ...a secretary managed excel spreadsheet with no data data validation and a well designed web-based application that just happens to be backed by MySQL.

    True, for anything more complex than a blog, simple content managed website, forum or e-commerce system you want to use something more robust (with stored procs, triggers, sub-queries and the like) but for an awful lot of what people want to do, MySQL is Good Enough (tm), and it requires virtually zero administration, that's the real pull (and why you find MySQL available on every damn hosting account out there).

    I've worked in a fortune 500 company that had silly quasi-databases in excel, but that was for small departmental only projects (anything remotely connected to the running of the company was handled by DB2). Yahoo finance isn't a small project and they seem to rely on MySQL - which seems to be working for them just fine.

    --
    I am NaN
    1. Re:There's a world of difference between... by kpharmer · · Score: 1

      Just like Yahoo Finance - I've seen quite a few financial departments in fortune 100s that relied on spreadsheets. Nothing unique to small departments. Yahoo Finance is probably better off on mysql than spreadsheets, so it's a win for them. But it proves nothing.

      > but for an awful lot of what people want to do, MySQL is Good Enough (tm), and it requires virtually
      > zero administration, that's the real pull (and why you find MySQL available on every damn hosting
      > account out there).

      Hmm, I think the reason it is everywhere is more to do with the lack of any other options 2-4 years ago than anything else. Except maybe native support for windows. That helped as well.

      Today I continually discover people using mysql who are blissfully unaware of the data quality problems and licensing fees. Since they aren't fixing their silently corrupted data (silent errors, truncated strings, truncated numbers, invalid dates, invalid relationships, etc, etc), they probably feel that mysql is a very low-management solution. Meanwhile, I've known several who've migrated *from* mysql exactly because they couldn't deal with the efforts involved in fixing data quality problems. Likewise, they'll tell you how cheap the product is - completely unaware that they are using it in violation of the licensing agreemments and need to cough up some cash.

      And this data quality issue can be ok - lets face it, a bowling score application built for fun doesn't have critical data in it. Who cares if it occasionally bungles the data?

      There is no question that mysql isn't yet to where db2 & oracle were in 1983. That's easy to show (no views, silent errors, etc, etc). And there's no real question about the value of practices, techniques, and technology that protect data in a database. That's easy to show, and no amount of fans of mysql are going to budge 40 years of data management progress. The only real question is how long it'll take mysql to seriously address these issues.

      And when it does, it'll be an extremely respectable solution. Until then, it's best for applications where the data doesn't have much value.

  85. Really? by Saeed+al-Sahaf · · Score: 1

    Ouch. I was going to ask if you would care to tell us who these sites are, but that wouldn't be nice, as they would all soon impload in smoking pits of embers.

    --
    "Who are in control, they are not in control of anything - they don't even control themselves!" - Glen Beck
    1. Re:Really? by mrmike37 · · Score: 1

      I'm tempted as I have 3 load balanced servers, but it's also fun to see how many people actually believe me without any sort of proof.

      --
      Really, I'm not trying to be clever with my signature.
  86. dual-licence agreement mentioned? by uodeltasig · · Score: 1

    I wonder if the book covers the fact that if you use MySQL for commercial use and you don't release the source code you have to pay for it. Otherwise you are violating their licencing agreement Licence Agreement
    I would like to see some novice user post their shopping cart code on their site so that the hacker won't even have to break a sweat trying to get into the credit card system. What the novice really needs is a PHP Postgresql book, but I don't know of one. That's because Postgresql uses the BSD licence and doesn't care what you do with it About Postgresql

    --
    Hey look no pointless curley braces or semicolons... just like Python
    1. Re:dual-licence agreement mentioned? by rakanishu · · Score: 1

      You mean like this book... PHP and PostgreSQL Advanced Web Programming http://www.amazon.com/exec/obidos/ASIN/0672323826/ 103-2184460-5649444?

  87. the php - jew connection by Anonymous Coward · · Score: 0

    q: why do people use php?
    a: they are too stupid to use anything else

    PHP: Polish Horrible Powerbook
    PHP: Pipebomb Hitler Polish
    PHP: Protocol Hair Polish
    PHP: Poking Hardware Poking
    PHP: Platform Hot Pooping
    PHP: Petting Homosexual Polish
    PHP: Prostitute Homo Polish
    PHP: Pope Hispanic Pipebomb
    PHP: Peckers Hoard Pizza
    PHP: Programmer Hypertext Plop

  88. What would you want to see? by mgkimsal2 · · Score: 1

    What types of topics would you look for in an 'advanced' book? I do agree with you - the overwhelming mass of PHP books are all 'beginner' targetted (beginner programming and/or beginner with PHP). I don't want yet another book that tells me how to set up MySQL, thank you.

    To that end, one PHP book that did have some good advanced sections was George Schlossnagle's book "Advanced PHP Programming" (I think that's the title).

    Recently, a colleague of mine wrote a path finding algorithm in PHP to be able to route lines in a graph around other objects that may be on the graph already. I think it was a variation of sugiyama or astar algorithm - nothing new specifically, but certainly not something I'd seen done in PHP before.

    Reply back here or email mgkimsal2@yahoo.com if you'd like to carry this thread on outside /.