【php】3、学生管理系统-查看用户
<?php include_once 'stuService.class.php'; session_start(); $name = $_SESSION['student_name']; if($name == "") { header("Location: stu_login.php?error=1"); exit(); } $pagesize = 20; $pagenow = 1; $pagecount = 0; $service = new stuservice(); $pagecount = $service->getpagecount($pagesize); if(!empty($_GET['pagenow'])) { $pagenow=$_GET['pagenow']; } $stulist = $service->getstulist($pagesize, $pagenow); ?> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>学生成绩管理系统</title>
stuservice类
<?php //这个是对数据库中表student的操作 include_once 'mysql.class.php'; include_once 'student.class.php'; include_once 'confing.php'; class stuservice { //根据用户名和密码,查看个数 public function checkstunum($name, $password) { $mysql = new mysql(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME); $num=0; $sql = "select count(*) from student where stu_name = '".$name."' and stu_password = '".$password."'"; //执行命令 $res = $mysql->execute_dql($sql); $row=mysqli_fetch_row($res); if($row) { $num=$row[0]; } mysqli_free_result($res); $mysql->close_connect(); return $num; } //根据每页的大小,和当前的页面查询出所有的学生 public function getstulist($pagesize,$pagenow) { $mysql = new mysql(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME); $sql="select * from student limit ".($pagenow-1)*$pagesize.",$pagesize"; $res=$mysql->execute_dql($sql); $arr=array(); $i=0; while($row = mysqli_fetch_assoc($res)) { $arr[$i++]=$row; } mysqli_free_result($res); $mysql->close_connect(); return $arr; } //得到总页数 public function getpagecount($pagesize) { $mysql = new mysql(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME); $sql="select count(stu_id) from student"; $res=$mysql->execute_dql($sql); $i=0; $row = mysqli_fetch_row($res); if($row) { $rowcount=$row[0]; } $pagecount=ceil($rowcount/$pagesize); //返回不小于 value 的下一个整数,value 如果有小数部分则进一位。 mysqli_free_result($res); $mysql->close_connect(); return $pagecount; } //根据学生姓名得到相应数据 public function getstu($name) { $stu = new student(); $mysql = new mysql(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME); $sql="select * from student where stu_name='".$name."'"; $res=$mysql->execute_dql($sql); if($row = mysqli_fetch_assoc($res)) { $stu->setStu_id($row['stu_id']); $stu->setStu_name($row['stu_name']); $stu->setStu_password($row['stu_password']); } mysqli_free_result($res); $mysql->close_connect(); return $stu; } //根据id号获取user public function getstubyid($id) { $stu = new student(); $mysql = new mysql(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME); $sql="select * from student where stu_id='".$id."'"; $res=$mysql->execute_dql($sql); if($row = mysqli_fetch_assoc($res)) { $stu->setStu_id($row['stu_id']); $stu->setStu_name($row['stu_name']); $stu->setStu_password($row['stu_password']); } mysqli_free_result($res); $mysql->close_connect(); return $stu; } //根据得到的对象修改数据库中的值 public function update(student $stu) { $mysql = new mysql(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME); $sql="update student set stu_name='".$stu->getStu_name()."',stu_password='".$stu->getStu_password()."' where stu_id=".$stu->getStu_id(); $b = $mysql->execute_dml($sql);// if($b == 1)// {// return true;// } return $b; } //删除用户 public function delete(student $stu) { $mysql = new mysql(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME); $sql = "delete from student where stu_id=".$stu->getStu_id().";"; $b = $mysql->execute_dml($sql); return $b; } }?>
mysql类
<?php // include_once 'confing.php'; class mysql extends mysqli {// public $link;// public $db_host = DB_HOST;// public $db_user = DB_USER;// public $db_password = DB_PASSWORD;// public $db_name = DB_NAME; public function __construct($host, $user, $pass, $db) { parent::__construct($host, $user, $pass, $db); if (mysqli_connect_error()) { die('Connect Error (' . mysqli_connect_errno() . ') ' . mysqli_connect_error()); }// $this->link = new mysqli($this->db_host, $this->db_user, $this->db_password, $this->db_name);// if(!$this->link){// die("连接失败".mysql_error());// } //mysql_select_db($this->dbname,$this->link); } //执行SQL语句得到结果集,查询语句 public function execute_dql($sql) { $res = $this->query($sql) or die(mysqli_error($this)); return $res; } //执行SQLdml语句插入,更新,删除 public function execute_dml($sql) { $b = $this->query($sql) or die(mysqli_error($this)); if(!$b) { return 0; } else { if($this->affected_rows > 0) //如果收影响的行数大于0 { return 1; //OK了 } else { return 2; //没有行收到影响 } } } //关闭连接 public function close_connect() { if(!empty($this)) $this->close(); } } ?>
student类
<?php class student { private $stu_id; private $stu_name; private $stu_password; /** * @return the $stu_id */ public function getStu_id() { return $this->stu_id; } /** * @return the $stu_name */ public function getStu_name() { return $this->stu_name; } /** * @return the $stu_password */ public function getStu_password() { return $this->stu_password; } /** * @param field_type $stu_id */ public function setStu_id($stu_id) { $this->stu_id = $stu_id; } /** * @param field_type $stu_name */ public function setStu_name($stu_name) { $this->stu_name = $stu_name; } /** * @param field_type $stu_password */ public function setStu_password($stu_password) { $this->stu_password = $stu_password; } } ?>
config.php配置数据库
<?php //用define定义常量 //连接服务器 define('DB_HOST', 'localhost'); //连接数据库的账号 define('DB_USER', 'root'); //连接数据库的密码 define('DB_PASSWORD', 'xiaofeng2015'); //连接数据库的名字 define('DB_NAME', 'studentmanage'); //?>
预览:

