重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
$db = mysql_connect("localhost", "root", "password");
创新互联公司主营元宝山网站建设的网络公司,主营网站建设方案,重庆APP开发公司,元宝山h5微信小程序定制开发搭建,元宝山网站营销推广欢迎元宝山等地区企业咨询
mysql_select_db("mydb",$db);
if (isset($_POST['name'])) {
echo "你输入的用户是:". $_POST['name'];
}
$result = mysql_query("SELECT * FROM employees WHERE name='".$_POST['name']."'",$db);
while ($fields = mysql_fetch_row($result)) {
$data[] = $filelds;
}
if(!empty($data)){
foreach($data as $val){
foreach($val as $k = $v){
echo $k." ".$v."br /";
}
echo "br /hr /";
}
}else{
echo "此用户下没有数据。";
}
可能需要修改的地方,查询条件我是使用的name,根据你数据库中的字段名做一下更改,输出信息没有太多的处理,可以使用表格输出或是其它样式,可以自己调整一下,HTML部分省略了。
ThinkPHP的字段映射功能可以让你在表单中隐藏真正的数据表字段,而不用担心放弃自动创建表单对象的功能,假设我们的User表里面有username和email字段,我们需要映射成另外的字段,定义方式如下:
Class
UserModel
extends
Model{
protected
$_map
=
array(
'name'
='username',
//
把表单中name映射到数据表的username字段
'mail'
='email',
//
把表单中的mail映射到数据表的email字段
);
}
这样,在表单里面就可以直接使用name和mail名称作为表单数据提交了。在保存的时候会字段转换成定义的实际数据表字段。字段映射还可以支持对主键的映射。
如果我们需要把数据库中的数据显示在表单中,并且也支持字段映射的话,需要对查询的数据进行一下处理,处理方式是调用Model类的parseFieldsMap方法,例如:
//
实例化User模型
$User
=
M('User');
$data
=
$User-find(3);
这个时候取出的data数据包含的是实际的username和email字段,为了方便便表单输出,我们需要处理成字段映射显示在表单中,就需要使用下面的代码处理:
$data
=
$User-parseFieldsMap($data);
这样一来,data数据中就包含了name和mail字段数据了,而不再有username和email字段数据了。
4
================================补充回答
1. 如果对于数据量过万的,每次这样操作肯定要慢些,因为要生成按钮,并响应代码,数据越大消耗的资源越多。
2. 其实质上说,无论是button 还是用 span 来模拟显示按钮,事件响应方式都是一致的,以下是span按钮的响应代码:
style
.a{border-width:1px 2px 2px 1px;border-style:outset;}
.over{border-width:2px;border-style:inset;}
/style
script
function doEcho(i)
{
alert(i);
}
/script
?php
$buttArr = array('a','c','f','df','sd','sdd');
echo 'form';
for($i=0;$icount($buttArr);$i++)
{
echo 'span id="button_' .$i. '" class="a" onclick="doEcho(\'' . $buttArr[$i] . '\')" button_' .$i. '/span ';
}
?
/form
ThinkPHP 类库说明
ThinkPHP 基类库
类库是 ThinkPHP 的核心部分,而 ThinkPHP 又通过基类库的概念把所有系统类库都集中在一起管理。核心基类库包括完成框架的通用性开发而必须的基础类和常用工具类。
基类库位于 ThinkPHP 系统目录下面的 Lib/Think 目录内,由下面几个部分组成:
Core:核心类库包
Db:数据库类库包
Exception:异常处理类库包
Template:内置模板引擎类库包
Util:系统工具类库包
Core 核心类库
Core 核心类库包括如下类文件(目录):
Think.class.php:系统基类
App.class.php:应用程序类,执行应用管理
Action.class.php:控制器基类
Model.class.php:模型基类
Model/AdvModel.class.php:高级模型类
Model/RelationModel.class.php:关联模型类
Model/ViewModel.class.php:视图模型类
Log.class.php:日志处理类
View.class.php:视图输出类
Db 数据库类库
Db 核心类库包括如下类文件(目录):
Db.class.php:数据库中间层实现类
Driver/DbMysql.class.php:Mysql 数据库驱动类
Driver/DbMysqli.class.php:Mysqli 数据库驱动类
Driver/DbPdo.class.php:PDO 数据库驱动类
Driver/DbPgsql.class.php:Pgsql 数据库驱动类
Driver/DbSqlite.class.php:Sqlite 数据库驱动类
Driver/DbOracle.class.php:Oracle 数据库驱动类
Driver/DbMssql.class.php:Mssql 数据库驱动类
Driver/DbIbase.class.php:Ibase 数据库驱动类
在 Driver 目录下针对不同数据库有不同的数据库驱动类,然后再通过 Db.class.php 数据库中间层实现类加工后,展现在 ThinkPHP 使用者面前的就是统一的数据库操作模型。
Exception 异常处理类库
Exception 异常处理类库包只包含一个类文件:ThinkException.class.php 系统异常基类。
Template 内置模板引擎类库
Template 内置模板引擎类库包括如下类文件(目录):。
ThinkTemplate.class.php:内置模板引擎类
TagLib.class.php:标签库基类
TagLib/TagLibCx.class.php:CX 标签库解析类
TagLib/TagLibHtml.class.php:HTML 标签库解析类
Util 系统工具类库包
Util 系统工具类库包提供了系统开发中一些基本的工具,具体包括:
Behavior.class.php:行为扩展基类
Cache.class.php:缓存管理类
Cookie.class.php:Cookie 管理类
Debug.class.php:系统调试类
Dispatcher.class.php:URL 解析、路由和调度管理类
HtmlCache.class.php:静态缓存类
Session.class.php:Session 管理类
Widget.class.php:插件应用类
Cache/:各类型缓存类文件目录,包括:文件缓存类、Sqlite缓存类、Apachenote缓存类、Memcache缓存类、Xcache缓存类、数据库类型缓存类等
Template/:模板引擎解析类目录,包括:EaseTemplate模板引擎解析类、TemplateLite模板引擎解析类、Smart模板引擎解析类、Smarty模板引擎解析类、Think模板引擎解析类
ThinkPHP 扩展类库
ThinkPHP 官方网站额外提供了很多的基类库扩展,这些扩展类库必须放置于 ThinkPHP系统目录/Lib 目录下的 ORG 或 Com 类库包内进行管理。
对于需要添加进入扩展类库包的类库,可以直接带路径拷贝类库文件到扩展类库管理目录就可以使用了。例如要使用 Util/Page.class.php 分页扩展类库,直接到扩展类库管理目录形成 Lib/ORG/Util/Page.class.php 即可。
对扩展类库需要使用 import 指令导入方可使用,具体参考本节内容《ThinkPHP import 类库导入》。
应用类库
应用类库是指项目中自己定义或者使用的类库。应用类库目录位于项目目录下面的 Lib 目录。
以上是 ThinkPHP 核心 —— 类库的的介绍。了解 ThinkPHP 类库有助于我们了解 ThinkPHP 的层次结构和工作原理,必要的时候参考这些类库的源代码也有助于问题的解决。
前提是你数据源配置正确.
映射文件中:
注意看class属性:
name是你的model类(包名+类名)
table是你数据库里的表名
catalog是你的数据库名
......
数据映射模式使您能更好的组织你的应用程序与数据库进行交互。
数据映射模式将对象的属性与存储它们的表字段间的结合密度降低。数据映射模式的本质就是一个类,它映射或是翻译类的属性或是方法到数据库的相应字段,反之亦然。
数据映射的作用(工作)就在于能对双方所呈现出的信息的理解,并能对信息的存取进行控制,如根据存储在数据表中的信息重建新的域对象,或是用域对象的信息来更新或删除数据表中的相关数据。
对于面向对象代码与数据库表和字段间的映射关系的存储有多种实现方式。其中一种可能的方法就通过手工编码将这种映射关系存储在数据映射类中。
另一种可选的方法是用PHP的数组并将其编码为类本身。这个类也能外源获取数据,如INI或是XML文件。