<?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>Thu, 15 May 2008 21:50:44 -0500</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[Tiffany Brown's Blog: Debugging tip: "Disallowed Key Character" error in CodeIgniter]]></title>
      <guid>http://www.phpdeveloper.org/news/10133</guid>
      <link>http://www.phpdeveloper.org/news/10133</link>
      <description><![CDATA[<p>
CodeIgniter fans might want to take note of <a href="http://tiffanybbrown.com/2008/05/06/debugging-tip-disallowed-key-character-error-in-codeigniter/">this tip</a> from <i>Tiffany Brown</i> concerning "disallowed key character" error messages.
</p>
<blockquote>
After 6 hours of massive anxiety, stress, near tears, one pound on my desk, and some hair pulling, I tracked down the source of a nagging Disallowed Key Character error that I received while using <a href="http://www.codeigniter.com/">CodeIgniter</a>: an extra line break.
</blockquote>
<p>
She eventually figured out that the newline and carriage return characters are not allowed as a part of the framework. Unfortunately, it was a random newline after a controller's code that did it for her.
</p>]]></description>
      <pubDate>Wed, 07 May 2008 12:09:29 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[PHPBuilder.com: Validating PHP User Sessions]]></title>
      <guid>http://www.phpdeveloper.org/news/9923</guid>
      <link>http://www.phpdeveloper.org/news/9923</link>
      <description><![CDATA[<p>
On PHPBuilder.com, there's a <a href="http://www.phpbuilder.com/columns/validating_php_user_sessions.php3">new tutorial</a> about validating user sessions - ensuring that data in your user's sessions is valid and isn't an attack trying to sneak in.
</p>
<blockquote>
In a nutshell, sessions are the way that we "maintain state" from one page to the next, that is, how we identify specific users across multiple page requests. The ability to track users as they go from one page to the next using sessions allows us a number of options, such as tracking where they are going (web statistics) or to verify credentials for a specific section of the site.
</blockquote>
<p>
First, there's a little mini-intro to sessions for those unsure on their use. It's followed by a look at some session vulnerabilities that could be introduces by malicious users looking to break things on your site (including HTML/Javascript injection, as their example shows).
</p>
<p>
They recommend a three step plan to get started with the validation of your user's sessions - making it easy for users to log out when they want to, use unique aspects of the remote machine to define the session and to validate all user input, especially things that will be put into a session variable.
</p>]]></description>
      <pubDate>Mon, 07 Apr 2008 11:12:33 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[PHPClasses.org: Top 10 tips to get better PHP jobs]]></title>
      <guid>http://www.phpdeveloper.org/news/9908</guid>
      <link>http://www.phpdeveloper.org/news/9908</link>
      <description><![CDATA[<p>
On the PHPClasses.org blog, there's <a href="http://www.phpclasses.org/blog/post/76-Top-10-tips-to-get-better-PHP-jobs.html">an article</a> from <i>Manuel Lemos</i> that gives ten tips trying to help you get a better PHP job (they're all the way at the bottom, just scroll down).
</p>
<p>The list of tips include things like:</p>
<ul>
<li>Qualify yourself to stand out from the crowd
<li>Get more exposure to yourself in the PHP community
<li>Do well on job interviews
<li>Evolve in your career making your employer profit more
</ul>
<p>
Check out <a href="http://www.phpclasses.org/blog/post/76-Top-10-tips-to-get-better-PHP-jobs.html">the post</a> for more great tips.
</p>
]]></description>
      <pubDate>Thu, 03 Apr 2008 12:58:01 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Matthew Weir O'Phinney's Blog: Vim Productivity Tips for PHP Developers]]></title>
      <guid>http://www.phpdeveloper.org/news/9843</guid>
      <link>http://www.phpdeveloper.org/news/9843</link>
      <description><![CDATA[<p>
<i>Matthew Weir O'Phinney</i> has <a href="http://weierophinney.net/matthew/archives/164-Vim-Productivity-Tips-for-PHP-Developers.html">posted a few handy tips</a> for PHP developers fond of working in one of the most powerful command-line editors, Vim.
</p>
<blockquote>
I use <a href="http://www.vim.org/">Vim</a> for all my editing needs -- TODO lists, email, presentation outlines, coding in any language... everything. So, I thought I'd start sharing some of my vim habits and tools with others, particularly those that pertain to using Vim with PHP.
</blockquote>
<p>
He includes tips for things like mapping keystrokes (to the PHP interpreter and linter), using the <a href="http://www.vim.org/scripts/script.php?script_id=69">Project plugin</a> to make setting up projects easier and a mention (again) of <a href="http://weierophinney.net/matthew/archives/134-exuberant-ctags-with-PHP-in-Vim.html">ctags</a>.
</p>]]></description>
      <pubDate>Mon, 24 Mar 2008 07:58:31 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[The Bakery: 10 New CakePHP Articles, Tutorials and Helpers]]></title>
      <guid>http://www.phpdeveloper.org/news/9676</guid>
      <link>http://www.phpdeveloper.org/news/9676</link>
      <description><![CDATA[<p>
The Bakery (the CakePHP repository) has posted lost of great new content to their site recently. Here's just a taste:
</p>
<ul>
<li><a href="http://bakery.cakephp.org/articles/view/pagination-recall">Pagination Recall</a>
<li><a href="http://bakery.cakephp.org/articles/view/subdomaining-with-cake">Subdomaining with Cake</a>
<li><a href="http://bakery.cakephp.org/articles/view/using-your-application-svn-revision-number">Using your application svn revision number</a>
<li><a href="http://bakery.cakephp.org/articles/view/what-s-up-docs">What's Up, Docs?</a>
<li><a href="http://bakery.cakephp.org/articles/view/automatic-javascript-and-css-packer">Automatic JavaScript and CSS Packer</a>
<li><a href="http://bakery.cakephp.org/articles/view/baking-with-markdown-and-dp-syntaxhighlighter">Baking with Markdown and dp.SyntaxHighlighter</a>
<li><a href="http://bakery.cakephp.org/articles/view/attachments">Attachments</a>
<li><a href="http://bakery.cakephp.org/articles/view/darkauth-another-way">DarkAuth - another way...</a>
<li><a href="http://bakery.cakephp.org/articles/view/testing-components-with-cakephp-1-2-test-suite">Testing Components with CakePHP 1.2 test suite</a>
<li><a href="http://bakery.cakephp.org/articles/view/cake-php-rocks">Cake PHP Rocks</a>
</ul>
<p>
Also be sure to check out the rest of <a href="http://bakery.cakephp.org">The Bakery</a> for more great CakePHP-related articles, tutorials and helpful hints.
</p>]]></description>
      <pubDate>Thu, 21 Feb 2008 08:42:00 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Developer Tutorials Blog: And the winner of the most important security tip competition is...]]></title>
      <guid>http://www.phpdeveloper.org/news/9642</guid>
      <link>http://www.phpdeveloper.org/news/9642</link>
      <description><![CDATA[<p>
The Developer Tutorials blog has posted <a href="http://www.developertutorials.com/blog/php/most-important-php-security-tip-34/">their "winner"</a> of a list of things to do to keep you and your website secure:
</p>
<blockquote>
When it comes to PHP security, you often think of input filtering, SQL injection prevention, XSS in user submitted content and so on. Well, forget about that. They're all pretty trivial compared to what I feel is by far the most important security issue of any web application. Read on to find out why.
</blockquote>
<p>
Their number one thing to do to keep safe and secure? "Keep your systems updated." They point out that security a web site is one thing but securing the system that it runs on/has been developed on is another (and improperly patched, it could cause some huge problems). 
</p>
<blockquote>
Now, the best way to keep on top of potential vulnerabilities in your underlying systems is with updates. Sometimes, however, you need to go a little further. [...] Watching the web is also a good idea; major security vulnerabilities generally make it to the front page of Digg.
</blockquote>]]></description>
      <pubDate>Fri, 15 Feb 2008 09:31:00 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Gennady Feldman's Blog: Performance tips, APC vs Eaccelerator]]></title>
      <guid>http://www.phpdeveloper.org/news/9614</guid>
      <link>http://www.phpdeveloper.org/news/9614</link>
      <description><![CDATA[<p>
<i>Gennady Feldman</i>, in light of some of the <a href="http://www.phpdeveloper.org/news/9566">recent</a> <a href="http://www.phpdeveloper.org/news/9538">talk</a> about enhancing the performance of your PHP applications, has written up <a href="http://www.gena01.com/forum/gena01_blog/performance_tips_apc_vs_eaccelerator-t201.0.html;msg1342#msg1342">this new post</a> comparing two of the more favored software packages - APC and Eaccelerator.
</p>
<blockquote>
Some websites use other technologies like Java and face the exact same problems. There are different variables involved here and the most common one is database. So I thought i would post a couple of articles related to performance and tuning.
</blockquote>
<p>
This <a href="http://www.gena01.com/forum/gena01_blog/performance_tips_apc_vs_eaccelerator-t201.0.html;msg1342#msg1342">this post</a> of the series focuses on the first of the two - APC - and talks about places it's used and includes some general performance recommendations. These include "Don't try to throw everything at your poor database" and the importance of XDebug.
</p>]]></description>
      <pubDate>Tue, 12 Feb 2008 10:27:34 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Nick Halstead's Blog: Programming Tips #9 "debug_backtrace"]]></title>
      <guid>http://www.phpdeveloper.org/news/9602</guid>
      <link>http://www.phpdeveloper.org/news/9602</link>
      <description><![CDATA[<p>
<i>Nick Halstead</i> continues the "Programming Tips" series on his blog today with <a href="http://www.nickhalstead.com/2007/12/19/programming-tips-9-debug_backtrace/">tip number nine</a> (a very handy tip indeed) - using <a href="http://www.php.net/debug_backtrace">debug_backtrace</a> from <i>Larry Garfield</i>.
</p>
<blockquote>
Despite the proliferation of debugging tools, especially real-time debuggers, "debugging by print statement" remains the most common form of debugging in most programming languages.
</blockquote>
<p>
An example of its use <a href="http://www.nickhalstead.com/2007/12/19/programming-tips-9-debug_backtrace/">is included</a> by way of a debug() function that returns the message it a bit friendlier format. 
</p>]]></description>
      <pubDate>Mon, 11 Feb 2008 10:33:00 -0600</pubDate>
    </item>
  </channel>
</rss>
