Promo Offers XMAS Offers:
KVM VPS @ UP TO 50% OFF for 3 mos. Learn More Dedicated @ UP TO 56% OFF for 1 mo. Learn More
  • Your Cart is Empty
  • Cart
  • Log In

PHPDevShell

What is PHPDevShell

PHPDevShell is an Open Source PHP framework for the development of admin-based applications.

PHPDevShell, which is fast, stable and secure, could be also described as a Rapid Application Development framework, which offers a well designed administrative graphical user interface to accommodate any types of already written scripts or develop your own specifically for PHPDevShell. This GUI interface offers developers many features such as management of users, roles, groups, menus, crons, templates, hooks, logs, plugins, settings, plus various navigation, registration, theming, search filtering, caching and mailing options.

Latest version: 2.1.0
PHP4
PHP5 PHP v.5.2.0 or later
MVC
Multiple DB
ORM
DB Objects
Templates
Caching
Validation
Ajax
Auth Module
Modules
Cost FREE

The PHPDevShell Framework - Installation and Requirements

PHPDevShell provides the developers with both a backend and a frontend GUI. The installation of PHPDevShell is very easy. First, you need a web hosting account which has an Apache 2.x web server installed and which also supports PHP 5.2.0 or later. Then you need to extract the PHPDevShell's compressed file on your computer and create a database in your web hosting account using the PHPMyAdmin utility to import the install_mysql_database.sql file provided with the PHPDevShell's package. When the MySQL database is created, you need to rename (remove the '.new' part) the /config/default.config.php.new and /config/host.config.php.new configuration files and edit them so as to match the settings of your server. Once you finish with the configuration of your server settings you have to establish an FTP connection and upload the entire PHPDevShell directory to your server. To run the PHPDevShell you need only to browse the directory where the framework is uploaded. That’s it.

The PHPDevShell RAD framework - How does it work?

RAD involves iterative development and the construction of prototypes, and combines various structured techniques, notably the data driven Information Engineering methodology, with prototyping techniques for the purpose of accelerating the development of software systems.

PHPDevShell provides the developers with some useful classes and methods. Of course, you can add your favorite class or library to use inside the PHPDevShell.

In order to let you get tasks quickly done, PHPDevShell provides five fundamental objects, which are always available to you and do not need to be called separately.

The $db class contains basic database methods and information to manage your scripts. With $navigation developers can call navigation values and methods. The $security class provides all the necessary security methods and handles the security of the file system, where users can run only files for which they have appropriate permissions. With the $core class, which contains methods for handling core processing, programmers can set all the general system functions. The $template class governs template outputs. Also there are separate classes for email, file management, time zones and more. For additional information on the objects, all their options and usage, you can check the API documentation of PHPDevShell at http://doc.phpdevshell.org/.

As an example, we will create a simple form that submits email/subject/message to a MySQL database and sends an email with these details.

First, we need to create the MySQL table that will be used. It can be done by executing the following query through phpMyAdmin or directly on a MySQL shell:

CREATE TABLE `emails` (
`id` int(11) NOT NULL auto_increment,
`email` varchar(100) NOT NULL,
`subject` varchar(100) NOT NULL,
`data` varchar(100) NOT NULL,
PRIMARY KEY  (`id`)
);

Since the form will be only one page, we will create a new menu as a plugin item. The file needs to be placed in the /plugins/NEW_DIRECTORY/ourfile.php, where NEW_DIRECTORY is a directory of our choice as is ‘ourfile’. The contents will be as follows:

<?php
// We want to load this method so that it can make our security checks
(is_object($security)) ? $security->load_security() : exit('Access Denied!');

//This is an example usage of the $template object.
$template->heading(__('My Example Form'));
$template->info(__('This is a simple example form that submits data to a database and sends an email.'));

//Check if the form has been posted
if($_POST['email']) {
//Prepare the MySQL query to be executed
$query="INSERT INTO emails(email, subject, data) VALUES ('{$_POST['email']}','{$_POST['subject']}','{$_POST['data']}')";

//Use the $db object to execute the query
$db->new_query($query);

            //Use the email object to send the mail
$email = new email();
$email->sendmail($_POST['email'],$_POST['subject'],$_POST['data']);

            //Use the $template class to display confirmation message
$template->ok(__('The Form was successfully submited and the email sent.'));
}

// Define the HTML code that will be displayed. The PHPDevShell does not require template files.
$HTML = <<<HTML
<tr>
<td>
<form action="" method="POST">
To:<br>
<input type="text" name="email"><br>
Subject:<br>
<input type="text" name="subject"><br>
Message:<br>
<input type="text" name="data"><br>
<input type="submit" value="Submit and Send">
</form>
</td>
</tr>
HTML;

?>

The actual menu has to be created through the administration menu of PHPDevShell:
System Control -> Menu Admin -> New Menu
The fields that we will fill are:
Menu Name: Our Form
Plugin Item: This should be checked
Custom Plugin Name: NEW_DIRECTORY
URL/Path Location: ourfile.php

Now we can go to the Front Page and we will have a menu with a fully operational form that submits data to a database and sends email.

A unique PHP framework - Conclusion

PHPDevShell is a unique framework meaning that you can start working on your application right away. It has the ability to have other frameworks plugged into it and offers:

  • End-user system (advanced registration, login, logs, profile management)
  • Advanced administration system
  • Cronjob system
  • Templating system
  • Unlimited level security system
  • Plugin system
  • Logs system
  • Notice objects
  • Search engine
  • Help engine
  • WYSIWYG editor
  • Menu system

Resources: