php mysql 查询数据库

 更新时间:2016年11月25日 16:39  点击:1440
文章提供一款简单的mysql 查询数据库数据的代码,可以查询blog里面所有数据并且显示出来。
 代码如下 复制代码

session_start();
$conn=mysql_connect('localhost','root','root')or die('数据库连接错误');
mysql_select_db('demo',$conn);
mysql_query("set names 'gbk'");
$us=$_session['username'];
$selequery=mysql_query("select * from blog where author='$us' order by id desc")or die("查询失败");
?>

<?php while($selerow=mysql_fetch_array($selequery)){
 
?>
<form action="" method="post" name="modform">
  <table width="100%" border="1">
    <tr>
      <td width="100">作者:</td>
      <td><?php echo $_session['username']."&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".$selerow['redate'];?></td>
    </tr>
    <tr>
      <td width="100">留言标题:</td>
      <td><?php echo $selerow['title'];?></td>
    </tr>
    <tr>
      <td>留言内容:</td>
      <td><?php echo $selerow['content'];?></td>
    </tr>
      <tr>
      <td colspan="2" align="center"><input type="submit" value="修改" name="sub"></input></td>
    </tr>
  </table>
 </form>
  <br>
 
  <?php }?> 

 

 

<!--<?php
 for($i=1;$i<$selerow=mysql_num_rows($selequery);$i++){
  if($i<$selerow=mysql_num_rows($selequery)){?>
 
   <table><tr><td><?php echo $selerow['title'];?></td></tr></table>
   <hr color="red"></hr>
  <?php
  }else{?>
  <table></table>
<?php
 }}
 


 
 /*
 drop table if exists `blog`;
create table `blog` (
  `id` int(10) not null auto_increment,
  `author` varchar(50) not null,
  `title` varchar(50) not null,
  `content` text,
  `redate` date not null,
  primary key (`id`)
) engine=innodb auto_increment=5 default charset=gbk;

-- ----------------------------
-- records of blog
-- ----------------------------
insert into `blog` values ('1', 'admin', '我', '<p>呜呜呜</p>', '2010-07-31');
insert into `blog` values ('2', 'admin', '第五', '<p>我的</p>', '2010-07-31');
insert into `blog` values ('3', 'admin', '我的', '<p>去权威的物权法</p>', '2010-07-31');
insert into `blog` values ('4', '111111', '大武器', '<p>的弯曲的千万</p>', '2010-07-31');
 */

 代码如下 复制代码

<html><heae>         
<title>php教程读取excel并查询指定数据</title>         
<body><center>成绩查询系统<hr>         
<table border=0><tr>         
<td bgcolor=red align=center)成绩查询系统输入界面</td>         
<td bgcolor=tintyellow align=left rowspan=2>说明 :<br>        
请输入正确且完整的数据.<br>        
本查询系统仅供参考,实际以成绩单为准.<br>        
例如:查询 2001 学年第一学期二专资管科一年级一班<br>    
学号输入格式范例:c017037<br>        
<br></td><tr>        
<td bgcolor=tintblue align=center><center><form action=nscore.php method=get>        
<select name=pl>        
<option value=2001>2001        
<option value=2002>2002        
<option value=2003>2003        
<option value=2004>2004        
</select)学年第        
<select name=p2>        
<option value=1>一        
<option value=2>二        
</select>学期<br>        
<select name=p3>        
<option value=1>二专        
<option value=2>二技         
<option value=3>四技        
</select>学制        
<select name=p4>        
<option value=1>电子                         
<option value=2>电机        
<option value=3>机械        
<option value=4>土木        
<option  value=5>经管        
<option value=6>环工        
<option value=7>资管        
<option value=8>应外        
</select>系/科        
<select name=p5>        
<option value=1>一        
<option value=2>二        
<option value=3>三        
</select>年级        
<select name=p6>        
<option value=1>一        
<option value=2>二        
<option value=3>三        
<option value=4>四        
</select>班<br>        
<b>学号:</b><input size=10 name=no><br><br>        
<input type=submit value=确定 name=submit>        
</form>        
</center></td>        
</tr>        
</table>        
<hr>            
</body></html>

php代码

