使用mvc,php,pdo更新列表中选定行的记录

时间:2016-09-21 06:58:10

标签: php html pdo

嗨大家请协助以下代码, 我想使用MVC更新选定的记录,MVC不包括模型中的视图对象声明。

-my代码列表成员。 - 允许单击编辑选择的记录。 - 根据字段对用户进行验证... 否则我称之为更新方法。

单击更新后

我没有更新。请帮助我找到一份工作,但我不能更新,我可能会被解雇。请。

Controller - Index.php

<?php 
require('db/ABSA/conn.php'); 
require('model.php'); 

$conn = new Connect_to_db();
$conn->Connect_db();

$m = new model();

if (isset($_POST['action'])) { 
$action = $_POST['action']; 
} else if (isset($_GET['action'])) {
$action = $_GET['action']; } else {
$action = 'view_members'; 
 $members = $m->getDetails(); 
 include('view_members.php');
}
if ($action == 'update_members') { 

global $member_id;
$member_id= $_GET['member_id'];// Get the current  ID 
$members = $m->getDetails_member($member_id);
//var_dump($members);
//var_dump($member_id);

$fname = $_POST['First_Name'];
$id_num = $_POST['ID_Number'];
$checkdate = $_POST['Checked_Date'];
$checked_by = $_POST['Checked_by'];

if(empty($fname)){
echo "Please enter fname!";include('update_members.php');exit;
header('Refresh: 3; url=index.php');

}else
if(empty($id_num)){
echo "Please enter id_num";include('update_members.php');exit;
header('Refresh: 3; url=index.php');

}
if(empty($checkdate)){
echo "Please enter checkdate!";include('update_members.php');exit;
header('Refresh: 3; url=index.php');

}else
if(empty($checked_by)){
echo "Please enter checked_by";include('update_members.php');exit;


}
else{

$member_i= $_GET['member_id'];

$m->update_members($member_i,$fname,$id_num,$checkdate,$checked_by);
header('Refresh: 4; url=index.php');
}   
}

 ?>

以下是我的观点:

<!DOCTYPE html> 
<html>
<head>
<meta content="width=device-width, minimum-scale=1, maximum-scale=1" name="viewport">
<title>Update and view </title><link rel='stylesheet' href='https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css' integrity='sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u' crossorigin='anonymous'>
</head>
</head>
     <div class="container">
      </br>
            <table class="table table-hover">
                <tr>
                <th>Member ID   </th>
                <th>First Name </th>
                <th> ID Number </th>
                <th>Checked Date </th>
                <th>Checked by</th>         
                    </tr>         
                   <?php    foreach($members as $row):                      
                            echo "
                                 <td>$row[m_id]</td>
                                 <td>$row[First_Name]</td>
                                 <td>$row[ID_Number]</td>
                                 <td>$row[Checked_Date]</td>
                                 <td>$row[Checked_by]</td>                           
                                 ";                         
                            ?>      
                        <td>
                                &nbsp;&nbsp;
                                <form method='GET' action='index.php' >                                                       
                            <input type ="hidden" name="action" value="update_members" /> 
                            <input type ="hidden" name="member_id" value="<?php echo $row['m_id']; ?>" />
                            <input type = "submit" value="Edit">

                            </form>
                                </td>

                           </tr>
                           <?php endforeach;?>


            </table>

</div>
</body>
</html>

这是我的模特:

<?php
error_reporting(E_ALL & ~E_NOTICE);
    /*
Author name         : Neo Lloyd Sono
Occupation          : Junior web developer@PLP Group 
Programme name      : Update and view leads members 
date                : 2016-09-09
place               : PLP Group, 10 hunter ...

*/
        //query, prepare, execute, and fetch,       


class model{

        function getDetails(){

            global $pdo;//globalize connection      
            $tbl_name = "leads";//use var for table
            $stm  =  $pdo->prepare("select * from $tbl_name");
            $stm->execute();

            while($row[] = $stm->fetch()){
            $i++;                       
            $row[$i] = $stm->fetch();
            }
            return $row;
        }
        public static function getDetails_member($id){

            global $pdo;//globalize connection      
            $tbl_name = "leads";//use var for table

            $stm  =  $pdo->prepare("select * from $tbl_name where m_id= :m_id limit 10 ");
            $stm->bindParam(':m_id',$id);
            $stm->execute();
            $row = $stm->fetch();
            return $row;
        }
         function update_members($id,$fname,$id_num,$checkdate,$checked_by){


            global $pdo;//globalize connection
            $tbl_name = "leads";//use var for table

            //$arr = array(":First_Name"=>$fname,":ID_"=>$id_num,":Checked_D"=>$checkdate,":checked_b"=>$checked_by,":id"=>$id);

            $stm  =  $pdo->prepare("update `leads` set `First_Name`     ='$fname',
                                                     `ID_Number`        ='$id_num',
                                                     `Checked_Date`     ='$checkdate',
                                                     `Checked_by`       ='$checked_by'
                                                     where `m_id`   ='$id'");

            $stm->bindParam(':id',$id,PDO::PARAM_INT);                                       
            $stm->bindParam(':First',$fname,PDO::PARAM_STR, 12);
            $stm->bindParam(':ID_',$id_num,PDO::PARAM_STR, 12);
            $stm->bindParam(':Checked_D',$checkdate);
            $stm->bindParam(':Checked_b',$checked_by,PDO::PARAM_STR, 12);

            $stm->execute();

            if($stm){
                echo "Updated ";
            }else{
            echo "Not Updated ";

            }
            var_dump($member_id);
            var_dump($stm);
            return $stm;
        }
}
    ?>

这是我的更新记录视图:

<!DOCTYPE html> 
<html>
<head>
<meta content="width=device-width, minimum-scale=1, maximum-scale=1" name="viewport">
<title>Update and view </title>
     <div class="container">
      </br>
            <table class='table table-hover'>
                <tr>
                <th>Member ID   </th>
                <th>First Name </th>
                <th> ID Number </th>
                <th>Checked Date </th>
                <th>Checked by</th>         
                    </tr>       
                   <?php    

                   //var_dump($members);

                            ?>  <form method='post' action='.' ><td style = "color:white">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td>                      
                                 <td><input type = 'text' value="<?php  echo $members['First_Name']; ?>"        name='First_Name'/></td>
                                 <td><input type = 'text' value="<?php echo $members['ID_Number'];  ?>"     name='ID_Number'/></td>
                                 <td><input type = 'text' value="<?php echo $members['Checked_Date']; ?>"   name='Checked_Date'/></td>
                                 <td><input type = 'text' value="<?php echo $members['Checked_by']; ?>"     name='Checked_by'/></td>                                

                            <tr><td>                


                            <input type="hidden" name="action" value="update_members" /> 
                            <input type="hidden" name="member_id" value="<?php echo $members['m_id']; ?>" />
                            <input type = 'submit' name="u" value='Update' />
                            </td>
                            </form>
                           </tr>


            </table>
     </form>   
</div>
</body>
</html>

0 个答案:

没有答案