php面向对象操作数据 php是面向对象还是面向过程
php + msqli 面向对象方式读取并显示数据问题
$sql = 'select * from [users] where ID='.$Id.' limit 1';
创新互联公司是一家专注于成都做网站、成都网站建设、成都外贸网站建设与策划设计,游仙网站建设哪家好?创新互联公司做网站,专注于网站建设10年,网设计领域的专业建站公司;建站业务涵盖:游仙等地区。游仙做网站价格咨询:13518219792
这句写成:
$sql='select*from users where id="'.$id.'" limit 1';
php中变量名是区分大小写的,而且建议无论在什么情况下最好都区分一下大小写。
另外,不明白你为什么用[users] .
请问PHP怎样用面向对象方式连接MySQL数据库?
?php
$servername = "localhost"; //你的连接地址,可以是ip
$username = "username"; //你的用户名
$password = "password"; //你的密码
$dbname = "myDB"; //你要连接数据库的名字
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检测连接
if ($conn-connect_error) {
die("连接失败: " . $conn-connect_error);
}
echo "连接成功";
学习可以参考:
php+MySqli+面向对象+数据操作问题【高分求解】
?php
$conn=new mysqli("127.0.0.1", "root", "jack123456", "test");
if(mysqli_connect_error()){
$this-error = mysqli_connect_error();
return FALSE;
}
$conn-query("SET NAMES UTF8");
$Id = $_GET['id']; //具有唯一性,自增
$mobile = $_GET['mobile']; //具有唯一性
$sql1 = "select * from users where ID=$Id";
//这里我要判断这条数据是否存在,存在就获取mobile,无需循环
$rs = $conn-query($sql1);
if ($rs-num_rows!==0) {
$row = $rs - fetch_assoc();
$mobile= $row['mobile'];
$rs-close();
echo "get";
} else {//如果数据不存在,就新增一条
$sql2 = "insert into users (mobile) values('$mobile')";
$conn-query($sql2);//插入之后,获取该信息,这里要从数据库中获取,不要Get的数据。
$sql3 = "select * from users where mobile = '$mobile '";
if ($rs = $conn-query($sql3)) {
$row = $rs - fetch_assoc();
$Id = $row['ID'];
$mobile = $row['mobile'];
$rs-close();
echo "charu";
}else{
echo '插入数据失败';
}
}
$sql4 = "update Users set loginIp='127.0.0.1' where ID='$Id'";
$conn-query($sql4);
mysqli_close($conn);//关闭连接
表结构 字段名的大小写 一定要注意
综合应用数据库知识和用面向对象编程技术在PHP程序中创建出学生类
PHP使用面向对象的编程方式来编写数据库操作类
步骤1:创建一个PHP的页面“config.php”定义数据库相关的参数
?php // config.php
define(?DB_USER?, "username");
define(?DB_PASSWORD?, "password");
define(?DB_DATABASE?, "database name");
define(?DB_SERVER?, "ip address of database server");
?
第2步:创建一个PHP的类,用于连接数据库,命名为“db_connect.php”
?php // db_connnect.php
class DB_Connect {
private $con;
// constructor
function __construct() {
// connecting to database
$this-con = $this-connect();
}
//Function to connect with database
private function connect() {
// import database connection variables
require_once __DIR__.?/config.php?;
try {
$conn = new PDO(?mysql:host=?.DB_SERVER .?;
dbname=?.DB_DATABASE, DB_USER, DB_PASSWORD);
$conn-setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch(PDOException $e) {
echo ?ERROR: ? . $e-getMessage();
}
return $conn;
}
public function getDbConnection(){
return $this-con;
}
}
?
第3步:创建一个类,它包含了所有的功能,为您实现SQL查询,命名为“db_functions.php”
调用里面的函数进行SQL查询、以促进可重用性和可维护性
?php // db_functions.php
class DB_Functions {
private $con;
// constructor
function __construct() {
require_once __DIR__.?/db_connect.php?;
// connecting to database
$db = new DB_Connect();
$this-con = $db-getDbConnection();
}
public function selectUser($id) {
try {
$stmt = $this-con-prepare(?SQL语句?);
$params = array(?:id? = $id);
$stmt-execute($params);
return $stmt;
} catch(PDOException $e) {
echo ?ERROR: ? . $e-getMessage();
}
}
public function otherSQLfunction($parameter) {
// other sql code
}
}
第4步:最后,在你其他的PHP文件里面只需要简单地调用“db_functions.php”的方法
?php
require_once __DIR__.?/db_functions.php?;
$db = new DB_Functions();
$result = $db-selectUser($id);
// other code
?
php面向对象有什么用
php程序编写分总分两种方式,分别为面向过程和面向对象,用两者比较你会更容易理解些
以下数据库操作为例:
面向过程:
$conn = mysql_connect('127.0.0.1', 'root', '123456') or die('连接不成功!');
mysql_select_db('test', $conn) or die('数据库不存在!');
$queryid = mysql_query("select * from sort");
while ($rs = mysql_fetch_assoc($queryid)) {
echo $rs['name'], 'br';
}
过程的代码给人感觉比较乱,不易管理,以下实现以上代码一样的功能,但代码清楚多了。
面向对象就是把常用的功能封装为一个类,类由属性和方法组成:
把以上过程代码封装成类,以文件形式保存为db.php
class db {
private $conn; //属性
private $queryid; //属性
//构造函数
public function db($host, $dbuser, $dbpasswd, $dbname) {
$this-conn = mysql_connect($host, $dbuser, $dbpasswd) or die('连接不成功!');
mysql_select_db($dbname, $this-conn) or die('数据库不存在!');
}
//查询方法
public function query($sql) {
$this-queryid = mysql_query($sql, $this-conn);
}
public function fetch_assoc() {
return mysql_fetch_assoc($this-queryid);
}
}
//在a.php文件中实例化,代码使用变得简结和容易理解,代码的重用性
inclode('db.php');
$db = new db('127.0.0.1', 'root', '123456', 'test');
$db-query("select * from sort");
while ($rs = $db-fetch_assoc()) {
echo $rs['name'], 'br';
}
网站栏目:php面向对象操作数据 php是面向对象还是面向过程
转载来于:http://hbruida.cn/article/hiddos.html