<?php
$filename=$pl.$p2.$p3.trim($p4).trim($p5).trim($p6). ".dbf";        
if (file_exists($filename))(        
$f=dbase_open($fiiename,0);        
$k=dbase_get_record($f,1);
for($i=2;$i<dbase_numrecords($f);$i++){        
 $a=dbase_get_record($f,$i);        
 if($no==trim($a[0])){        
  echo "<html><center>成绩查询系统";        
  echo "<hr>";        
  echo "$a[0] $a[1]<br>";;        
  echo "<table border=1>";        
  echo"<tr><td><center>科目名称</td><td)<center>分数</td>";        
  for ($j=2;$j<(dbase_numfields($f));$j++){       
   echo "<tr><td><center>$k[$j]</td><center>$a[$j]</td>";       
  }//end for j       
  break;       
 }//end if        
}//end for i
echo "</tr>";        
dbase_close($f);        
} else {        
echo "错误信息:成绩数据库教程尚未建立<br>";       
}        
if($no=="") {echo "错误信息:请输入学号<br>";}
?> 

这是一款比较全的mysql操作类哦,昨天写了一个简单的连接mysql数据库代码,相对于这个来说,那个是最简单的了,这个是一款包括数据查询,更新,删除,等操作。

class mysql{

  private $db_host; //数据库主机
  private $db_user; //数据库用户名
  private $db_pwd; //数据库密码
  private $db_database; //数据库名
  private $conn; //数据库连接标识;
  private $sql; //sql执行的语句
  private $result; //query的资源标识符
  private $coding; //数据库编码,gbk,utf8,gb2312
  private $show_error = true; //本地调试使用,打印错误

  /**
   * 构造函数
   *
   * @access public
   * @parameter string $db_host   数据库主机
   * @parameter string $db_user   数据库用户名
   * @parameter string $db_pwd    数据库密码
   * @parameter string $db_database   数据库名
   * @parameter string $coding    编码
   * @return void
   */
  public function __construct($db_host, $db_user, $db_pwd, $db_database, $coding){
   $this->db_host = $db_host;
   $this->db_user = $db_user;
   $this->db_pwd =  $db_pwd;
   $this->db_database = $db_database;
   $this->coding = $coding;
   $this->connect();
  }

  /**
   * 链接数据库
   *
   * @access private
   * @return void
   */
  private function connect(){

   $this->conn = @mysql_connect($this->db_host,$this->db_user,$this->db_pwd);
   if(!$this->conn){
    //show_error开启时,打印错误
    if($this->show_error){
     $this->show_error('错误提示:链接数据库失败!');
    }
   }

   if(!@mysql_select_db($this->db_database, $this->conn)){
    //打开数据库失败
    if($this->show_error){
     $this->show_error('错误提示:打开数据库失败!');
    }
   }

   if(!@mysql_query("set names $this->coding")){
    //设置编码失败
    if($this->show_error){
     $this->show_error('错误提示:设置编码失败!');
    }
   }
  }

  /**
   * 可执行查询添加修改删除等任何sql语句
   *
   * @access public
   * @parameter string $sql   sql语句
   * @return resource  资源标识符
   */
  public function query($sql){
   $this->sql = $sql;
   $result = mysql_query($this->sql, $this->conn);
   if(!$result){
    //query执行失败,打印错误
    $this->show_error("错误的sql语句:", $this->sql);
   }else{
    //返回资源标识符
    return $this->result = $result;
   }
  }

  /**
   * 查询mysql服务器中所有的数据库
   *
   * @access public
   * @return void
   */
  public function show_databases(){
   $this->query("show databases");
   //打印数据库的总数
   echo "现有数据库:" . mysql_num_rows($this->result);
   echo "<br />";
   $i = 1;
   //循环输出每个数据库的名称
   while($row=mysql_fetch_array($this->result)){
    echo "$i $row[database]" . "<br />";
    $i++;
   }
  }

  /**
   * 查询数据库下所有表名
   *
   * @access public
   * @return void
   */
  public function show_tables(){
   $this->query("show tables");
   //打印表的总数
   echo "数据库{$this->db_database}共有" . mysql_num_rows($this->result) . "张表:";
   echo "<br />";
   //构造数组下标,循环出数据库所有表名
   $column_name = "tables_in_" . $this->db_database;
   $i = 1;
   //循环输出每个表的名称
   while($row=mysql_fetch_array($this->result)){
    echo "$i $row[$column_name]" . "<br />";
    $i++;
   }
  }

