<?xml version="1.0"?>
<rss version="2.0">
  <channel>
    <title>PHPDeveloper.org</title>
    <link>http://www.phpdeveloper.org</link>
    <description>Up-to-the Minute PHP News, views and community</description>
    <language>en-us</language>
    <pubDate>Fri, 24 May 2013 15:00:39 -0500</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[PHPMaster.com: Understanding HTTP Digest Access Authentication]]></title>
      <guid>http://www.phpdeveloper.org/news/19614</guid>
      <link>http://www.phpdeveloper.org/news/19614</link>
      <description><![CDATA[<p>
On PHPMaster.com they've posted a new tutorial by <i>Sean Hudgston</i> that helps you <a href="http://phpmaster.com/understanding-http-digest-access-authentication/">understand HTTP digest authentication</a>, a simple way to authenticate a user or script against your application.
</p>
<blockquote>
Digest Access Authentication is one method that a client and server can use to exchange credentials over HTTP. This method uses a combination of the password and other bits of information to create an MD5 hash which is then sent to the server to authenticate. Sending a hash avoids the problems with sending a password in clear text, a shortfall of Basic Access Authentication.
</blockquote>
<p>
He starts out by looking at the "basic authentication" mechanism that's built into most web servers and points out that it has a major flaw - sending the username/password in (pretty much) plain text. Digest, on the other hand, uses a MD5 hash created from a few pieces of information including username, realm and request method. The result is sent as a header back to the server that can then be parsed by PHP. He also talks about improving on the basic version of the digest method using the qop, nc, and cnonce optional parameters.
</p>
Link: http://phpmaster.com/understanding-http-digest-access-authentication]]></description>
      <pubDate>Tue, 21 May 2013 12:09:02 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Bob Majdak: On SQL in PHP]]></title>
      <guid>http://www.phpdeveloper.org/news/19593</guid>
      <link>http://www.phpdeveloper.org/news/19593</link>
      <description><![CDATA[<p>
In a new post to his site <i>Bob Majdak</i> looks at <a href="http://catch404.net/2013/05/on-sql-in-php/">using SQL in PHP</a> and some of the challenges he's come across (some of them with his own tools). He talks about things line inline SQL, loading SQL by unique key or creating a "build object".
</p>
<blockquote>
There is no right or wrong way, but no matter what there is no *pretty* way to do SQL inside of a PHP application. I have been having a personal debate with myself all week about how to make SQL statements nicer in an application without going to a huge DBAL package like Doctrine.
</blockquote>
<p>
He looks at each idea and provides some of the pros and cons about each of them, noting that he hasn't quite decided on which is the best method. Some sample code is included to help clarify the points, showing the "find by unique key" version and how a more complex query might be created with the "builder object."
</p>
Link: http://catch404.net/2013/05/on-sql-in-php]]></description>
      <pubDate>Thu, 16 May 2013 10:11:29 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[PHP Podcast: Episode #2 - Adam Culp]]></title>
      <guid>http://www.phpdeveloper.org/news/19496</guid>
      <link>http://www.phpdeveloper.org/news/19496</link>
      <description><![CDATA[<p>
The PHP Podcast (from <a href="http://zend.com">Zend</a>) has posted its second episode - <a href="http://phppodcast.com/episode-2-adam-culp/">Episode #2</a>, an interview with <i>Adam Culp</i> who recently joined the team at Zend and is a organizer for the South Florida PHP User Group.
</p>
<blockquote>
In this episode we talk to Adam Culp on his very first day as a Zend employee. We talk about PHP community and Adam's decision to move from the realm of independent consultant to Zender! Adam is the organizer of <a href="http://sunshinephp.com/">SunshinePHP</a>, PHP Guru and joining the Zend Professional Services Team.
</blockquote>
<p>
You can listen to this latest episode either through the <a href="http://phppodcast.com/episode-2-adam-culp/">in-page player</a> or by <a href="http://phppodcast.com/wp-content/uploads/2013/04/TPHPP_002_Adam_Culp_April2013.mp3">downloading the mp3</a> directly. You can also <a href="http://phppodcast.com/feed/">subscribe to their feed</a> of you want this and future episodes pulled automatically.
</p>
Link: http://phppodcast.com/episode-2-adam-culp/]]></description>
      <pubDate>Tue, 23 Apr 2013 10:47:38 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[7PHP.com: Zend Certifications Tips & Tricks - Hear It From Zend Certified Engineer Eric Hogue]]></title>
      <guid>http://www.phpdeveloper.org/news/19492</guid>
      <link>http://www.phpdeveloper.org/news/19492</link>
      <description><![CDATA[<p>
On 7PHP.com there's a new post that interviews a PHP community member, <i>Eric Hogue</i>, about <a href="http://7php.com/zend-certification-advice-eric-hogue/">his experience with the Zend Certified Engineer exam</a>.
</p>
<blockquote>
This is the 3rd set of <a href="http://7php.com/category/zend-certification-tips/">Zend Certification Tips and Advice</a> to help anyone taking either of the two Zend Exams powered by <a href="http://en.wikipedia.org/wiki/Zend_Technologies">Zend Technologies</a>: the Zend PHP Certification Exam and/or the Zend Framework Certification Exam. The aim being to help people who want to sit for those exams and inform them what it is all about & what to expect by <a href="http://7php.com/category/expert-php-advice/">hearing it from (pro) PHP Guys</a> who have already been through it, that is => Hear It From Zend Certified Engineers!
</blockquote>
<p>
He starts off with some general questions to <i>Eric</i> about the exam and its structure and how he prepared himself for it. He mentions some of the resources he used to study and what kind of topics to pay attention to. There's also a few quotes included at the end giving <a href="http://penguindreams.org/blog/disappointe-with-zends-php5-certification">another perspective</a> on the exam (specifically, some frustrations).
</p>
Link: http://7php.com/zend-certification-advice-eric-hogue]]></description>
      <pubDate>Mon, 22 Apr 2013 12:16:25 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Mike Dalisay: Salt, Hash and Store Passwords Securely with Phpass]]></title>
      <guid>http://www.phpdeveloper.org/news/19427</guid>
      <link>http://www.phpdeveloper.org/news/19427</link>
      <description><![CDATA[<p>
On <i>Mike Dalisay</i>'s site there's a recent post showing how to use the <a href="http://www.openwall.com/phpass/">Phpass</a> tool to <a href="http://www.codeofaninja.com/2013/03/php-hash-password.html#.UVziYKUm0sc.dzone">salt, hash and store passowrd data</a> in your application.
</p>
<blockquote>
I think the main reason why we have to hash passwords is to prevent passwords from being stolen or compromised. You see, even if someone steal your database, they will never read your actual or cleartext password. I know that some PHP frameworks or CMS already provide this functionality, but I believe that it is important for us to know how its implementation can be made.
</blockquote>
<p>
His <a href="https://docs.google.com/file/d/0B-AInNrVeucKZGgzWThFdUNhNVk/edit?usp=sharing">sample application</a> stores the user data in a MySQL database and does the salting+hashing at the time of the request. It uses a hard-coded salt and a value of 8 for the hashing/stretching.  Screenshots of each page in the example application are also included.
</p>
Link: http://www.codeofaninja.com/2013/03/php-hash-password.html#.UVziYKUm0sc.dzone]]></description>
      <pubDate>Mon, 08 Apr 2013 12:16:29 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[PHP Podcast: Episode #1 - Cal Evans]]></title>
      <guid>http://www.phpdeveloper.org/news/19385</guid>
      <link>http://www.phpdeveloper.org/news/19385</link>
      <description><![CDATA[<p>
The <a href="http://phppodcast.com/episode-1-cal-evans/">first episode</a> of a new PHP-related podcast, the "PHP Podcast" produced by <a href="http://zend.com">Zend</a>, has been released. This first episode, hosted by <i>Joe Stagner</i> features a well-known PHPer, <i>Cal Evans</i>.
</p>
<blockquote>
Cal Evans has been referred to as "The Ubiquitous Face of the PHP Community". That's made Cal an obvious choice for the first guest on the PHPPodcast. In this episode we chat about the evolving face of the PHP community.
</blockquote>
<p>
You can listen to this latest episode either through the <a href="http://phppodcast.com/episode-1-cal-evans/">in-page player</a>, by <a href="http://phppodcast.com/wp-content/uploads/2013/03/TPHPP_001_Cal_Evans.mp3">downloading the mp3</a> or by <a href="http://phppodcast.com/feed/">subscribing to their feed</a>.
</p>]]></description>
      <pubDate>Fri, 29 Mar 2013 12:38:30 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[7PHP.com: Zend Certification Tips & Tricks, Hear It From Zend Certified Engineer Lorna Jane Mitchell]]></title>
      <guid>http://www.phpdeveloper.org/news/19163</guid>
      <link>http://www.phpdeveloper.org/news/19163</link>
      <description><![CDATA[<p>
7PHP.com has posted a new article where they asked <i>Lorna Mitchell</i> for <a href="http://7php.com/zend-certification-advice-lorna-mitchell/">some of her advice</a> for those wanting to take the Zend Certified Engineer exam, including what the test is like and how you can prepare effectively.
</p>
<blockquote>
This is the 2nd set of <a href="http://7php.com/category/zend-certification-tips/">Zend Certification Tips and Advice</a> to help anyone taking either of the two Zend Exams powered by <a href="http://en.wikipedia.org/wiki/Zend_Technologies">Zend Technologies</a>: the Zend PHP Certification Exam and/or the Zend Framework Certification Exam. The aim being to help people who want to sit for those exams and inform them what it is all about & what to expect by <a href="http://7php.com/category/expert-php-advice/">hearing it from (pro) PHP Guys</a> who have already been through it, that is => Hear It From Zend Certified Engineers!
</blockquote>
<p>
They start with a little background on her and her experience with PHP and get quickly into the questions about the exam. Topics include things like:
</p>
<ul>
<li>What the test is about and hopes to achieve
<li>Some things you can do to prepare
<li>A recommendation to make the most of your time exploring topics you might be weak in
<li>Whether or not the ZCE training classes help in the learning process
</ul>
<p>
You can read the rest of the interview <a href="http://7php.com/zend-certification-advice-lorna-mitchell/">here</a>.
</p>]]></description>
      <pubDate>Mon, 11 Feb 2013 10:26:42 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[7PHP.com: Zend Certifications Tips & Tricks - Michelangelo van Dam]]></title>
      <guid>http://www.phpdeveloper.org/news/19130</guid>
      <link>http://www.phpdeveloper.org/news/19130</link>
      <description><![CDATA[<p>
On 7PHP.com today there's a new interview posted, a different kind of one from their usual "community spotlight" series. In <a href="http://7php.com/zend-certification-advice-michelangelo-van-dam/">this new article</a> they talk with <i> Michelangelo van Dam</i> about the Zend Certified Engineer test and any advice he can offer to those wanting to take it.
</p>
<blockquote>
This is the 1st set of <a href="http://7php.com/category/zend-certification-tips/">Zend Certification Tips and Advice</a> to help anyone taking either of the two Zend Exams powered by <a href="http://en.wikipedia.org/wiki/Zend_Technologies">Zend Technologies</a>: the Zend PHP Certification Exam and/or the Zend Framework Certification Exam. The aim being to help people who want to sit for those exams and inform them what it is all about & what to expect by <a href="http://7php.com/category/expert-php-advice/">hearing it from (pro) PHP Guys</a> who have already been through it, that is.
</blockquote>
<p>
There's a long list of questions in the interview covering a wide range of things about the test everything from what its about out to some of <i>Michelangelo</i>'s own opinions about the tests:
</p>
<ul>
<li>Can you briefly give us an idea of what ZC is about, what it tries to achieve?
<li>Can you give us an idea of what need to be studied and what kind of stuffs we should expect..etc
<li>Parts of the modules that you think is more complex and one should pay special attention to?
<li>What TWO questions can you remember that you can share with us
<li>Do you recommend PHP guys to get certified?
</ul>
<p>
Check out the answers to these and more questions in <a href="http://7php.com/zend-certification-advice-michelangelo-van-dam/">the full interview</a>.
</p>]]></description>
      <pubDate>Mon, 04 Feb 2013 11:22:16 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[PHPMaster.com: PHP and the i, Part 2]]></title>
      <guid>http://www.phpdeveloper.org/news/19086</guid>
      <link>http://www.phpdeveloper.org/news/19086</link>
      <description><![CDATA[<p>
On PHPMaster.com today they've posted the <a href="http://phpmaster.com/php-and-the-i-2/">second part</a> of their "PHP and the i" series (here's <a href="http://phpdeveloper.org/news/19054">part one</a>). In this new article, he looks a bit closer at what kind of knowledge is needed to develop PHP on the IBM i.
</p>
<blockquote>
In this somewhat risqu&eacute; episode, we'll look at just what you need to be able to do development work on the i. Many people in the i world will that PHP is native to the i, but I don't think that's really true. To me, native means that it just runs, no problems or questions asked, nothing special needs to be done, it just sort of happens like when you see someone across a crowded room and know she/he is "the one". That's not the way it works with PHP and the i.
</blockquote>
<p>
He starts off by talking about Zend and its contribution to the IBM i's abilities to run PHP through <a href="http://en.wikipedia.org/wiki/IBM_RPG">RPG</a> thanks to a "bridge" they created. There are other options, but as he points out, they're not as well developed (or supported) as Zend's offering (being Zend Server, Zend Studio and Zend Framework). 
</p>
<p>
He then talks about the details of creating and running scripts - where to put them, what kind of RPG knowledge you'll need to implement them, and which parts of the typical MVC stack work best where. 
</p>]]></description>
      <pubDate>Thu, 24 Jan 2013 12:57:03 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[PHPMaster.com: Password Hashing In PHP]]></title>
      <guid>http://www.phpdeveloper.org/news/19031</guid>
      <link>http://www.phpdeveloper.org/news/19031</link>
      <description><![CDATA[<p>
On PHPMaster.com there's a new tutorial that wants to help you keep your application and users a bit safer - a <a href="http://phpmaster.com/password-hashing-in-php/">guide to password hashing</a> for PHP applications.
</p>
<blockquote>
You must always think about security. If passwords are stored in plain text, what happens if an attacker gains access to your database? He can easily read all of the users' passwords. That's why we use a technique called password hashing to prevent attackers from getting user passwords. In this article you'll learn how to store the passwords securely in the database so that, even if your database falls into wrong hands, no damage will be done.
</blockquote>
<p>
He starts off describing what password hashing is and why it's important (and better than it's plain-text alternative). He gives some examples of using some of the built-in hashing functions PHP has to offer to generate the hashes. He starts with <a href="http://php.net/md5">md5</a>/<a href="http://php.net/sha1">sha1</a> (note, these are <b>not recommended</b>) but moves into more effective options like sha256, salted hashing and even bcrypting passwords with <a href="http://php.net/crypt">crypt</a>.
</p>
<p>
Be sure to check out the comments for other security concerns and links to suggested tools and resources.
</p>]]></description>
      <pubDate>Mon, 14 Jan 2013 11:57:32 -0600</pubDate>
    </item>
  </channel>
</rss>