Thesecrettokeepingaphp-poweredwebsiterunningsmoothlyunderheavyloadinVolvesserVeSkeystrategies: 1) pelaksanaanPodeCachingWithopCachetoreduceScriptexecutionTime, 2) UsedataBasequerycachingWnithSoRessendataBaBAboad, 3)

Anda harus mengambil berat tentang kebergantungan (DI) kerana ia menjadikan kod anda lebih jelas dan lebih mudah untuk dikekalkan. 1) Di menjadikannya lebih modular dengan decoupling kelas, 2) meningkatkan kemudahan ujian dan fleksibiliti kod, 3) menggunakan bekas DI untuk menguruskan kebergantungan kompleks, tetapi memberi perhatian kepada kesan prestasi dan kebergantungan bulat, 4) Amalan terbaik adalah bergantung kepada antara muka abstrak untuk mencapai gandingan longgar.

Ya, OptimizingaphpapplicationIspossibleandessential.1) pelaksanaanCachingUsingAputeDeducedeDataBaseload.2) OptimisedataTabaseseseshithindexing, eficientqueries, danConnectionPooling.3) EnhancecodeWithBuilt-Infungsi, EveringGlobalVariables

ThekeystrategiestoSignificLantantlyboostphpapplicationperformanceare: 1) useopcodecachinglikLikeopcachetoreduceExecutionTime, 2) OptimizedataBaseInteractionsWithPreparedStatementsandProperindexing, 3) ConfigureWebserverserverLikenginxWithPmforbetterShipter.

AphpdependencyInjectionContainerisatoLthatMatagesClassDependencies, EnhancingCodeModularity, Testability, andMaintainability.itactsascentralHubforcreatingandinjectingdependencies, sheReducingTightCouplingandeaseaseaseSunittesting.

Pilih DependencyInjection (DI) Untuk aplikasi besar, servicelocator sesuai untuk projek kecil atau prototaip. 1) DI meningkatkan kesesuaian dan modulariti kod melalui suntikan pembina. 2) ServiceLocator memperoleh perkhidmatan melalui pendaftaran pusat, yang mudah tetapi boleh menyebabkan peningkatan gandingan kod.

Phpapplicationscanbeoptimizedforspeedandeficiencyby: 1) enablingopcacheinphp.ini, 2) menggunakan preparedSwithpdofordatabasequeries, 3) menggantikanloopswitharray_filterandarray_mapfordataprocessing, 4) configuringnginywinginywinyvinyvinginy

PhpeMailvalidationInvolvestHreesteps: 1) formatValidationingRegularExpressionStocheckTheemailFormat; 2) dnsvalidationtoensurethedomainhasavalidmxrecord;


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

SublimeText3 versi Inggeris
Disyorkan: Versi Win, menyokong gesaan kod!

PhpStorm versi Mac
Alat pembangunan bersepadu PHP profesional terkini (2018.2.1).

Penyesuai Pelayan SAP NetWeaver untuk Eclipse
Integrasikan Eclipse dengan pelayan aplikasi SAP NetWeaver.

Pelayar Peperiksaan Selamat
Pelayar Peperiksaan Selamat ialah persekitaran pelayar selamat untuk mengambil peperiksaan dalam talian dengan selamat. Perisian ini menukar mana-mana komputer menjadi stesen kerja yang selamat. Ia mengawal akses kepada mana-mana utiliti dan menghalang pelajar daripada menggunakan sumber yang tidak dibenarkan.

Versi Mac WebStorm
Alat pembangunan JavaScript yang berguna