  /**
   * 取得记录集,获取数组-索引和关联
   *
    * @access public
   * @return void
   */
  public function fetch_array(){
   return mysql_fetch_array($this->result);
  }

  /**
   * 简化select查询语句
   *
   * @access public
   * @parameter string $table  表名
   * @parameter string $field  字段名
   * @return resource
   */
  public function findall($table, $field = '*') {
   return $this->query("select $field from $table");
  }

  /**
   * 简化delete查询语句
   *
   * @access public
   * @parameter string $table    表名
   * @parameter string $condition  查询的条件
   * @return resource
   */
  public function delete($table, $condition) {
   return $this->query("delete from $table where $condition");
  }

  /**
   * 简化insert插入语句
   *
   * @access public
   * @parameter string $table  表名
   * @parameter string $field  字段名
   * @parameter string $value  插入值
   * @return resource
   */
  public function insert($table, $field, $value) {
   return $this->query("insert into $table ($field) values ('$value')");
  }

  /**
   * 简化update插入语句
   *
   * @access public
   * @parameter string $table      表名
   * @parameter string $update_content  更新的内容
   * @parameter string $condition    条件
   * @return resource
   */
  public function update($table, $update_content, $condition) {
   return $this->query("update $table set $update_content where $condition");
  }

  /**
   * 取得上一步 insert 操作产生的 id
   *
   * @access public
   * @return integer
   */
  public function insert_id() {
   return mysql_insert_id();
  }

  /**
   * 计算结果集条数
   *
   * @access public
   * @return integer
   */
  public function num_rows() {
   return mysql_num_rows($this->result);
  }

  /**
   * 查询字段数量和字段信息
   *
   * @access public
   * @parameter string $table  表名
   * @return void
   */
  public function num_fields($table) {
   $this->query("select * from $table");
   echo "<br />";
   //打印字段数
   echo "字段数:" . $total = mysql_num_fields($this->result);
   echo "<pre>";
   //mysql_fetch_field() 函数从结果集中取得列信息并作为对象返回。
   for ($i = 0; $i < $total; $i++) {
    print_r(mysql_fetch_field($this->result, $i));
   }
   echo "</pre>";
   echo "<br />";
  }

  /**
   * 输出sql语句错误信息
   *
   * @access public
   * @parameter string $message 提示信息
   * @return void
   */
  public function show_error($message='',$sql=''){
   echo "<fieldset>";
   echo "<legend>错误信息提示:</legend><br />";
   echo "<div style='font-size:14px; clear:both; font-family:verdana, arial, helvetica, sans-serif;'>";
   //打印错误原因
   echo "错误原因:" . mysql_error() . "<br /><br />";
   //打印错误信息
   //mysql_error() 函数返回上一个 mysql 操作产生的文本错误信息。
   echo "<div style='height:20px; background:#ff0000; border:1px #ff0000 solid'>";
   echo "<font color='white'>" . $message . "</font>";
   echo "</div>";
   //打印错误sql语句
   echo "<font color='red'><pre>" . $sql . "</pre></font>";
   echo "</div>";
   echo "</fieldset>";
  }
 }

//使用方法

$mysql = new mysql($dbhost, $dbuser, $dbpwd, $dbname, $coding);
?>

本教程是一款利用了ajax php在用户输入完用户名后,就会发送请求给php程序,然后查询数据,判断用户要注册的用户名是不是己经注册或存在重复了,及时的返回提示信息,以免用户填写了一大填表单后,突然提供用户名不能注册己被注册了,这样体验就不好了。本教程就是专门解决这个问题了,能快速的告诉你要注册的用户名是否可以注册。

<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd">
<html xmlns="http://www.111cn.net/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=gb2312" />
<title>ajax+php验证用户名重复代码实例</title>

 代码如下 复制代码

