最简单的代码

connect.php

  1. <?php
  2. $host="localhost";
  3. $db_user="root";
  4. $db_pass="";
  5. $db_name="demo";
  6. $timezone="Asia/Shanghai";
  7. $link=mysql_connect($host,$db_user,$db_pass);
  8. mysql_select_db($db_name,$link);
  9. mysql_query("SET names UTF8");
  10. header("Content-Type: text/html; charset=utf-8");
  11. ?>

search.php

  1. <?php
  2. include_once("connect.php");
  3. $q = strtolower($_GET["term"]);
  4. $query=mysql_query("select * from test where title like '$q%' limit 0,10");
  5. while ($row=mysql_fetch_array($query)) {
  6. $result[] = array(
  7. 'id' => $row['id'],
  8. 'label' => $row['title']
  9. );
  10. }
  11. echo json_encode($result);
  12. ?>

sql

  1. CREATE TABLE `art` (
  2. `id` int(11) NOT NULL auto_increment,
  3. `title` varchar(100) NOT NULL,
  4. PRIMARY KEY  (`id`)
  5. ) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=15 ;
  6. INSERT INTO `art` (`id`, `title`) VALUES
  7. (1, 'jstest1'),
  8. (2, 'jstest2'),
  9. (3, 'jstest3'),
  10. (4, 'jstest4'),
  11. (5, 'jstest5'),
  12. (6, 'jstest6');

分开写的连接数据库

common.ini

  1. <?php
  2. //非法调用判断
  3. if(!defined('Inc_Tag')){
  4. exit("非法调用");
  5. }
  6. //硬路径转换
  7. define('ROOT_PATH', substr(dirname(__FILE__), 0,-8));
  8. //版本判断
  9. if (PHP_VERSION<4.0){
  10. exit("版本太低");
  11. }
  12. require ROOT_PATH.'\includes\global.func.php';
  13. require ROOT_PATH.'\includes\mysql.func.php';
  14. define('start_time', _runtime());
  15. //数据库连接
  16. define('DB_HOST','Localhost');
  17. define('DB_NAME','test');
  18. define('DB_USER','root');
  19. define('DB_PASSWORD','123456');
  20. //初始化数据库
  21. _connect();   //连接MYSQL数据库
  22. _select_db();   //选择指定的数据库
  23. _set_names();   //设置字符集
  24. ?>

mysql.php

  1. <?php
  2. //防止恶意调用
  3. if(!defined('Inc_Tag')){
  4. exit();
  5. }
  6. /**
  7. _connect()数据库连接函数
  8. */
  9. function _connect() {
  10. //global表示全局变量的意思,意思是此变量在函数外部也可使用
  11. global $_conn;
  12. if(!$conn=mysql_connect(DB_HOST,DB_USER,DB_PASSWORD)){
  13. exit("数据库连接失败".mysql_error());
  14. }
  15. }
  16. /**
  17. *
  18. * _select_db()选择数据库
  19. */
  20. function _select_db(){
  21. if(!mysql_select_db(DB_NAME)){
  22. exit("ERROR".mysql_error());
  23. }
  24. }
  25. /**
  26. *
  27. * _set_names()设置字符集
  28. */
  29. function _set_names(){
  30. if(!mysql_query('SET NAMES UTF8')){
  31. exit('ERROR'.mysql_error());
  32. }
  33. }
  34. /**
  35. *
  36. * _query()查询语句
  37. * @param unknown_type $sql
  38. */
  39. function _query($_sql){
  40. if (!$_result=mysql_query($_sql)){
  41. exit('SQL FAILED'.mysql_error());
  42. }
  43. return $_result;
  44. }
  45. /**
  46. *
  47. * Enter description here ...
  48. * @param unknown_type $_sql
  49. */
  50. function _fetch_array($_sql){
  51. return mysql_fetch_array(_query($_sql),MYSQL_ASSOC);
  52. }
  53. /**
  54. *
  55. * fetch_array_list($_result)在结果中读取关联数组
  56. * @param unknown_type $_result
  57. */
  58. function _fetch_array_list($_result){
  59. return mysql_fetch_array($_result,MYSQL_ASSOC);
  60. }
  61. /**
  62. *
  63. * Enter description here ...
  64. * @param unknown_type $_sql
  65. * @param unknown_type $_info
  66. */
  67. function _is_repeat($_sql,$_info){
  68. if(_fetch_array($_sql)){
  69. _alert_back($_info);
  70. }
  71. }
  72. /**
  73. *
  74. * Enter description here ...
  75. */
  76. function _affected_rows() {
  77. return mysql_affected_rows();
  78. }
  79. /**
  80. *
  81. * _close关闭数据库连接
  82. */
  83. function _close(){
  84. if (!mysql_close()){
  85. exit("关闭异常".mysql_error());
  86. }
  87. }
  88. ?>

