Zen Cart 数据库抽象层

基本示例

下面的查询语句用来检索给定商品的型号:

理解基本示例

这使得 $db 对象在你的代码内可用。($db 对象用来和数据库对话)。

这将指定你想运行的 SQL 查询语句。你可以参考结构表文档来确定特定的字段和表格,或者直接查看数据库结构。

TABLE_PRODUCTS 常量用于支持表格前缀,因为常量会按照位于 /includes/filenames.php 脚本的逻辑以及你的 /includes/configure.php 文件中的 DB_PREFIX 值,自动包含前缀。

注意::productID: 是一个占位符,它将由下一行代码处理:

这实质上占据了前一行(需要运行的查询语句) $sql 变量内容,并且把所有 :productID: 出现的地方用 $theProductID 的值代替,首先要确保 $theProductID 是一个整型的数值。(这是出于安全原因,这样没有人可以对你的脚本进行 SQL 注入)除了 integer 以外的其它 bindVars 数据类型在下面列出。

这行运行了事实的查询,它的运行结果被保存在一个名为 $result 的数据库对象。

这将检查,从查询语句返回是否有超过0条记录。如果是,型号的编号将会在屏幕上打印。如果不是,将显示一条信息。

在多个记录中循环的例子

一个列出你数据库全部货币,同时带有现在配置汇率的简单例子:

理解循环例子

查看之前的描述。

将要被运行的 SQL 查询语句。解释见前面的例子。

注意:在这没有使用 bindVars(),因为这个查询语句不需要参数作为选择标准。

执行查询语句 - 和之前的例子一样。

检查看我们是否有任何的结果。

这开始在从数据库中返回结果循环。

这将简单把检索到的数据输出到屏幕。注意通过 $result->field['字段名'] 来引用各个字段。

这告诉它跳到查询结果的下一个记录,然后回到循环和输出。。。重复一直到 while 条件符合 EOF(文件的结尾,查询结果的结尾)。

如果 IF 语句失败,意味着没有返回结果,然后我们显示一条信息。

找出插入记录的编号

当你运行一条带有 INSERT 语句的查询的时候,你可以通过引用 $db->Insert_ID() 来找出你刚插入的新记录的编号,就像这样:

bindVars 数据类型

bindVars() 参数可以使用以下的数据类型。实践中前四种使用最多。

  • integer - 确保提供的数据是一个整型
  • string - 确保提供的数据是一个字符串,同时给它加引号
  • noquotestring - 确保提供的数据是一个字符串,但不添加引号
  • float - 确保提供的数据是一个小数,同时确保一个空白的字符串被转换成0
  • currency - 类似字符串
  • date - 类似字符串
  • enum - 和 MySql enum 类型类似:
  • regexp - 检查提供的参数被格式成一个正则表达式
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值