<script language="网页特效">
function createxmlhttprequest(){//创建xmlhttprequest对象
 if(window.activexobject){//ie
  try {
   return new activexobject("microsoft.xmlhttp");
  } catch(e){
   return;
  }
 }else if(window.xmlhttprequest){//mozilla,firefox
  try {
   return new xmlhttprequest();
  } catch(e){
   return;
  }
 }
}

function getrenews(value){//主调函数
 var xmlhttp=createxmlhttprequest();
 var url = "13.php?action=check&title="+value+"&mt="+math.random(300000);
 if (value==""){  
  return false ;
 }
 if (xmlhttp){
  callback = getreadystatehandler(xmlhttp);
  xmlhttp.onreadystatechange = callback;
  xmlhttp.open("get", url,true);
  xmlhttp.send(null);
 }
}

function getreadystatehandler(xmlhttp){//服务器返回后处理函数
 return function (){
  if(xmlhttp.readystate == 4){
   if(xmlhttp.status == 200){
       alert(xmlhttp.responsetext);
     if (xmlhttp.responsetext==1){
       document.getelementbyid("checkid").innerhtml="<font color='red'>对不起,用户名己存在!</font>";     
     }else{
      document.getelementbyid("checkid").innerhtml="可以注册";     
     }      
   }
  }
 }
}

</script>

</head>

<body>

 代码如下 复制代码
<table width="75%" border="0">
  <tr>
    <td width="12%">输入用户名</td>
    <td width="36%">   
      <input type="text" name="username" id="username" onblur="getrenews(this.value);" />
    </td>
    <td width="52%" id="checkid">&nbsp;</td>
  </tr>
</table>

</body>
</html>

把下面代码保存忝13.php

 代码如下 复制代码
<?
checkusername();
function checkusername()
{
 $title = trim($_get['title']);
 if( empty( $title ) )
 {
  return false;
 }
 else
 {
  mysql教程_connect('localhost','root','root');
  mysql_select_db('test');
  mysql_query("set names 'gb2312'");
  $sql = "select * from cn_user where username ='$title'";
  
  $row = mysql_query($sql);
  
  if( mysql_num_rows( $row ) )
  {
   echo 1;
  }
  else
  {
   return null;
  }
 }
}

/*
create table `test`.`cn_user` (
`id` int not null auto_increment ,
`username` varchar( 20 ) not null ,
`times` date null ,
primary key ( `id` )
) engine = myisam

插入数据

insert into `test`.`cn_user` (
`id` ,
`username` ,
`times`
)
values (
null , 'jimmy', null
), (
null , 'www.111cn.net', null
);

*/
?>

 

这款无限分类php 递归函数是一款php 与sql查询递归的方法,很简单就是查询一次当前分类没有没子类,如果有的话就再调用函数本身来操作,如果己经没有子类了就可以返回了。
 代码如下 复制代码
function createsortoptions ($selected=0,$parent_id=0,$n=-1)
{
global $db;
$sql = "select * from `@__article_sort` where `parent_id` = '{$parent_id}'";
$options = ";
static $i = 0;
if ($i == 0)
{
$options .= '<option value="0′ >请选择</option>';
}
$res = $db->query ($sql);
if ($res)
{
$n++;
while ($row = $db->fetch_assoc ($res))
{
$i++;
$options .="<option value='{$row['sort_id']}'";
if ($row['sort_id'] == $selected)
{
$options .=' selected ';
}
$options .=">".str_repeat(' ',$n*3).$row['sort_name']."</option> ";
$options .=createsortoptions ($selected,$row['sort_id'],$n);
}
}
return $options;
}

如果是用smarty模板的朋友可以如下调用

 代码如下 复制代码
//– $tpl->assign('sort_list',createsortoptions ());
//– $tpl->assign('sort_list',createsortoptions ($sort_id));

 

[!--infotagslink--]

