<?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>Mon, 21 May 2012 08:40:59 -0500</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[SitePoint.com: OAuth for PHP Twitter Apps, Part I]]></title>
      <guid>http://www.phpdeveloper.org/news/15073</guid>
      <link>http://www.phpdeveloper.org/news/15073</link>
      <description><![CDATA[<p>
On the SitePoint blogs today there's <a href="http://articles.sitepoint.com/article/oauth-for-php-twitter-apps-part-1">a new tutorial posted</a>, the first part of a series, from <i>Raj Deut</i> about making the move away from the basic authorization for connecting to the <a href="http://twitter.com">Twitter API</a> and towards their new OAuth method for <a href="http://dev.twitter.com/apps">Twitter Apps</a>.
</p>
<blockquote>
As of August 31, Twitter's HTTP Basic Authenticated API service has been disabled entirely. Now, any interface with the API will be required to use a token-based authentication method known an OAuth. [...] At first glance, the task of implementing OAuth can appear daunting, and OAuth's token exchange system can be confusing if you're unfamiliar with it. Fortunately, there are some rather clever individuals who've done the groundwork for us.
</blockquote>
<p>
They show you how to <a href="http://dev.twitter.com/apps">register your application</a> with Twitter and use the <a href="http://github.com/abraham/twitteroauth/downloads">TwitterOAuth library</a> to make a sample connection to their servers. They also show how to generate the tokens for the URL and the ones for accessing the site as a user. With tokens in hand, the script can then connect to the system and make a sample tweet (complete code included).
</p>]]></description>
      <pubDate>Fri, 03 Sep 2010 10:53:45 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[PHPBuilder.com: Upgrading Basic Twitter Authentication to OAuth with PHP ]]></title>
      <guid>http://www.phpdeveloper.org/news/14712</guid>
      <link>http://www.phpdeveloper.org/news/14712</link>
      <description><![CDATA[<p>
On PHPBuilder.com today there's a new tutorial about <a href="http://www.phpbuilder.com/columns/sachin_khosla062510.php3">updating your application's Twitter authentication</a> from the basic method to OAuth (which will become the new standard).
</p>
<blockquote>
Twitter provides an API for developers to build applications on top of it. The API has supported basic authentication over HTTP, but beginning in June 2010 Twitter is discontinuing basic authentication and migrating all Web and desktop applications to OAuth (Open Authorization). Although simpler to implement, basic authentication had its drawbacks. [...] OAuth on the other hand provides a more secure way to authenticate users and allows a persistent access token, which application developers can then consume.
</blockquote>
<p>
They explain a bit about how OAuth works as compared to the basic authentication method (complete with a <a href="http://www.phpbuilder.com/columns/oauth-figure.jpg">graph</a>) and how to use the <a href="http://www.phpbuilder.com/columns/oauth-twitter.zip">OAuth Twitter library</a> to make the connection between your application and the Twitter servers.
</p>]]></description>
      <pubDate>Mon, 28 Jun 2010 11:23:09 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Chris Jones' Blog: New PHP Oracle FAQ Wiki]]></title>
      <guid>http://www.phpdeveloper.org/news/12301</guid>
      <link>http://www.phpdeveloper.org/news/12301</link>
      <description><![CDATA[<p>
<i>Chris Jones</i> has <a href="http://blogs.oracle.com/opal/2009/04/new_php_oracle_faq_wiki.html">pointed out</a> a new wiki page that's been set up as a more centralized resource for <a href="http://wiki.oracle.com/page/PHP+Oracle+FAQ">frequently asked questions about PHP and Oracle</a>.
</p>
<blockquote>
I've updated the old Oracle PHP FAQ and the Oracle PHP Troubleshooting FAQs that were hosted by Oracle Technology Network (OTN). We've redirected the old FAQ pages to a new wiki page: <a href="http://wiki.oracle.com/page/PHP+Oracle+FAQ">http://wiki.oracle.com/page/PHP+Oracle+FAQ</a> with the updated content. Feel free to create an account and make updates. Hosting the FAQ on a wiki seems appropriate because PHP is open source and grows by the value of everyone's contributions.
</blockquote>
<p>
Questions so far include some of the basics (connecting, querying, etc) and a few more complicated issues like pre-fetching, LOBS and new information for using the Zend Server to connect to your Oracle databases.
</p>]]></description>
      <pubDate>Wed, 08 Apr 2009 12:05:05 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[PHPBuilder.com: The ABC's of PHP II - What do I need to make it work?]]></title>
      <guid>http://www.phpdeveloper.org/news/12137</guid>
      <link>http://www.phpdeveloper.org/news/12137</link>
      <description><![CDATA[<p>
<i>Peter Shaw</i> has <a href="http://www.phpbuilder.com/columns/peter_shaw031301.php">posted the second part</a> of his introductory series to PHP - "The ABCs of PHP". In this new article <i>Peter</i> looks at the installation and configuration of PHP on your platform of choice (Windows or Linux-based).
</p>
<blockquote>
PHP runs on all the major computing platforms available today, this includes all versions of windows, all the major linux distro's and a lot of specialist systems for devices like the Cobalt Raq and a lot of embedded devices. In this article however we will be concentrating on running PHP under the Apache and IIS web servers, which between the two covers approx 95% of the systems most people will have access to. 
</blockquote>
<p>
He uses packages on the linux installation to make things simple (for a basic Apache2 and PHP5) and the PHP and Apache binaries from each project on the Windows platform.
</p>]]></description>
      <pubDate>Mon, 16 Mar 2009 07:58:31 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[NETTUTS.com: Top 50 Wordpress Tutorials]]></title>
      <guid>http://www.phpdeveloper.org/news/12020</guid>
      <link>http://www.phpdeveloper.org/news/12020</link>
      <description><![CDATA[<p>
NETTUTS.com has <a href="http://net.tutsplus.com/articles/web-roundups/top-50-wordpress-tutorials/">a list of fifty WordPress tutorials</a> you can use on your installation to do things like:
</p>
<ul>
<li>Multiple Wordpress Installations Using a Single Database
<li>Wordpress Theme Hacks
<li>Turning a Web Template Into a Wordpress Theme
<li>Rounded Corner Tab Menus
<li>Customizing Widgets Using CSS
<li>Wordpress Categories in a Horizontal Drop-down Menu
<li>Enabling HTTPS for Wordpress.com Blogs Screencast
</ul>
<p>
Check out <a href="http://net.tutsplus.com/articles/web-roundups/top-50-wordpress-tutorials/">the full post</a> for even more WordPress goodness.
</p>]]></description>
      <pubDate>Wed, 25 Feb 2009 11:13:30 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Evert Pot's Blog: HTTP Basic and Digest authentication with PHP]]></title>
      <guid>http://www.phpdeveloper.org/news/11948</guid>
      <link>http://www.phpdeveloper.org/news/11948</link>
      <description><![CDATA[<p>
Validating users can be a complicated thing but, depending on what you're trying to protect, you may not need an entire user validation and management system to keep it all straight. <i>Evert Pot</i> <A href="http://www.rooftopsolutions.nl/article/223">offers information</a> on using PHP with a good old standby technology - HTTP basic and digest authentication.
</p>
<blockquote>
HTTP authentication is quite popular for web applications. It is pretty easy to implement and works for a range of http applications; not to mention your browser.
</blockquote>
<p>
He includes two scripts - one to force the Basic form of authentication (the password is passed over in clear-text) and the Digest method (the password is set over as a hash) - and how to check the values sent back for each. Obviously, the Digest method takes a little more doing and requires compiling a few different keys as an md5 hash to ensure that the user is valid.
</p>]]></description>
      <pubDate>Fri, 13 Feb 2009 12:06:02 -0600</pubDate>
    </item>
    <item>
      <title><![CDATA[Developer Tutorials: Drupal CMS e-Commerce Module Basics]]></title>
      <guid>http://www.phpdeveloper.org/news/10875</guid>
      <link>http://www.phpdeveloper.org/news/10875</link>
      <description><![CDATA[<p>
On the Developer Tutorials site today, there's <a href="http://www.developertutorials.com/tutorials/miscellaneous/drupal-cms-e-commerce-module-basics-8-08-20/page1.html">a new look</a> at working with the <a href="http://drupalecommerce.org/">Drupal e-Commerce</a> module in your Drupal installation.
</p>
<blockquote>
What if you [also] want to support collaborative editing of content, community forums, and other capabilities that could help increase traffic to your site, but are usually only found in content management systems (CMSs)? Is it possible to combine the best of both worlds - shopping carts and CMSs? Fortunately, the answer is yes, if you choose a world-class CMS such as Drupal as a foundation for your site.
</blockquote>
<p>
They walk you through how to get <a href="http://drupalecommerce.org/">the module</a> installed, how to configure it to match with your site's layout and flow and how to hook the purchase process into PayPal to make purchasing a few simple user clicks away.
</p>]]></description>
      <pubDate>Thu, 21 Aug 2008 10:21:04 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[PHPBuilder.com: Fundamentals of PHP Superglobals]]></title>
      <guid>http://www.phpdeveloper.org/news/8872</guid>
      <link>http://www.phpdeveloper.org/news/8872</link>
      <description><![CDATA[<p>
PHPBuilder.com has a <a href="http://www.phpbuilder.com/columns/ian_gilfillan20050801.php3">new article</a> published today that works through some of the basics behind using the superglobal variables in PHP.
</p>
<blockquote>
This month's article is aimed at PHP developers who're not yet familiar with the PHP superglobals. Usage of superglobals is fundamental to PHP web development, but, with all the recent changes in PHP, there are still many outdated tutorials, books, and sadly, still much confusion.
</blockquote>
<p>
They <a href="http://www.phpbuilder.com/columns/ian_gilfillan20050801.php3">look at</a> how to use them in a PHP script (in an HTML page) and what's contained in each of them (_GET, _POST, _ENV, _SERVER, etc).
</p>]]></description>
      <pubDate>Fri, 19 Oct 2007 13:56:00 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[David Coallier's Blog: PHP Namespaces (Part 1: Basic usage & gotchas)]]></title>
      <guid>http://www.phpdeveloper.org/news/8492</guid>
      <link>http://www.phpdeveloper.org/news/8492</link>
      <description><![CDATA[<p>
<i>David Coallier</i> has <a href="http://blog.agoraproduction.com/index.php?/archives/47-PHP-Namespaces-Part-1-Basic-usage-gotchas.html">posted his look</a> at the namespace support that will be included with PHP6, specifically some examples of their basic usage and things to look out for when using them in your applications.
</p>
<blockquote>
Well, PHP has namespaces now! Time to start educating people on that long awaited feature and for the people that already do know namespaces from C++, you also need to read this, it's simple, but will give you the basic syntax.
</blockquote>
<p>
He <a href="http://blog.agoraproduction.com/index.php?/archives/47-PHP-Namespaces-Part-1-Basic-usage-gotchas.html">starts with</a> things like "what is a namespace?" or "what are they used for?" before getting into the syntax. The next step up is explaining how they work - he uses an example project, ProjectOne, with its namespace definition and an example script (invoke.php) that uses this class (including the new "import" keyword and the double-colon namespace separator).
</p>]]></description>
      <pubDate>Mon, 20 Aug 2007 15:12:00 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Devshed: The Basics of Using the Prototype Pattern with PHP 5]]></title>
      <guid>http://www.phpdeveloper.org/news/7850</guid>
      <link>http://www.phpdeveloper.org/news/7850</link>
      <description><![CDATA[<p>
DevShed gets back to its series looking at design patterns with <a href="http://www.devshed.com/c/a/PHP/The-Basics-of-Using-the-Prototype-Pattern-with-PHP-5/">this new tutorial</a> covering the Prototype pattern. This pattern is commonly used when its too "expensive" to create an object in the usual way in an application.
</p>
<blockquote>
The prototype class lets you use many instances of a specific class, without copying objects to different variables. [...] Expressed in simple terms, when you define a class in the context of a given PHP application, what you're actually doing is creating a prototype model that will be implemented by one or more instances of the originating class. Naturally there will be some variations, particularly if you're working with subclasses that override and overload methods defined by the respective parent.
</blockquote>
<p>
In this <a href="http://www.devshed.com/c/a/PHP/The-Basics-of-Using-the-Prototype-Pattern-with-PHP-5/">first part</a> of the series, they start by creating a class - DataPrototype - to act as a foundation for the rest of the tutorial. On top of the DataPrototype, they build two new classes:
<ul>
<li>an ArrayPrototype class that as methods for getting the size and data in an array as well as setting its contents
<li>a FilePrototype that has methods for reading file information and saving new data out
</ul>
</p>
<p>
Finally, they <a href="http://www.devshed.com/c/a/PHP/The-Basics-of-Using-the-Prototype-Pattern-with-PHP-5/3/">show it in action</a>, first the ArrayPrototype, then the FilePrototype both setting the data of their respective storage method then getting its size.
</p>]]></description>
      <pubDate>Wed, 16 May 2007 07:53:00 -0500</pubDate>
    </item>
  </channel>
</rss>

