Home  >  Article  >  Backend Development  >  PHP simulates asp.net webFrom button submission event instance, asp.netwebfrom_PHP tutorial

PHP simulates asp.net webFrom button submission event instance, asp.netwebfrom_PHP tutorial

WBOY
WBOYOriginal
2016-07-13 10:17:18866browse

php simulates asp.net webFrom button submission event instance, asp.netwebfrom

Since the company needs project development in PHP, and I have just started using PHP, in the process of writing button submission, the button event in asp.net is better. First look at the code below,

<&#63;
require_once '../inc/EventHelper.php';

function Page_Load()
{
echo '在任何时候都会运行<br>';

if(!Page::IsPostBack())
{
echo '加载产品分类<br>';
if($_GET['cmd']=='edit') 
{
echo '修改加载需要修改的产品信息<br>';
}
}
}

function bAdd_Click()
{
//Comm::CheckQX('产品管理_添加');
echo "bAdd_Click<br>";
}

function bEdit_Click()
{
//Comm::CheckQX('产品管理_修改');
echo 'proID='.$_GET['proID'].'<br>';
echo "bEdit_Click<br>";
}

function sdfsdfdsf_Click()
{
echo "e44444444444444444444<br>";
}

&#63;>
<form name="aa" method="post" action="&#63;<&#63;=Comm::GetParam()&#63;>">
<input type="submit" name="bAdd" value="添加" />
<input type="submit" name="bedit" value="修改" />
<input type="submit" name="sdfsdfdsf" value="ewrewrewr" />
</form>

Those who have done asp.net development should be familiar with the above code, such as: Page_Load, Page.IsPostback, bAdd_Click, these are very similar to asp.net events.

The above code runs the bAdd_Click function (let’s call it that, function seems to mean function) when the [Add] button is clicked. Similarly, the bEdit_Click event is automatically run when the [Modify] button is clicked. There is no need for too many parameter changes or too many files. If the page function is not very complex, this mode can be used for rapid development.

Let’s take a look at the code of the EventHelper.php file:

<&#63;
class Page
{
//是否回发数据,1:是
public static function IsPostBack()
{
global $SYSRunEventName;
return !empty($SYSRunEventName);
}

//加载并执行事件
function EventLoad()
{
global $SYSRunEventName;

$arrEvent=get_defined_functions();
$arrEventUser=$arrEvent['user'];

$arr=array_keys($_POST);
foreach($arr as $row)
{
$name=strtolower($row);
foreach($arrEventUser as $row1)
{
$name1=str_ireplace('_click','',$row1);
if($name==$name1)
{
$SYSRunEventName=$row1;
break;
}
}

if(!empty($SYSRunEventName))
{
break; 
}
}

if(function_exists('Page_Load')) 
Page_Load();

$SYSRunEventRunName=strtolower($SYSRunEventName);

if(Page::IsPostBack())
{
$SYSRunEventName();
}
}
}

class Comm
{
public static function GetParam($params=array(),$cmd='addoverride')
{
$allParam=array();

if($cmd=='addoverride')
{
$arrKeys=array_keys($params);
foreach($arrKeys as $row)
{
if(!in_array($row,array_keys($allParam))) 
$allParam[$row]=$params[$row];
}
}
else if($cmd=='del')
{
foreach($params as $row)
{
unset($_GET[$row]); 
}
}


$arrKeys=array_keys($_GET);
foreach($arrKeys as $row)
{
if(!in_array($row,array_keys($allParam)))
$allParam[$row]=$_GET[$row];
}

$p='';
$arrKeys=array_keys($allParam);
foreach($arrKeys as $row)
{
$p.=$row.'='.$allParam[$row].'&';
}
return rtrim($p,'&');
}
}

Page::EventLoad();
&#63;>

You can test the above functions. It can run successfully in my php5.4, but I haven’t thought too much about security. I have read some articles that it is possible for php to execute php code through the client, because php is very practical. functional characteristics.

Regarding Comm::GetParam, since we often need to obtain the parameters in the get method or modify the parameters, for example, we need to retain all url parameters during paging and only modify the paging parameters (such as page=5), so I wrote some code by myself.

Mainly utilize the following features of php:

function_exists
get_defined_functions

And use common form submission principles and submit submission principles to implement functions.

Due to time constraints, I didn’t have time to explain the specific principles. Please forgive me. Everyone can understand the code.

aspnet validation control example, what I want to know more is what is the event code of the submit button of the form?

How to trigger the text of the validation control? If the verification fails, an error message will be displayed like this. There should be various verification methods inside, such as regular expressions and the like.

How to call the click event of one button in the click event of another button in ASPnet? Beginners, you know,

Method 1: Directly specify the event
89b5bdaab29276b83921f68da2cd2d86df250b2156c434f3390392d09b1c9563df250b2156c434f3390392d09b1c9563df250b2156c434f3390392d09b1c9563
683263cb3b8e8b2650c48759becd76a4

Method 2: Add
protected void Page_Load(object sender, EventArgs e)
{
Button btn;
btn= new Button();
btn.ID = "btn1";
btn .Text = "Button 1";
this.form1.Controls.Add(btn);
btn.Click += new EventHandler(btn1_Click);

btn = new Button();
btn.ID = "btn2";
btn.Text = "Button 2";
this.form1.Controls.Add(btn);
btn.Click += new EventHandler(btn1_Click);
}

protected void btn1_Click(object sender, EventArgs e)
{
Page.ClientScript.RegisterStartupScript(Page.GetType(), "", "336744f88ff70d21eadd31096efc62bdalert('Button event clicked');2cacc6d41bbb37262a98f745aa00fbf0");
}

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/893424.htmlTechArticlephp simulates asp.net webFrom button submission event instance, asp.netwebfrom Since the company needs PHP project development, php I just got started. In the process of writing button submission, the button thing in asp.net...
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn