PHP Classes

PHP ASP.NET WebForms: Emulation of ASP.NET WebForms engine in PHP

Recommend this page to a friend!
     
  Info   Example   View files Files   Install with Composer Install with Composer   Download Download   Reputation   Support forum   Blog    
Ratings Unique User Downloads Download Rankings
Not yet rated by the usersTotal: 109 All time: 9,658 This week: 206Up
Version License PHP version Categories
webforms 3.3Custom (specified...5.3HTML, PHP 5, Libraries, Templates
Description 

Author

This package implements an emulation of ASP.NET WebForms engine in PHP.

It provides a set of controls that implement tags used by ASP.NET WebForms templates.

The package can process and render the templates and generate HTML with JavaScript to perform client side validation of forms.

On the server side the package can raise events that can be handled by custom PHP classes.

Innovation Award
PHP Programming Innovation award nominee
November 2015
Number 13


Prize: PHP Tools for Visual Studio Personal license
ASP.NET WebForms is a platform for creating Web sites based on the .NET framework.

This package provides a PHP implementation that emulates ASP.NET WebForms.

Manuel Lemos
Picture of Aleksey Nemiro
  Performance   Level  
Name: Aleksey Nemiro <contact>
Classes: 6 packages by
Country: Russian Federation Russian Federation
Age: 40
All time rank: 201458 in Russian Federation Russian Federation
Week rank: 187 Up13 in Russian Federation Russian Federation Up
Innovation award
Innovation award
Nominee: 3x

Winner: 1x

Example

<?#Page Layout="~/Layouts/_LayoutNoContainer.php" Culture="ru"?>
<?
#Register Src="~/Controls/Message.php" TagPrefix="php" TagName="Message"?>

<html xmlns:php="http://aleksey.nemiro.ru/php-webforms">
    <body>

        <php:Content ID="MainContent">
            <div class="jumbotron text-center" style="padding-top:72px;">
                <h1 class="text-center"><span class="glyphicon glyphicon-tent" style="font-size: 128px;"></span></h1>
                <p>${Brief}</p>
                <p><a class="btn btn-download btn-lg"style="font-size:32px;" href="${DownloadUrl}">${Download} v3.1</a></p>
            </div>

            <div class="container">
                <div class="row">
                    <div class="col-md-4">${WhatItIs}</div>
                    <div class="col-md-4">${WhyIsNotCompleted}</div>
                    <div class="col-md-4">${CanIUseItOrNot}</div>
                </div>

                ${Features}

                <hr />
                <h2>${Schema}</h2>
                <p><a href="/Content/images/formula.jpg" target="_blank"><img src="/Content/images/formula.jpg" alt="${Formula}" title="" class="img-thumbnail" /></a></p>
            </div>

            <div id="GettingStarted" class="jumbotron">
                <div class="container">
                <h2>${GettingStarted}</h2>
                <hr />
                <p id="1"><span class="step-num">1</span> ${Step1}</p>
                <p id="2"><span class="step-num">2</span> ${Step2}</p>
                <p>${Step22}</p>
                <pre><code class="php">&lt;?php
# ${PAGE_DEFAULT_CACHE}
define('PAGE_DEFAULT_CACHE', false);
# ${PAGE_COMPRESS_HTML}
define('PAGE_COMPRESS_HTML', false);
# ${DEBUG_MODE}
define('DEBUG_MODE', true);
# ${MAIN_PATH}
define('MAIN_PATH', $_SERVER['DOCUMENT_ROOT']);
# ${PAGE_DEFAULT_TEMPLATE}
define('PAGE_DEFAULT_TEMPLATE', '~/Layouts/_Layout.php');
# ${PAGE_DEFAULT_TITLE}
define('PAGE_DEFAULT_TITLE', '${PAGE_DEFAULT_TITLE2}');
# ${PAGE_DEFAULT_ENCODE}
define('PAGE_DEFAULT_ENCODE', 'utf-8');
# ${META}
define('META_DESCRIPTION', '${META_DESCRIPTION}');
define('META_KEYWORDS', '${META_KEYWORDS}');
define('META_AUTHOR', '${META_AUTHOR}');
define('META_URL', 'http://example.org');
define('META_ROBOTS', 'ALL');
?&gt;</code></pre>

                <p id="3"><span class="step-num">3</span> ${Step3}</p>
                <p>${Step32}</p>
                <pre><code class="html">&lt;!DOCTYPE html&gt;
&lt;html xmlns:php="http://aleksey.nemiro.ru/php-webforms"&gt;
  &lt;head&gt;
    &lt;title&gt;&lt;/title&gt;
    &lt;meta name="viewport" content="width=device-width" /&gt;
    &lt;link rel="stylesheet" href="/Content/css/bootstrap.min.css" /&gt;
    &lt;script src="/Scripts/jquery-1.11.1.min.js" type="text/javascript"&gt;&lt;/script&gt;
    &lt;script src="/Scripts/bootstrap.min.js" type="text/javascript"&gt;&lt;/script&gt;
    &lt;php:Head/&gt;
  &lt;/head&gt;
  &lt;body&gt;
    &lt;div class="container"&gt;
      &lt;php:MainContent/&gt;
    &lt;/div&gt;
  &lt;/body&gt;
&lt;/html&gt;</code></pre>

                <p id="4"><span class="step-num">4</span> ${Step4}</p>
                <pre><code class="html">&lt;php:Content ID="Head"&gt;
  &lt;script src="/Scripts/jquery-1.11.1.min.js"&gt;&lt;/script&gt;
&lt;/php:Content&gt;

&lt;php:Content ID="MainContent"&gt;
  &lt;h2&gt;${HelloWorld}&lt;/h2&gt;
&lt;/php:Content&gt;

&lt;?php
require_once 'global.php';
Nemiro\App::Magic();
?&gt;</code></pre>

                    <p id="5"><span class="step-num">5</span> ${Step5}</p>
                </div>
            </div>

            <div class="container">
                <div class="row site-sections">
                    <div class="col-xs-6 col-sm-4 col-md-4 col-lg-2 text-center">
                        <a href="/templates.php${Lang}" class="btn btn-default">
                            <span class="glyphicon glyphicon-picture"></span><br />
                            ${Templates}
                        </a>
                    </div>
                    <div class="col-xs-6 col-sm-4 col-md-4 col-lg-2 text-center">
                        <a href="/pages.php${Lang}" class="btn btn-default">
                            <span class="glyphicon glyphicon-file"></span><br />
                            ${Pages}
                        </a>
                    </div>
                    <div class="col-xs-6 col-sm-4 col-md-4 col-lg-2 text-center">
                        <a href="/controls.php${Lang}" class="btn btn-default">
                            <span class="glyphicon glyphicon-cog"></span><br />
                            ${UserControls}
                        </a>
                    </div>
                    <div class="col-xs-6 col-sm-4 col-md-4 col-lg-2 text-center">
                        <a href="/elements.php${Lang}" class="btn btn-default">
                            <span class="glyphicon glyphicon-list-alt"></span><br />
                            ${HTMLControls}
                        </a>
                    </div>
                    <div class="col-xs-6 col-sm-4 col-md-4 col-lg-2 text-center">
                        <a href="/localization.php${Lang}" class="btn btn-default">
                            <span class="glyphicon glyphicon-globe"></span><br />
                            ${Localization}
                        </a>
                    </div>
                    <div class="col-xs-6 col-sm-4 col-md-4 col-lg-2 text-center">
                        <a href="/debug.php${Lang}" class="btn btn-default">
                            <span class="glyphicon glyphicon-wrench"></span><br />
                            ${Debug}
                        </a>
                    </div>
                </div>
            </div>
        </php:Content>

    </body>
</html>


Details

WebForms.PHP Latest Stable Version Total Downloads License

This project is an attempt embodiment ASP.NET WebForms in PHP.

Today WebForms.PHP - this template engine, HTML components and the beginnings of Framework for web sites creation in PHP.

Code licensed under Apache License Version 2.0.

Demo-site and Documentation

Features

  • Template engine;
  • Code Separation;
  • HTML Compression;
  • Generation of standard controls with saving the state of the elements after the form is submitted (TextBox, CheckBox, RadioButton, DropDownList etc.);
  • User controls with the ability to place them in the markup;
  • Support for application-level, pages- and usercontrols- events.;
  • Localization;
  • Classes for working with collections;
  • Methods of word processing;
  • Classes for MySql and PostgreSQL (optional);
  • Server implementation console.

formula

Requirements

  • PHP 5 >= 5.3.

  Files folder image Files (89)  
File Role Description
Files folder imageContent (3 directories)
Files folder imageControls (9 files)
Files folder imageLayouts (4 files)
Files folder imageNemiro (6 files, 2 directories)
Files folder imageScripts (7 files)
Accessible without login Plain text file composer.json Data Auxiliary data
Accessible without login Plain text file config.php Conf. Configuration script
Accessible without login Plain text file controls.html.php Example Example script
Accessible without login Plain text file controls.json Doc. Documentation
Accessible without login Plain text file controls.php Example Example script
Accessible without login Plain text file controls.ru.json Doc. Documentation
Accessible without login Plain text file debug.html.php Example Example script
Accessible without login Plain text file debug.json Doc. Documentation
Accessible without login Plain text file debug.php Example Example script
Accessible without login Plain text file debug.ru.json Doc. Documentation
Accessible without login Plain text file elements.html.php Example Example script
Accessible without login Plain text file elements.json Doc. Documentation
Accessible without login Plain text file elements.php Example Example script
Accessible without login Plain text file elements.ru.json Doc. Documentation
Accessible without login Plain text file global.json Doc. Documentation
Accessible without login Plain text file global.php Example Example script
Accessible without login Plain text file global.ru.json Doc. Documentation
Accessible without login Plain text file index.html.php Example Example script
Accessible without login Plain text file index.json Doc. Documentation
Accessible without login Plain text file index.php Example Example script
Accessible without login Plain text file index.ru.json Doc. Documentation
Accessible without login Plain text file LICENSE Lic. License text
Accessible without login Plain text file localization.html.php Example Example script
Accessible without login Plain text file localization.json Doc. Documentation
Accessible without login Plain text file localization.php Example Example script
Accessible without login Plain text file localization.ru.json Doc. Documentation
Accessible without login Plain text file Nemiro.WebForms.PHP.phpproj Data Auxiliary data
Accessible without login Plain text file Nemiro.WebForms.PHP.phpproj.user Data Auxiliary data
Accessible without login Plain text file Nemiro.WebForms.PHP.sln Data Auxiliary data
Accessible without login Plain text file pages.html.php Example Example script
Accessible without login Plain text file pages.json Doc. Documentation
Accessible without login Plain text file pages.php Example Example script
Accessible without login Plain text file pages.ru.json Doc. Documentation
Accessible without login Plain text file README.md Doc. Documentation
Accessible without login Plain text file simple.json Doc. Documentation
Accessible without login Plain text file simple.php Example Example script
Accessible without login Plain text file simple.ru.json Doc. Documentation
Accessible without login Plain text file templates.html.php Example Example script
Accessible without login Plain text file templates.json Doc. Documentation
Accessible without login Plain text file templates.php Example Example script
Accessible without login Plain text file templates.ru.json Doc. Documentation

  Files folder image Files (89)  /  Content  
File Role Description
Files folder imagecss (6 files)
Files folder imagefonts (1 file)
Files folder imageimages (7 files)

  Files folder image Files (89)  /  Content  /  css  
File Role Description
  Accessible without login Plain text file bootstrap-theme.css Data Auxiliary data
  Accessible without login Plain text file bootstrap.css Data Auxiliary data
  Accessible without login Plain text file compiled.css.bundle Data Auxiliary data
  Accessible without login Plain text file compiled.min.css Data Auxiliary data
  Accessible without login Plain text file default.css Data Auxiliary data
  Accessible without login Plain text file home.css Data Auxiliary data

  Files folder image Files (89)  /  Content  /  fonts  
File Role Description
  Accessible without login Plain text file glyphicons-halflings-regular.svg Data Auxiliary data

  Files folder image Files (89)  /  Content  /  images  
File Role Description
  Accessible without login Image file console.png Data Auxiliary data
  Accessible without login Image file en.png Icon Icon image
  Accessible without login Image file fileNesting.png Data Auxiliary data
  Accessible without login Image file fileNestingResult.png Icon Icon image
  Accessible without login Image file formula.jpg Data Auxiliary data
  Accessible without login Image file how.png Data Auxiliary data
  Accessible without login Image file ru.png Icon Icon image

  Files folder image Files (89)  /  Controls  
File Role Description
  Accessible without login Plain text file Footer.php Aux. Example script
  Accessible without login Plain text file Header.html.php Aux. Example script
  Plain text file Header.php Class Example script
  Accessible without login Plain text file Message.html.php Aux. Example script
  Plain text file Message.php Class Example script
  Accessible without login Plain text file Panel.php Aux. Example script
  Accessible without login Plain text file TabControl.html.php Aux. Example script
  Plain text file TabControl.php Class Example script
  Plain text file TabItem.php Class Example script

  Files folder image Files (89)  /  Layouts  
File Role Description
  Accessible without login Plain text file Popup.php Data Example script
  Accessible without login Plain text file RightMenu.php Data Example script
  Accessible without login Plain text file _Layout.php Data Example script
  Accessible without login Plain text file _LayoutNoContainer.php Data Example script

  Files folder image Files (89)  /  Nemiro  
File Role Description
Files folder imageCollections (4 files)
Files folder imageUI (4 files)
  Plain text file App.php Class The main class of web application.
  Accessible without login Plain text file config.sample.php Conf. The sample of main config file.
  Plain text file Console.php Class Console.
  Accessible without login Plain text file global.sample.php Conf. The sample of main file for web site.
  Plain text file Server.php Class Server tools.
  Plain text file Text.php Class Text helpers.

  Files folder image Files (89)  /  Nemiro  /  Collections  
File Role Description
  Plain text file Collection.php Class Class source
  Accessible without login Plain text file Import.php Conf. Configuration script
  Plain text file NameValueCollection.php Class Class source
  Plain text file StringValue.php Class Class source

  Files folder image Files (89)  /  Nemiro  /  UI  
File Role Description
  Plain text file Control.php Class Base class for user controls.
  Plain text file Html.php Class Html helper.
  Accessible without login Plain text file Import.php Conf. Configuration script
  Plain text file Page.php Class Base class for pages.

  Files folder image Files (89)  /  Scripts  
File Role Description
  Accessible without login Plain text file bootstrap.min.js Data Auxiliary data
  Accessible without login Plain text file compiled.js Data Auxiliary data
  Accessible without login Plain text file compiled.js.bundle Data Auxiliary data
  Accessible without login Plain text file compiled.min.js Data Auxiliary data
  Accessible without login Plain text file compiled.min.js.map Data Auxiliary data
  Accessible without login Plain text file highlight.pack.js Data Auxiliary data
  Accessible without login Plain text file jquery-1.11.1.min.js Data Auxiliary data

The PHP Classes site has supported package installation using the Composer tool since 2013, as you may verify by reading this instructions page.
Install with Composer Install with Composer
 Version Control Unique User Downloads Download Rankings  
 100%
Total:109
This week:0
All time:9,658
This week:206Up