<body>
<?php //面向对象的方式访问数据库 //造对象
$db = new MySQLi("localhost","root","123","mydb"); //判断连接是否出错
/*if(mysqli_connect_error())
{
echo "连接失败!";
exit;
}*/ !mysqli_connect_error() or die("连接失败!"); //写SQL语句
$sql = "insert into Info values('p010','张三',true,'n002','1988-2-3')"; //执行SQL语句,查询语句返回结果集对象,其他语句返回true或false
$result = $db->query($sql); //从结果集对象中读取数据
//$attr = $result->fetch_all(MYSQLI_BOTH); //以二维数组的方式返回所有数据
//$attr = $result->fetch_array(); //返回当前指针指向的这条数据
//$attr = $result->fetch_assoc(); //返回当前指针指向的这条数据(关联数组)
//$attr = $result->fetch_object(); //返回对象
//$attr = $result->fetch_row(); //返回索引数组
//var_dump($attr);
/*
while($attr = $result->fetch_row()) //通过循环返回所有一维数组,另外可以在外面定义一个空数组,把循环出来的数通过array_push方法加到空数组中,输出一个2维数组,等同于fetch_all();
{
var_dump($attr);
}*/ //var_dump($result); ?>
</body>

例子

登陆界面

<body>
<h1>登录</h1>
<form action="dlchuli.php" method="post">
<div>用户名:<input type="text" name="uid" /></div>
<div>密码:<input type="text" name="pwd" /></div>
<input type="submit" value="登录" />
</form>
</body>
<?php
$uid = $_POST["uid"];
$pwd = $_POST["pwd"]; //造对象
$db = new MySQLi("localhost","root","123","mydb");
//判断是否出错
!mysqli_connect_error() or die("连接失败!");
//写SQL语句
//容易被SQL注入攻击,不安全
//$sql = "select count(*) from Users where Uid = '{$uid}' and Pwd='{$pwd}'"; $sql = "select Pwd from Users where Uid='{$uid}'"; //执行SQL语句
$result = $db->query($sql); //取数据
$attr = $result->fetch_row(); if($attr[0] == $pwd)
{
header("location:main.php");
}
else
{
echo "登录失败!";

注册界面

<body>
<form action="zcchuli.php" method="post">
<div>用户名:<input type="text" name="uid" /></div>
<div>密码:<input type="text" name="pwd" /></div>
<div>姓名:<input type="text" name="name" /></div>
<div>性别:<input type="radio" value="1" name="sex" />男 <input type="radio" value="0" name="sex" />女</div>
<div>生日:<input type="text" name="birthday" /></div>
<input type="submit" value="注册" />
</form>
</body>
<?php
$uid = $_POST["uid"];
$pwd = $_POST["pwd"];
$name = $_POST["name"];
$sex = $_POST["sex"];
$birthday = $_POST["birthday"]; $s = $sex==1?true:false; //造对象
$db = new MySQLi("localhost","root","123","mydb"); //判断是否出错
!mysqli_connect_error() or die("连接失败!"); //写SQL语句
$sql = "insert into Users values('{$uid}','{$pwd}','{$name}',{$s},'{$birthday}',0)"; //执行SQL语句
$result = $db->query($sql); if($result)
{
header("location:zhuce.php");
}
else
{
echo "注册失败!";
}

php 面向对象的方式访问数据库的更多相关文章

  1. 非链接方式访问数据库--查询的数据集用Dataset来存储。

    private void Button_Click_1(object sender, RoutedEventArgs e) { //非链接方式访问数据库, //1创建连接对象(连接字符串) using ...

  2. ADO.NET 连接方式和非链接方式访问数据库

    一.//连接方式访问数据库的主要步骤(利用DataReader对象实现数据库连接模式) 1.创建连接对象(连接字符串) SqlConnection con = new SqlConnection(Co ...

  3. 对比传统方式访问数据库和SpringData访问数据库

    我们在写代码的时候应该一边写一边测试,这样的话可以尽快的找到错误,在代码写多了之后去找错误的话不容易给错误定位 传统方式访问数据库 1:创建一个Maven web项目 2:修改pom.xml为以下内容 ...

  4. 2017.11.12 web中JDBC 方式访问数据库的技术

    JavaWeb------ 第四章 JDBC数据库访问技术 在JavaWeb应用程序中数据库访问是通过Java数据库连接(JavaDateBase Connectivity简称JDBC)数据库的链接一 ...

  5. ASP.NET MVC- EF返回连接池用ADO.NET方式访问数据库

    用习惯了ADO.NET的方式去访问数据库,虽然ADO.NET写的代码没有EF简洁,可是也并不麻烦.而且EF在进行多表查询的那种方式是,EF需要先去数据库里定义外键,再进去一次代码生成,然后才能用INC ...

  6. Mybatis基于注解的方式访问数据库

    1. 使用方式:在Service层直接调用 package com.disappearwind.service; import org.springframework.beans.factory.an ...

  7. 使用Tomcat数据源的方式访问数据库(MySql) --Struts2框架应用与开发

    1.为方便测试首先创建数据库和表,然后插入测试数据   2.打开Tomcat服务器安装目录的conf/下的context.xml,配置context.xml文件. 在<Context>标签 ...

  8. 封装类的方式访问数据库(封装字符串、json)

    <?php class DBDA { public $host="localhost";//服务器地址 public $uid="root";//用户名 ...

  9. 以Ajax的方式访问数据库

    一:以Ajax的方式显示数据 我们都知道,如果用Ajax程序去加载一个动态页,则加载的实际上是这个动态页执行完毕后生成的静态HTML代码字符串. 1.以原有的格式显示数据 <?php heade ...

随机推荐

  1. Yii2 初体验

    看着Yii1.1有那么多的不爽,又看着Yii2一天天成熟起来,于是凑一个小项目的原型阶段,试着用Yii2搞一搞. 随手写了一点体会,以一个Yii1的熟练工人看向Yii2的视角,简单一说吧.(将来随时可 ...

  2. Spring学习4-面向切面(AOP)之Spring接口方式

    一.初识AOP    关于AOP的学习可以参看帮助文档:spring-3.2.0.M2\docs\reference\html目录下index.html的相关章节       1.AOP:Aspect ...

  3. Jquery 表单操作

    文本框,文本区域: 获取值: 1.$("#txt").attr("value"); 2. $("txt").val(); 单选按钮: 获取值 ...

  4. Asp.Net之后台加载JS和CSS

    在Asp.Net开发时,用到的JS库.通用的CSS等,在许多页面都会用到,而每次都需要手动引入,相当麻烦,而且有时一旦忘了引用,还得找半天才能找到问题.那有没有什么办法能够一劳永逸的呢?答案是有的. ...

  5. 用LR12录制app,用LR11跑场景,无并发数限制,已试验过,可行!

    免费使用LoadRunner对移动互联网后端服务器压力测试 一.LoadRunner简介 LoadRunner,是惠普公司研发的一款预测系统行为和性能的负载测试工具.通过以模拟上千万用户实施并发负载及 ...

  6. Centos优化Hadoop

    导读 Hadoop是一个能够让用户轻松架构和使用的分布式计算平台,用户可以轻松地在Hadoop上开发和运行处理海量数据的应用程序,本节讲安装并且优化centos 6.7 系统下的Supper Hado ...

  7. 用Prime31实现Google Play In-App-Blling

    Android开发者想在海外赚钱,接入Google Play是不二选择,然而一堆英文文档对于像我这样的英语四级都木有过的可谓是苦恼之极.近段时间因工作需要研究了Unity接入Google Play的整 ...

  8. each-Select

    While Ruby’s each method is useful, it also comes with an awesome extended family of methods that ar ...

  9. vim常用指令及快捷键(持续更新)

    (这些文章都是从我的个人主页上粘贴过来的,大家也可以访问我的主页 www.iwangzheng.com) 发现了个非常赞的网站  http://openvim.com/ 以下很多操作都是安装好vund ...

  10. VS2010中如何查看DLL的导出接口

    看<VC++动态链接库(DLL)编程深入浅出>时,里面提到使用Visual C++的Depends工具可以查看动态链接库中的导出接口.对于VC6.0,VC所带的Depends软件,在VC6 ...