php中mysql语句的基本写法

php作为一门后台语言必须要与mysql数据库打交道,做到将内容存储到数据库以及数据库数据读写的操作,那么下面就来说下最近学习的一些东西:

在具体将之前先说一下编码的问题,很多情况会发现php内容显示在浏览器里会有编码问题,同时前台存储到数据库表中的中文字信息也会出现乱码问题,那么这里有几个地方要注意:

1、header("Content-Type: text/html;charset=utf-8");//强行指定页面的编码,以避免乱码

在php在前面插入这句话,可以避免php在页面中出现乱码

2、ENGINE=MyISAM AUTO_INCREMENT=33 DEFAULT CHARSET=utf-8这句话是在创建数据库表的时候,结尾加的一句话,可以避免数据库的读取的乱码问题

3、在mysql_select_db()之后加上一句mysql_query("set names 'utf8'");可以避免写入数据库乱码问题

mysql的数据读写,分为以下几个部分:

1、链接数据库

$con=mysql_connect("localhost","root"," ");

上面一句是创建了一个mysql的连接,同时试图连接到localhost,也就是127.0.0.1上,同时访问该数据库,账号是:root,密码为空,我们可以进行一些判断,来检查是否数据库链接成功

if(!$con){

  die('数据库链接失败'.mysql_error());

}else{

  echo '数据库链接成功';

}

2、创建一个数据库

通过mysql_query()方法来执行数据库语句

mysql_query("create database phpone",$con);其中$con为一个链接标示符

那么通过上面这句话,我们就创建了一个名为phpone的数据库,同时我们可以通过navivat等数据库工具,看到自己所创建的数据库

3、光有数据库还不够,我们需要的是数据库中的各种表格,那么这一步就是创建数据库表(分为两步)

第一:在创建数据库表之前,我们需要选择到所创建的数据库上,可能你的服务器上有很多歌数据库。

mysql_select_db("phpone",$con);

第二部:创建数据库表,因为数据库语句可能比较多,我们可以通过赋值的方式来写

 $sql="create table personinfo(

   personID int not null auto_increment,//创建主键,作为唯一标示符,为整型,自动增长

   primary key(personID),//设置主键为personID字段名

   name varchar(15),//设置name为一个大小可变的字符长度为15的字符

   age int,//定义age字段为整型

   regist date//定义regist为日期型,ps最后一个结尾的没有逗号

 )ENGINE=MyISAM AUTO_INCREMENT=33 DEFAULT CHARSET=utf-8";

mysql_query($sql,$con);

那么通过上面的方法,我们就创建一个数据库表

4、往数据库里面存入数据

mysql_query(insert into personinfo (name,age,regist) values ("小李",'23',''2012-09-26));//那么通过这句话,我们就成功的在数据库表中插入了一条数据

那么其实通过这些讲解,一个基本的表单提交的注册信息,同时存储到指定数据库表中的实现过程基本就呈现出来了,可以去试验一下

$_POST['name']  $_POST['age']   $_POST['regist'],通过将这三个数据插入到数据库的语句中,那么每次当点击提交submit按钮的是哦胡就会在指定的数据库中插入一条信息,其实可以做到更好,比如很多用户不喜欢填写注册时间,那么这些东西

后台数据库可以替他生成,通过传一个$data=date("Y-m-d");就可以实现简单的自动填写注册时间

