Posts Tagged ‘php’

Finally got moving on something…

Tuesday, January 30th, 2007

From the previous posts it’s easy to notice that I’ve been searching for an efficient way to code large web projects. While I am still open to frameworks and such I had something happen that kind of “brought me back to my roots.” I have the job of making a website for a not-for-profit organization in my area. I decided that they should have something easy to update, so that means a data driven site with a back-end. I don’t want to use premade systems because they have too many things I don’t want included. I therefore decided to go with what I’ve worked with in the past which is straight PHP.

More specifically PHP5+ and the SQLite database engine. PHP5 perfects a good deal of useful features over the older versions such as the class/object model. It also adds support built-in for the file based SQLite engine. For what I am creating, SQLite takes out a lot of the unnecessary complexity of using MySQL.

I’ve got the database and general site design “done”. I also have a nice chunk of the back-end working. I integrated an open source browser based wysiwyg html editor, so updating the site will be a breeze. I also plan on adding functionality for multi-page events/articles and image galleries.

I’m pretty happy with the results so far. It might be taking me longer by designing and coding a basic content management system myself, but I get the exact result I want without the added fluff of premade stuff.

I might be going into more detail later, so look forward to that!

Getting a Symfony development enviroment running on windows

Thursday, January 11th, 2007

Nothing is ever easy… Anyways, to get a computer ready to start developing with the Symfony PHP framework you have a few options. You can take the long, long route and install apache, php, and a database server. With that you have to do a good deal of configuration to get everything working together. You could also download WAMP or XAMPP, which are just prepackaged versions. I haven’t used XAMPP, so I can’t say how you would get that working.

The best reason for using WAMP is that it is self contained in c:\wamp folder by default. You can also start and stop all of the server processes (Apache & MySQL) anytime by just closing the tray icon. It’s great so you don’t have unnecessary processes running all of the time.

The main problem is that WAMP and Symfony don’t work “out of the box.” No surprise there.

This is the process I used to get WAMP working with Symfony:
Download WAMP (1.6.6) and install:
http://www.wampserver.com/en/

Open a browser to http://localhost/
WAMP should display it’s default webpage with links to phpmyadmin and etc.
If you are going to use MySQL it might be a good idea to change its root account to have a password. You can use phpmyadmin to do that, just click the link to it on the WAMP localhost page.

There will be a problem once you change the password. Phpmyadmin won’t be able to reconnect to MySQL until you edit this file:
C:\wamp\phpmyadmin\config.inc.php:
Search for this line below in the file and put your password between the ”:
$cfg['Servers'][$i]['password'] = ”;

Extract the Symfony Sandbox to c:\wamp\www for testing later:
http://www.symfony-project.com/get/sf_sandbox.tgz
If that link doesn’t work, just go to http://www.symfony-project.com/ and checkout the download page.

Read this tutorial for some needed info:
http://www.symfony-project.com/trac/wiki/SymfonyOnWAMP

It basically said to:
Open c:\wamp\Apache2\bin\php.ini
Search for and remove the comment symbol ‘;’, change ‘On’ to ‘Off’, or just edit the lines to be the same as these below.
extension=php_xsl.dll
magic_quotes_gpc = Off
register_globals = Off
include_path = “.;c:\php\includes;c:\wamp\php\pear”

The magic_quotes_gpc and register_globals parts were not in the tutorial, but WERE NECESSARY for me to change. I was getting a 500 internal server error before I set those values to Off.

Install PEAR for PHP (taken from that Wiki article directly):
1. Start -> Run -> cmd
2. Cd into the PHP directory (e.g. C:\wamp\php)
3. Invoke go-pear.bat. Follow through the options (default should work fine).
If you have a problem when running the bat file like “Warning: Cannot use a scalar value as an array,” in php 5.2.0 the file was broken for windows. You can check out this website for more info. You can just download the new version of the file from svn here.

Open C:\wamp\Apache2\conf
Remove the comment character ‘#’ from this line:
LoadModule rewrite_module modules/mod_rewrite.so

Point a browser to http://localhost/sf_sandbox/web/
You should get a page that says something like:
Congratulations!
If you see this page, it means that the creation of your symfony project on this system was successful….

A few more notes to get the Symfony sandbox example working:
http://www.symfony-project.com/tutorial/my_first_project.html
Edit symfony.bat in the sf_sandbox folder that you extracted to c:\wamp\www
Change the line:
set PHP_COMMAND=php.exe
to
set PHP_COMMAND=c:\wamp\php\php.exe

I’m still having some problems with the example, but it is *kind of* working so far. I had to edit both php.ini files with all of the previous modifications.

Looking for faster development methods

Wednesday, January 10th, 2007

Over the past week or two I’ve been researching ways to develop server-side web based applications as fast as possible (time is money, haha). I am in the initial stages of starting a little side business with a friend and one of our possible clients is looking for a large system to handle online ordering of their products. If you know anything about developing and programming a complex system, it takes a lot of planning as well as a good deal of time to actually create it. My “developer ideals” won’t allow my to create something of poor quality, so I’ve been reluctant to take on large things in the past. I’ve been pushing myself more lately to produce results the results I strive for with more speed. Well more like I’ve been trying to learn new methods and techniques where I can keep my quality level high, but just get things done faster.

While I’ve programmed in PHP before, I know that I would need to create a large amount of generic functionality to handle an ordering system. This would include the front end where the customer places orders as well as the back end where the company processes the order, allows for product creation/update/deleting and whatever else.

I’m not really going to do much with that order system right now, because it is only a possibility for us. What I need to do is find a tool that provides the best method of implementing server-side web based applications. My requirements at this time are free, reliable output, ease of use, and speed of implementation.

I’ve looked at Visual Web Developer 2005 Express with MySQL. The problem as I mentioned in a previous post is that to use the .net 2.0 pre-made functionality I have to use an unproven user made library. Not something I want to do.

Over the past two days I was researching Ruby On Rails. It looks interesting and should have a good deal of support in the future, but at least to me doesn’t seem like it would be something I would want to use to code a client’s application. At least not until I learn a lot more about it.

A few minutes ago I found Symfony. It’s a framework based on PHP5 and is said to be of “clean design and code readability.” So now I will be looking into that. If it’s true this might be what I am looking for. If not I may just get started on designing/creating my own generic framework.




The Way Of Coding



 
Scott J. Waldron Photography
Stock Photo Website
Tech Learning Site

Popular Article Tags

Archives

Pages