相关文章

  • PHP 数据库缓存Memcache操作类

    操作类就是把一些常用的一系列的数据库或相关操作写在一个类中,这样调用时我们只要调用类文件,如果要执行相关操作就直接调用类文件中的方法函数就可以实现了,下面整理了...2016-11-25
  • C#连接SQL数据库和查询数据功能的操作技巧

    本文给大家分享C#连接SQL数据库和查询数据功能的操作技巧,本文通过图文并茂的形式给大家介绍的非常详细,需要的朋友参考下吧...2021-05-17
  • Mybatis Plus select 实现只查询部分字段

    这篇文章主要介绍了Mybatis Plus select 实现只查询部分字段的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2021-09-01
  • php简单数据操作的实例

    最基础的对数据的增加删除修改操作实例,菜鸟们收了吧...2013-09-26
  • C#从数据库读取图片并保存的两种方法

    这篇文章主要介绍了C#从数据库读取图片并保存的方法,帮助大家更好的理解和使用c#,感兴趣的朋友可以了解下...2021-01-16
  • 解决Mybatis 大数据量的批量insert问题

    这篇文章主要介绍了解决Mybatis 大数据量的批量insert问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-01-09
  • Antd-vue Table组件添加Click事件,实现点击某行数据教程

    这篇文章主要介绍了Antd-vue Table组件添加Click事件,实现点击某行数据教程,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-11-17
  • 详解如何清理redis集群的所有数据

    这篇文章主要介绍了详解如何清理redis集群的所有数据,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-02-18
  • Intellij IDEA连接Navicat数据库的方法

    这篇文章主要介绍了Intellij IDEA连接Navicat数据库的方法,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借价值,需要的朋友可以参考下...2021-03-25
  • 在数据库里将毫秒转换成date格式的方法

    在开发过程中,我们经常会将日期时间的毫秒数存放到数据库,但是它对应的时间看起来就十分不方便,我们可以使用一些函数将毫秒转换成date格式。 一、 在MySQL中,有内置的函数from_unixtime()来做相应的转换,使用如下: 复制...2014-05-31
  • vue 获取到数据但却渲染不到页面上的解决方法

    这篇文章主要介绍了vue 获取到数据但却渲染不到页面上的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-11-19
  • C#操作本地文件及保存文件到数据库的基本方法总结

    C#使用System.IO中的文件操作方法在Windows系统中处理本地文件相当顺手,这里我们还总结了在Oracle中保存文件的方法,嗯,接下来就来看看整理的C#操作本地文件及保存文件到数据库的基本方法总结...2020-06-25
  • 如何解决局域网内mysql数据库连接慢

    通过内网连另外一台机器的mysql服务, 确发现速度N慢! 等了大约几十秒才等到提示输入密码。 但是ping mysql所在服务器却很快! 想到很久之前有过类似的经验, telnet等一些服务在连接请求的时候,会做一些反向域名解析(如果...2015-10-21
  • php把读取xml 文档并转换成json数据代码

    在php中解析xml文档用专门的函数domdocument来处理,把json在php中也有相关的处理函数,我们要把数据xml 数据存到一个数据再用json_encode直接换成json数据就OK了。...2016-11-25
  • MySQL快速复制数据库数据表的方法

    某些时候,例如为了搭建一个测试环境,或者克隆一个网站,需要复制一个已存在的mysql数据库。使用以下方法,可以非常简单地实现。假设已经存在的数据库名字叫db1,想要复制一份,命名为newdb。步骤如下:1. 首先创建新的数据库newd...2015-10-21
  • mybatis-plus 处理大数据插入太慢的解决

    这篇文章主要介绍了mybatis-plus 处理大数据插入太慢的解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-12-18
  • MyBatisPlus-QueryWrapper多条件查询及修改方式

    这篇文章主要介绍了MyBatisPlus-QueryWrapper多条件查询及修改方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2022-06-27
  • mysqldump命令导入导出数据库方法与实例汇总

    mysqldump命令的用法1、导出所有库系统命令行mysqldump -uusername -ppassword --all-databases > all.sql 2、导入所有库mysql命令行mysql>source all.sql; 3、导出某些库系统命令行mysqldump -uusername -ppassword...2015-10-21
  • Mysql数据库错误代码中文详细说明

    1005:创建表失败1006:创建数据库失败1007:数据库已存在,创建数据库失败1008:数据库不存在,删除数据库失败1009:不能删除数据库文件导致删除数据库失败1010:不能删除数据目录导致删除数据库失败1011:删除数据库...2013-09-23
  • Oracle使用like查询时对下划线的处理方法

    这篇文章主要介绍了Oracle使用like查询时对下划线的处理方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-03-16