php中mysql语句的基本写法的更多相关文章

  1. mysql语句在node.js中的写法

    总结一下mysql语句在node.js中的各种写法,参考了npm网站mysql模块给的实例. 查询 select //1 db.query('select * from tuanshang_users ...

  2. mysql语句中使用like后面的%(百分号)的问题

    问题:mysql语句中使用like后面的%(百分号) 是不是越多运行效率越慢! 总用时:0.0489秒 0.0691 0.0485 0.0467 SELECT `goods_name`, `goods ...

  3. NET MVC全局异常处理(一) 【转载】网站遭遇DDoS攻击怎么办 使用 HttpRequester 更方便的发起 HTTP 请求 C#文件流。 Url的Base64编码以及解码 C#计算字符串长度,汉字算两个字符 2019周笔记(2.18-2.23) Mysql语句中当前时间不能直接使用C#中的Date.Now传输 Mysql中Count函数的正确使用

    NET MVC全局异常处理(一)   目录 .NET MVC全局异常处理 IIS配置 静态错误页配置 .NET错误页配置 程序设置 全局异常配置 .NET MVC全局异常处理 一直知道有.NET有相关 ...

  4. mysql语句中把string类型字段转datetime类型

    mysql语句中把string类型字段转datetime类型   在mysql里面利用str_to_date()把字符串转换为日期   此处以表h_hotelcontext的Start_time和En ...

  5. MYSQL中的语句

    MYSQL中的语句 decimal(8,2):最多存10位数的数字,小数点后保存两位.如:999999.99

  6. mysql导入导出数据中文乱码解决方法小结(1、navicat导入问题已解决,创建连接后修改连接属性,选择高级->将使用Mysql字符集复选框去掉,下拉框选择GBK->导入sql文件OK;2、phpmyadmin显示乱码的问题也解决,两步:1.将sql文件以utf8的字符集编码另存,2.将文件中sql语句中的字段字符集编码改成utf8,导入OK)

    当向 MySQL 数据库插入一条带有中文的数据形如 insert into employee values(null,'张三','female','1995-10-08','2015-11-12',' ...

  7. MySQL 语句中执行优先级——and比or高

    转: MySQL 语句中执行优先级——and比or高 2017年04月20日 13:33:03 十步行 阅读数:7381   版权声明:本文为博主原创文章,未经博主允许不得转载. https://bl ...

  8. 在mysql语句中为什么要加反引号

    在MySQL语句中我们有时候经常会遇到反引号(``),刚开始的时候不知道什么意思,他是什么作用呢? Select * from `member` order by posts desc limit 0 ...

  9. Mysql中in语句排序

    这只是Mysql语句的写法,不同数据库写法不太一样, ,,,) order by instr('1,11115,11140,11135',id); 如果不使用order by,in语句查询出来的顺序是 ...

随机推荐

  1. 回滚Swtichover

    从11.2.0.2开始,如果由于某种原因switchover没有成功,可以回滚switchover. For physical standby databases in situations wher ...

  2. J2EE监听器和过滤器基础

    Servlet程序由Servlet,Filter和Listener组成,其中监听器用来监听Servlet容器上下文. 监听器通常分三类:基于Servlet上下文的ServletContex监听,基于会 ...

  3. Spring IOC的配置使用(转)

    转:http://www.cnblogs.com/linjiqin/p/3408306.html Spring IOC的配置使用 1.1.1 XML配置的结构一般配置文件结构如下: <beans ...

  4. BZOJ 3307: 雨天的尾巴( LCA + 线段树合并 )

    路径(x, y) +z : u处+z, v处+z, lca(u,v)处-z, fa(lca)处-z, 然后dfs一遍, 用线段树合并. O(M log M + M log N). 复杂度看起来不高, ...

  5. nginx 学习笔记【持续更新...】

    1.如果在安装过程中出现以下错误 需要安装pcre库 解决方案:yum install pcre 2.如果nginx启动提示端口被占用,则停止该端口的服务再启动nginx,一般为httpd服务 解决方 ...

  6. Android_CodeWiki_02

    1.使用TransitionDrawable实现渐变效果  private void setImageBitmap(ImageView imageView, Bitmap bitmap) { // U ...

  7. php实现多表(四表)连接

    <?php include_once "DBHelper.php"; define('HOST', '127.0.0.1'); define('USER', 'root'); ...

  8. Oracle ORA-01555 快照过旧 说明

    oracle高级知识(1) ORA-01555 快照过旧,是数据库中很常见的一个错误,比如当我们的事务需要使用undo来构建CR块的时候,而此时对应的undo 已经不存在了, 这个时候就会报ORA-0 ...

  9. GetLastError来获得错误信息转成文本描述

    我们一般在调用了一些API后都会用GetLastError来获得错误信息,但是信息都是Integer的,我们知道是什么意思么?嘿嘿,是的,有msdn呀,当然还可以用FormatMessage函数来.正 ...

  10. linux 和unix 的区别

    Linux与Unix的区别  某些PC机的Unix和Linux在实现方面相类似.几乎所有的商业Unix版本都基本支持同样的软件.程序设计环境和网络特性.然而,Linux和Unix的商业版本依然存在许多 ...