global.fun

  1. <?php
  2. function _runtime(){
  3. $_mtime=explode(' ', microtime());
  4. $_temp_time=$_mtime[1]+$_mtime[0];
  5. return $_temp_time;
  6. }
  7. /**
  8. *
  9. * _alert_back()对话框弹出函数,然后返回一步
  10. * @param  $msg //弹出对话框消息
  11. * @return void
  12. */
  13. function _alert_back($msg){
  14. echo "<script type='text/javascript'>alert('".$msg."');history.back();</script>";
  15. exit();
  16. }
  17. /**
  18. *
  19. * _alert_close()弹出消息,关闭
  20. * @param unknown_type $msg
  21. */
  22. function _alert_close($msg){
  23. echo "<script type='text/javascript'>alert('".$msg."');window.close();</script>";
  24. exit();
  25. }
  26. function _get_xml($_xml_file){
  27. if (file_exists($_xml_file)){
  28. $_xml=file_get_contents($_xml_file);
  29. preg_match_all('/<vip>(.*)<\/vip>/s',$_xml,$_dom);
  30. echo $_dom[1];
  31. foreach ($_dom[1] as $_value) {
  32. preg_match_all('/<id>(.*)<\/id>/s',$_value,$_id);
  33. print_r($_id);
  34. preg_match_all('/<username>(.*)<\/username>/s',$_value,$_username);
  35. preg_match_all( '/<sex>(.*)<\/sex>/s', $_value, $_sex);
  36. preg_match_all( '/<face>(.*)<\/face>/s', $_value, $_face);
  37. preg_match_all( '/<email>(.*)<\/email>/s', $_value, $_email);
  38. preg_match_all( '/<url>(.*)<\/url>/s', $_value, $_url);
  39. $_html['id'] = $_id[1][0];
  40. $_html['username'] = $_username[1][0];
  41. $_html['sex'] = $_sex[1][0];
  42. $_html['face'] = $_face[1][0];
  43. $_html['email'] = $_email[1][0];
  44. $_html['url'] = $_url[1][0];
  45. }
  46. } else {
  47. echo '文件不存在';
  48. }
  49. return $_html;
  50. }
  51. /**
  52. *
  53. * Enter description here ...
  54. * @param unknown_type $_xmlfile
  55. * @param unknown_type $_clean
  56. */
  57. function _set_xml($_xmlfile,$_clean) {
  58. $_fp = @fopen('new.xml','w');
  59. if (!$_fp) {
  60. exit('系统错误,文件不存在!');
  61. }
  62. flock($_fp,LOCK_EX);
  63. $_string = "<?xml version=\"1.0\" encoding=\"utf-8\"?>\r\n";
  64. fwrite($_fp,$_string,strlen($_string));
  65. $_string = "<vip>\r\n";
  66. fwrite($_fp,$_string,strlen($_string));
  67. $_string = "\t<id>{$_clean['id']}</id>\r\n";
  68. fwrite($_fp,$_string,strlen($_string));
  69. $_string = "\t<username>{$_clean['username']}</username>\r\n";
  70. fwrite($_fp,$_string,strlen($_string));
  71. $_string = "\t<sex>{$_clean['sex']}</sex>\r\n";
  72. fwrite($_fp,$_string,strlen($_string));
  73. $_string = "\t<face>{$_clean['face']}</face>\r\n";
  74. fwrite($_fp,$_string,strlen($_string));
  75. $_string = "\t<email>{$_clean['email']}</email>\r\n";
  76. fwrite($_fp,$_string,strlen($_string));
  77. $_string = "\t<url>{$_clean['url']}</url>\r\n";
  78. fwrite($_fp,$_string,strlen($_string));
  79. $_string = "</vip>";
  80. fwrite($_fp,$_string,strlen($_string));
  81. flock($_fp,LOCK_UN);
  82. fclose($_fp);
  83. }
  84. /**
  85. *
  86. * _location()跳转函数
  87. * @param unknown_type $_msg
  88. * @param unknown_type $_url
  89. */
  90. function _location($_msg,$_url){
  91. if (!empty($_msg)){
  92. echo "<script type='text/javascript'>alert('$_msg');location.href='$_url';</script>";
  93. exit();
  94. }else {
  95. header('location:'.$_url);
  96. }
  97. }
  98. function _title($_string){
  99. if(mb_strlen($_string,'utf-8')>14){
  100. return mb_substr($_string, 1,6,'utf-8').'...';
  101. }
  102. return $_string;
  103. }
  104. /**
  105. *
  106. * _html()对数组或者字符串进行html过滤
  107. * @param array or string $_string
  108. * @return string or array
  109. */
  110. function _html($_string){
  111. if (is_array($_string)){
  112. foreach ($_string as $_key=>$_value){
  113. $_string[$_key]=_html($_value);//采用递归对其进行html过滤
  114. }
  115. }else {
  116. $_string=htmlspecialchars($_string);
  117. }
  118. return $_string;
  119. }
  120. /**
  121. *
  122. * _page()对查询的进行分页处理,
  123. * @param unknown_type $_sql
  124. * @param unknown_type $_size
  125. */
  126. function _page($_sql,$_size) {
  127. //将里面的所有变量取出来,外部可以访问
  128. global $_page,$_pagesize,$_pagenum,$_pageabsolute,$_num;
  129. if (isset($_GET['page'])) {
  130. $_page=$_GET['page'];
  131. if (empty($_page) || $_page < 0 || !is_numeric($_page)) {
  132. $_page=1;
  133. } else {
  134. $_page=intval($_page);
  135. }
  136. } else {
  137. $_page=1;
  138. }
  139. $_pagesize=$_size;
  140. $_num=mysql_num_rows(_query($_sql));
  141. if ($_num==0) {
  142. $_pageabsolute=1;
  143. } else {
  144. $_pageabsolute=ceil($_num/$_pagesize);
  145. }
  146. if ($_page>$_pageabsolute) {
  147. $_page=$_pageabsolute;
  148. }
  149. $_pagenum=($_page - 1) * $_pagesize;
  150. }
  151. /**
  152. *
  153. */
  154. function _paging($_type) {
  155. global $_page,$_pageabsolute,$_num;
  156. if ($_type==1) {
  157. echo '<div id="page_num">';
  158. echo '<ul>';
  159. for ($i=0;$i<$_pageabsolute;$i++) {
  160. if ($_page==($i+1)) {
  161. echo '<li><a href="'.Script.'.php?page='.($i+1).'" class="selected">'.($i+1).'</a></li>';
  162. } else {
  163. echo '<li><a href="'.Script.'.php?page='.($i+1).'">'.($i+1).'</a></li>';
  164. }
  165. }
  166. echo '</ul>';
  167. echo '</div>';
  168. } elseif ($_type==2) {
  169. echo '<div id="page_text">';
  170. echo '<ul>';
  171. echo '<li>'.$_page.'/'.$_pageabsolute.'页 | </li>';
  172. echo '<li>共有<strong>'.$_num.'</strong>个会员 | </li>';
  173. if ($_page==1) {
  174. echo '<li>首页 | </li>';
  175. echo '<li>上一页 | </li>';
  176. } else {
  177. echo '<li><a href="'.SCRIPT.'.php">首页</a> | </li>';
  178. echo '<li><a href="'.SCRIPT.'.php?page='.($_page-1).'">上一页</a> | </li>';
  179. }
  180. if ($_page==$_pageabsolute) {
  181. echo '<li>下一页 | </li>';
  182. echo '<li>尾页</li>';
  183. } else {
  184. echo '<li><a href="'.SCRIPT.'.php?page='.($_page+1).'">下一页</a> | </li>';
  185. echo '<li><a href="'.SCRIPT.'.php?page='.$_pageabsolute.'">尾页</a></li>';
  186. }
  187. echo '</ul>';
  188. echo '</div>';
  189. }
  190. }
  191. function _unsetcookies(){
  192. setcookie('username','',time()-1);
  193. setcookie('uniqid','',time()-1);
  194. session_destroy();
  195. _location(null,'index.php');
  196. }
  197. /**
  198. * _code() 注册码函数
  199. * @access public
  200. * @param $_width 验证码图片宽
  201. * @param $_height 验证码图片高
  202. * @param $_rnd_code 验证码位数
  203. * @param $_flag 是否显示黑色边框
  204. * @return void 返回一验证码图片
  205. */
  206. function _code($_width=75,$_height=25,$_rnd_code=4,$flag=FALSE){
  207. //创建随机码
  208. for ($i=0;$i<$_rnd_code;$i++) {
  209. $_nmsg .= dechex(mt_rand(0,15));
  210. }
  211. //保存在session
  212. $_SESSION['code'] = $_nmsg;
  213. //创建一张图像
  214. $_img = imagecreatetruecolor($_width,$_height);
  215. //白色
  216. $_white = imagecolorallocate($_img,255,255,255);
  217. //填充
  218. imagefill($_img,0,0,$_white);
  219. $_flag = false;
  220. if ($_flag) {
  221. //黑色,边框
  222. $_black = imagecolorallocate($_img,0,0,0);
  223. imagerectangle($_img,0,0,$_width-1,$_height-1,$_black);
  224. }
  225. //随即画出6个线条
  226. for ($i=0;$i<6;$i++) {
  227. $_rnd_color = imagecolorallocate($_img,mt_rand(0,255),mt_rand(0,255),mt_rand(0,255));
  228. imageline($_img,mt_rand(0,$_width),mt_rand(0,$_height),mt_rand(0,$_width),mt_rand(0,$_height),$_rnd_color);
  229. }
  230. //随即雪花
  231. for ($i=0;$i<100;$i++) {
  232. $_rnd_color = imagecolorallocate($_img,mt_rand(200,255),mt_rand(200,255),mt_rand(200,255));
  233. imagestring($_img,1,mt_rand(1,$_width),mt_rand(1,$_height),'*',$_rnd_color);
  234. }
  235. //输出验证码
  236. for ($i=0;$i<strlen($_SESSION['code']);$i++) {
  237. $_rnd_color = imagecolorallocate($_img,mt_rand(0,100),mt_rand(0,150),mt_rand(0,200));
  238. imagestring($_img,5,$i*$_width/$_rnd_code+mt_rand(1,10),mt_rand(1,$_height/2),$_SESSION['code'][$i],$_rnd_color);
  239. }
  240. //输出图像
  241. header('Content-Type: image/png');
  242. imagepng($_img);
  243. //销毁
  244. imagedestroy($_img);
  245. }
  246. function _sha1_uniqid(){
  247. return sha1(uniqid(rand(),TRUE));
  248. }
  249. ?>

