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. .net 生成缩略图

    public static void CreateSmallImage(string minImageFullPath, System.Drawing.Image originalImage, int ...

  2. maven简单工具命令

    (一)聚合项目的创建//创建父项目mvn archetype:create -DgroupId=com.ztesoft.resmaster -DartifactId=lifecycle<pack ...

  3. DropdownList的处理总结

    创建一: List<SelectListItem> items = new List<SelectListItem>() { new SelectListItem(){Text ...

  4. TSF自定义候选词列表界面

    概述 TSF(Text Service Framework),已经取代IMM(Input Method Manager),成为win8+系统的输入法框架.现在有个需求,触摸屏上要使用软键盘(虚拟键盘, ...

  5. openstack外篇之认识mysql授权及一些操作

    openstack外篇之认识mysql授权及一些操作  http://www.aboutyun.com/thread-11405-1-1.html

  6. php 字符串是否存在

    /** * 方法库-字符串是否存在 * @param string $str :字符或字符串 * @param string $string :字符串 * @return string 例子: $st ...

  7. hdu 5755 Gambler Bo 高斯消元

    题目链接 给n*m的方格, 每个格子有值{0, 1, 2}. 然后可以对格子进行操作, 如果选择了一个格子, 那么这个格子的值+2, 这个格子上下左右的格子+1, 并且模3. 问你将所有格子变成0的操 ...

  8. shell基础——变量定义

    快速参考: 变量定义格式: 变量名=值 str1="hello world" # define a string var str2=hello # define a string ...

  9. JDK Debug

    http://ishare.iask.sina.com.cn/f/23897007.html http://hi.baidu.com/bd_hare/item/7edd0415b60f0101e65c ...

  10. Linux进程间通信——使用消息队列

    下面来说说如何用不用消息队列来进行进程间的通信,消息队列与命名管道有很多相似之处.有关命名管道的更多内容可以参阅我的另一篇文章:Linux进程间通信——使用命名管道   一.什么是消息队列 消息队列提 ...