dtvpl739577 2017-01-25 10:28
浏览 62

使用php中的MVC结构进行表单验证

I have created valid() and insert() function but I don't know how to check form is valid or not.i want to call insert() function only after validation check. i removed my basic html form code.
view.php

<?php
include('../controller/control.php');
if(isset($_REQUEST['submit']))
{
    $u = $_REQUEST['fname'];
    $p = $_REQUEST['lname'];
    $i = $_FILES['pic']['name'];
    $g = $_REQUEST['gender'];
    $c = $_REQUEST['country'];
    $s = $_REQUEST['state'];
    $ci = $_REQUEST['city'];
    $z = $_REQUEST['zipcode'];
    $cno = $_REQUEST['cno'];    
    $h = $_REQUEST['hobby'];
    $chk="";  
    if($h)
    {   
        foreach($h as $chk1)  
        {  
            $chk .= $chk1.",";  
        }
    }       
    $a = $_REQUEST['address'];
    $pdf =  $_FILES['pdf']['name']; 
    move_uploaded_file($_FILES['pic']['tmp_name'],"upload/".$_FILES['pic']['name']);
    move_uploaded_file($_FILES['pdf']['tmp_name'],"upload/".$_FILES['pdf']['name']);    
    $obj = new control();
    $obj->validate($u,$p,$i,$c,$s,$ci,$z,$cno,$a,$pdf); 
    $obj->insert($u,$p,$i,$g,$c,$s,$ci,$z,$cno,$chk,$a,$pdf);
    header("location:form.php");
}
?>

Controll.php

<?php
include('../model/model.php');
class control
{
    public function validate($u,$p,$i,$c,$s,$ci,$z,$cno,$a,$pdf)
    {
        $obj = new model();
        $obj->validate($u,$p,$i,$c,$s,$ci,$z,$cno,$a,$pdf);
    }
    public function insert($u,$p,$i,$g,$c,$s,$ci,$z,$cno,$chk,$a,$pdf)
    {
        $obj = new model();
        $obj->insert($u,$p,$i,$g,$c,$s,$ci,$z,$cno,$chk,$a,$pdf);
    }   
}

?>

model.php

<?php

class model
{   

    public function validate($u,$p,$i,$c,$s,$ci,$z,$cno,$a,$pdf)
    {
        if(empty($u))
        {
            echo "<script>alert('Please enter Username')</script>";
        }
        else if(empty($p))
        {
            echo "<script>alert('Please enter password')</script>";
        }

    }
    public function model()
    {
        $mysqli = new mysqli("localhost", "root", "", "php_mvc");

    }
    public function insert($u,$p,$i,$g,$c,$s,$ci,$z,$cno,$chk,$a,$pdf)
    {
        $mysqli = new mysqli("localhost", "root", "", "php_mvc");
        $mysqli->query("INSERT INTO `php_mvc`.`form` (`fname`, `lname`, `pic`, `gender`, `country`, `state`, `city`, `zipcode`, `cno`, `hobby`, `address`, `pdf`) VALUES ('$u', '$p', '$i', '$g', '$c', '$s', '$ci', '$z', '$cno', '$chk', '$a', '$pdf');");

        if($mysqli)
        {
            echo "<script>alert('Inserted Successfully')</script>";
        }
            header("location:form.php");

    }

}

?>
  • 写回答

1条回答 默认 最新

  • douchuang1861 2017-01-25 10:43
    关注

    View.php

    <?php
    include('../controller/control.php');
    if(isset($_REQUEST['submit']))
    {
        $u = $_REQUEST['fname'];
        $p = $_REQUEST['lname'];
        $i = $_FILES['pic']['name'];
        $g = $_REQUEST['gender'];
        $c = $_REQUEST['country'];
        $s = $_REQUEST['state'];
        $ci = $_REQUEST['city'];
        $z = $_REQUEST['zipcode'];
        $cno = $_REQUEST['cno'];    
        $h = $_REQUEST['hobby'];
        $chk="";  
        if($h)
        {   
            foreach($h as $chk1)  
            {  
                $chk .= $chk1.",";  
            }
        }       
        $a = $_REQUEST['address'];
        $pdf =  $_FILES['pdf']['name']; 
        move_uploaded_file($_FILES['pic']['tmp_name'],"upload/".$_FILES['pic']['name']);
        move_uploaded_file($_FILES['pdf']['tmp_name'],"upload/".$_FILES['pdf']['name']);    
        $obj = new control();
    
        if($obj->validate($u,$p,$i,$c,$s,$ci,$z,$cno,$a,$pdf)){ 
        $obj->insert($u,$p,$i,$g,$c,$s,$ci,$z,$cno,$chk,$a,$pdf);
        }
        header("location:form.php");
    }
    ?>
    

    Controll.php

    <?php
    include('../model/model.php');
    class control
    {
        public function validate($u,$p,$i,$c,$s,$ci,$z,$cno,$a,$pdf)
        {
            $obj = new model();
            return $obj->validate($u,$p,$i,$c,$s,$ci,$z,$cno,$a,$pdf);
        }
        public function insert($u,$p,$i,$g,$c,$s,$ci,$z,$cno,$chk,$a,$pdf)
        {
            $obj = new model();
            $obj->insert($u,$p,$i,$g,$c,$s,$ci,$z,$cno,$chk,$a,$pdf);
        }   
    }
    
    ?>
    

    model.php

    <?php
    
    class model
    {   
    
        public function validate($u,$p,$i,$c,$s,$ci,$z,$cno,$a,$pdf)
        {
            if(empty($u))
            {
                echo "<script>alert('Please enter Username')</script>";
                return false;
            }
            else if(empty($p))
            {
                echo "<script>alert('Please enter password')</script>";
                return false;
            }
            return true;
        }
        public function model()
        {
            $mysqli = new mysqli("localhost", "root", "", "php_mvc");
    
        }
        public function insert($u,$p,$i,$g,$c,$s,$ci,$z,$cno,$chk,$a,$pdf)
        {
            $mysqli = new mysqli("localhost", "root", "", "php_mvc");
            $mysqli->query("INSERT INTO `php_mvc`.`form` (`fname`, `lname`, `pic`, `gender`, `country`, `state`, `city`, `zipcode`, `cno`, `hobby`, `address`, `pdf`) VALUES ('$u', '$p', '$i', '$g', '$c', '$s', '$ci', '$z', '$cno', '$chk', '$a', '$pdf');");
    
            if($mysqli)
            {
                echo "<script>alert('Inserted Successfully')</script>";
            }
                header("location:form.php");
    
        }
    
    }
    
    ?>
    
    评论

报告相同问题?

悬赏问题

  • ¥15 微信会员卡接入微信支付商户号收款
  • ¥15 如何获取烟草零售终端数据
  • ¥15 数学建模招标中位数问题
  • ¥15 phython路径名过长报错 不知道什么问题
  • ¥15 深度学习中模型转换该怎么实现
  • ¥15 HLs设计手写数字识别程序编译通不过
  • ¥15 Stata外部命令安装问题求帮助!
  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
  • ¥15 TYPCE母转母,插入认方向
  • ¥15 如何用python向钉钉机器人发送可以放大的图片?