查询

    1. <?php
    2. /**
    3. * TestGuest Version1.0
    4. * ================================================
    5. * Copy 2010-2012 yc60
    6. * Web: http://www.yc60.com
    7. * ================================================
    8. * Author: Lee
    9. * Date:2011-9-7
    10. */
    11. error_reporting(E_ALL^E_NOTICE);
    12. //定义常量,授权includes的包含文件
    13. define('Inc_Tag', TRUE);
    14. //定义常量,包含CSS文件
    15. define('Script', 'blog');
    16. //包含公共文件
    17. require dirname(__FILE__).'/includes/common.inc.php';
    18. ?>
    19. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    20. <html xmlns="http://www.w3.org/1999/xhtml">
    21. <head>
    22. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    23. <title>hello gull记事本-博友界面</title>
    24. <?php
    25. //包含CSS文件
    26. require ROOT_PATH.'includes/title.inc.php';
    27. ?>
    28. </head>
    29. <body>
    30. <?php
    31. //包含头文件
    32. require ROOT_PATH.'includes/header.inc.php';
    33. //分页模块
    34. global $_pagesize,$_pagenum;
    35. _page("SELECT dg_id FROM tg_user",10);   //第一个参数获取总条数,第二个参数,指定每页多少条
    36. //读取数据库信息
    37. $_result=_query("SELECT t_username,t_sex,t_face FROM tg_user ORDER BY t_reg_time DESC limit $_pagenum,$_pagesize");
    38. ?>
    39. <div id="blog">
    40. <div>
    41. <h2>博友信息</h2>
    42. <?php while (!!$rows=_fetch_array_list($_result)){?>
    43. <dl>
    44. <dd class="user"><?php echo $rows['t_username']?>(<?php echo $rows['t_sex']?>)</dd>
    45. <dt><img src="<?php echo $rows['t_face']?>" /></dt>
    46. <dd class="message">发消息</dd>
    47. <dd class="friend">加为好友</dd>
    48. <dd class="guest">写留言</dd>
    49. <dd class="flower">给他送花</dd>
    50. </dl>
    51. <?php }?>
    52. <?php
    53. _paging(1);
    54. ?>
    55. </div>
    56. <?php
    57. //包含尾部文件
    58. require ROOT_PATH.'includes/footer.inc.php';
    59. ?>
    60. </body>
    61. </html>

