Joe Staner Zend Con 2008
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Joe Staner Zend Con 2008

on

  • 4,123 views

PHP, LAMP, Windows, ASP.NET ?????? Sometimes you can't choose just one....

PHP, LAMP, Windows, ASP.NET ?????? Sometimes you can't choose just one.

In this session, long time PHP developer and Microsoft MisfitGeek with explore the plethora of ways you can make PHP and ASP.NET interoperate.

Statistics

Views

Total Views
4,123
Views on SlideShare
4,121
Embed Views
2

Actions

Likes
0
Downloads
33
Comments
0

1 Embed 2

http://www.techgig.com 2

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Joe Staner Zend Con 2008 Presentation Transcript

  • 1. ASPHP  Make ‘em Talk ! Bridging PHP & ASP.NET Applications Joe Stagner Opinionated Misfit Geek Microsoft Corporation Developer Tools & Platforms http://www.MisfitGeek.com Joe.Stagner@Microsoft.com
  • 2. Why is Microsoft Interested in PHP ( ... and why am I here ? )
  • 3. Microsoft & PHP ZendCon & PHPTek / PHPWorks Zend Partnership FastCGI PHP Expression Support MS SQL Drivers for PHP CodePlex PHP Projects (Like AJAX PHP) ADODB *** URL Rewrite IIS.NET Guidance
  • 4. New Stuff from My Team Silverlight 2.0 b Dynamic Data ADO.NET Data Services MVC Web Forms “4.0”
  • 5. Why Run On or Integrate With Windows?
  • 6. Some Favorite PHP Applications PHP-Nuke PostNuke RunCMS Mambo Xoops MyPHPAdmin PHPBB2 VBulletin VBPortal cPanel Drupal e107 MD-Pro MyPHPNuke PHPWebSite TikiWiki Typo3 Xaraya b2Evolution bBlog Serendipity WordPress TextPattern OSCommerce OSCNuke Zen Cart eGroupWare phpGroupWare Site@School ATutor Moodle Segue Coppermine QwikiWikki SugarCRM WebCalendar
  • 7. PHP and the Microsoft Developer Ecosystem. Windows Ecosystem – Over 600,000 partners in the MS Ecosystem. – Microsoft makes MUCH more than Windows – Microsoft is making huge investments interoperability standards and technologies. (WS-I, etc.) – Microsoft provides …. a complete turn-key infrastructure …. Individual best-of-breed applications for you to choose from – Rapidly growing Service Offerings – FUTURE TECHNOLOGIES
  • 8. Software Options from Microsoft Identity MS Access MS Outlook BizTalk SQL Server MS LCS Integration Server Business MS Excel PowerPoint SharePoint SQL RS ISA Server Manager MS FrontPage MS Project MS CMS SQL AS Virtual Earth Data Analyzer Small Business Exchange MS InfoPath SQL NS Messenger MS Mobile Accounting Server Commerce Live Meeting MS Visio Project Server MapPoint Tablet PC Server MS Starter MS OneNote MS Word MS CRM MOM App Center Kits
  • 9. More Software Options from Microsoft Active IIS 6/7 Axapta Navision Info Bridge Media Center Directory Retail ADAM MSMQ Great Plains WSH Info Card Management Small Windows Authorization Windows Business Unix DirectX WinFX Manager Server 2003 Manager Services Operations Windows Windows MS Solomon VBA / VSA ActiveX Manager Mobile Workflow MS Presentation XML-WS Application MSN Hosted Enterprise Foundation WSE Center Search Controls Reporting (Avalon) Windows System Windows Host Windows Vista Media Management Index Integration Embedded Longhorn Server Server Server Server
  • 10. More Software Options from Microsoft Slverlight WF or BizTalk Live Services Virtual Earth Media Services
  • 11. Does PHP on Windows Actually WORK ?
  • 12. On Windows Tools (Windows Only) – VS.PHP – Phalanger – NuSphere PHPEd, Delphi for PHP Tools (Cross Platform) – Zend Studio – ActiveState Komodo Drivers – MSPHPSQL
  • 13. Other Integrations
  • 14. PHP & IIS Versions & App Pools
  • 15. Example Membership Integration
  • 16. ASP.NET Membership Native MS SQL Provider – SQL Server or SQL Express – 3rd party ASP.NET Membership Provider MySQL Oracle XML
  • 17. Open Source Providers
  • 18. ASP.NET Membership Integration ASP.NET – Complete Managed API PHP on Windows – Microsoft SQL Server Driver for PHP (Willow) – Web Services – .NET / COM PHP On Linux – FreeTDS – Sockets – Web Services
  • 19. Setting Up ASP.NET Membership aspnet_regsql.exe
  • 20. Complete Schema Applications Membership Roles Usage demonstrated in the MS SQL Provider Source Code.
  • 21. Enable SQL for TCP/IP
  • 22. Open the Windows Firewall
  • 23. ASP.NET Authentication from PHP on Windows
  • 24. Authentication from PHP/Linux MS SQL In Windows – Security Configuration Required Free TDS On Linux – MS SQL via ODBC over TCP/IP Platform Specific PHP Code
  • 25. Other Integrations
  • 26. Office Documents from PHP on Windows
  • 27. Microsoft Silverlight CLIENT ! Cross Platform Rich Media You're hearing all about it !!!
  • 28. Other Integrations
  • 29. Silverlight from PHP on Windows & Linux
  • 30. Other Integrations
  • 31. Microsoft AJAX Intergrated with ASP.NET Server Complealty Independent Client Framework Server Implementation Samples for Non- MS Completely Free Completely Open Source
  • 32. Microsoft AJAX PHP on Windows & Linux
  • 33. Other Integrations
  • 34. XML Web Services PHP 5 – Native SOAP Extension PEAR::SOAP NuSOAP ezSOAP
  • 35. .NET Web Services from PHP
  • 36. Other Integrations
  • 37. PHP and COM What’s COM ? PHP doesn’t REALLY speak COM. COM is the Lingua Franca of Windows – VB – C++ (Ours and many others) – Delphi – Python – Perl – Cobol – Fortran
  • 38. Creating a COM Object Instance <?php $myCOMObject =new COM(quot;COMObject.COMClassquot;); $myCOMObject->someMethod(“Some Argument”); ?>
  • 39. COM Objects from PHP on Windows
  • 40. Other Integrations
  • 41. .NET Framework and Tools VB C++ C# J# … Common Language Specification Visual Studio .NET ASP .NET Windows Web Forms Web Services Forms Mobile Internet Toolkit ADO .NET and XML Base Class Library Common Language Runtime Operating System
  • 42. The Shared Source CLI VS.NET System.Web (ASP.NET) System.WinForms C# SessionState UI Design ComponentModel Caching HtmlControls JScript Security WebControls VB Configuration System.Drawing Simple Web Services VC/MC++ Drawing2D Printing Protocols Imaging Text Debugger Discovery Description Designers System.Data (ADO.NET) System.Xml ADO SQL XSLT Serialization SDK Tools Design Adapters XPath CorDBG System ECMA CLI ILAsm Collections IO Security Runtime Configuration Net ServiceProcess InteropServices ILDbDump Diagnostics Reflection Text Remoting SN Globalization Resources Threading Serialization ILDAsm MetaInfo Common Language Runtime GC App Domain Loader JIT PEVerify MSIL Common Type System Class Loader Platform Adaptation Layer Networking Boot Loader Threads Sync Timers Filesystem
  • 43. Base Class Library System.Web System.Windows.Forms Services UI Design ComponentModel Description HtmlControls Discovery WebControls Protocols System.Drawing Caching Security Drawing2D Printing Configuration SessionState Imaging Text System.Data System.Xml OleDb SqlClient XSLT Serialization Common SQLTypes XPath System Collections IO Security Runtime Configuration Net ServiceProcess InteropServices Diagnostics Reflection Text Remoting Globalization Resources Threading Serialization
  • 44. Microsoft .NET COM Callable Wrapper Runtime Callable Wrapper PHP Restrictions – OLE 2 Parameterless Constructors
  • 45. .NET Objects from PHP on Windows
  • 46. Other Integrations
  • 47. Microsoft Services Most are Free Most are Platform Independent Most are Ad Free
  • 48. .Microsoft Services from PHP
  • 49. Other Integrations
  • 50. Phalanger
  • 51. WHY - Helpers you might need. Component Creation Calling binary .DLLs Simplifying Interoperability Remote Instancing Application Multithreading Asynchronous Dependencies Multi Phase Transactions Aggregating Multi-Interfaced Objects Type Encapsulation & Abstraction Object Scope Promotion Static Instance Access
  • 52. Integration Options The Windows File System SMTP X.500 WDDX MS-SQL Server, ADO, ODBC – What about the new auth provider? – What about database’d session state XML LDAP
  • 53. Integration Options Sockets RSS XML-RPC XML Web Services / SOAP PHP Extensibility Mechanisms
  • 54. Integration Options HTTP Form Tricks They can be Open They can be Hidden They can be Encrypted Cookie Tricks They can also be encrypted Finally some ADVANTAGE to HTTP’s stateless protocol.
  • 55. Integration Options Build your own. PHP on Windows built with VC++ (6) PECL Extensions PHP is Open Source
  • 56. A PHP Project Wish List A native Active Directory API PHP An AzMan API for PHP A PHP Bridge to ADAM An ASP.NET 2.0 Authentication Provider for PHP A seamless session state bridge. A CDO / Exchange Bridge for PHP PHP-Nuke, Mambo, etc. etc. – On Microsoft SQL – Optionally in Phalanger – Optionally using AD
  • 57. Call to Action ! •Get your FREE Visual Studio •Understand what products Microsoft makes. •Email Joe.Stagner@Microsoft.com •Read me at http://www.MisfitGeek.com
  • 58. Thanks •Andrew Stopford
  • 59. Q&A THANKS ! © 2007 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
  • 60. © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.