PHP基本连接数据库的更多相关文章

  1. orecal基本连接数据库简介

    整理自互联网 一. jdbc:oracle:thin:@192.168.3.98:1521:orcljdbc:表示采用jdbc方式连接数据库oracle:表示连接的是oracle数据库thin:表示连 ...

  2. JSP应用开发 -------- 电纸书(未完待续)

    http://www.educity.cn/jiaocheng/j9415.html JSP程序员常用的技术   第1章 JSP及其相关技术导航 [本章专家知识导学] JSP是一种编程语言,也是一种动 ...

  3. php 基本连接mysql数据库和查询数据

    连接数据库,有三种方法 1. 常规方式: $con=mysql_connect($dbhostip,$username,$userpassword) or die("Unable to co ...

  4. JDBC连接MySQL数据库(一)——数据库的基本连接

    JDBC的概念在使用之前我们先了解一下JDBC的概念, JDBC的全称是数据库连接(Java Database Connectivity),它是一套用于执行SQL语句时的API,应用程序可以通过这套A ...

  5. SQL Server2008从入门到全面精通 SQL数据库视频教程

    第1章 SQL Server 2008入门知识:1.SQL SERVER 2008简介2.数据库概念3.关系数据库4.范式5.E-R模型6.SQL Server 2008体系结构7.安装IIS服务8. ...

  6. 【Django】Django model与数据库操作对应关系(转)

    Django对数据库的操作分用到三个类:Manager.QuerySet.Model. Manager的主要功能定义表级方法(表级方法就是影响一条或多条记录的方法),我们可以以models.Manag ...

  7. php连接redis数据库 操作redis任务队列

    首先你的安装phpredis扩展在你的服务器上 $redis = new Redis(); $redis->connect('119.29.10.xx',6379); $redis->au ...

  8. JDBC操作Oracle数据库

    背景知识 含义:JDBC是一种java数据库连接技术,能实现java程序对各种数据库的访问.由一组使用java语言编写的类和接口组成,这些类和接口称为JDBC API,他们位于java.sql 以及j ...

  9. Node.js与MongoDB的基本连接示例

    Node.js与MongoDB的基本连接示例 前提 已经安装了node.js和MongoDB,本文使用的node.js是v0.12.0,MongoDB是3.0.0. 初始化数据 启动MongoDB服务 ...

随机推荐

  1. Selenium (3) —— Selenium IDE + Firefox录制登录脚本(101 Tutorial)

    Selenium (3) -- Selenium IDE + Firefox录制登录脚本(101 Tutorial) selenium IDE版本: 2.9.1 firefox版本: 39.0.3 参 ...

  2. drupal 不错的网址

    1.最重要的7个Drupal内核模板文件 http://mydrupal.org/%E6%9C%80%E9%87%8D%E8%A6%81%E7%9A%847%E4%B8%AAdrupal%E5%86% ...

  3. springboot读取resource下的文本文件

    https://blog.csdn.net/programmeryu/article/details/58002218 文本所在位置: 获取ZH.txt: File file = ResourceUt ...

  4. struts2+hibernate(分页实现)

    //Dao类中实现了list集合和pagetotal方法 package zjf.strhib.Dao; import java.util.ArrayList; import java.util.Li ...

  5. jquery 利用CSS 控制打印样式

    一.添加打印样式 1. 为屏幕显示和打印分别准备一个css文件,如下所示:  用于屏幕显示的css: <link rel="stylesheet" href="cs ...

  6. [kafka] 001_kafka起步

    一.简介 Kafka is a distributed, partitioned, replicated commit log service. It provides the functionali ...

  7. 6 ways to import data into SQL Server

    I’m going to go over some methods to import data from text files into SQL Server today. The particul ...

  8. Java 内部线程

    InsttoolCacheScheduler_ Worker-2 Quartz InsttoolCacheScheduler_Worker-2线程就是ThreadPool线程的一个简单实现,它主要负责 ...

  9. 33个与众不同的Web表单设计

    表单在web设计中很重要,因为它具有直接的用户交互.创新?有趣?富有色彩?设计一个交互,需要设计师关注登陆/注册表单的设计元素. 这里有33个与众不同的web表单设计,希望能使你获得设计灵感. 1. ...

  10. (笔记)Linux下查看CPU使用率的命令

    1.top 使用权限:所有使用者 使用方式:top [-] [d delay] [q] [c] [S] [s] [i] [n] [b] 说明:即时显示process的动态 d :改变显示的更新速度,或 ...