读取mysq数据库l数据,并使用dataview显示
来自《sencha touch权威指南》,约198页开始
通过php脚本,可以将mysql数据库的数据作为json数据格式进行读取。
(1)php代码(bookinfo.php):
<?php
$link = mysql_connect("localhost","root","123456");
mysql_select_db("jiyale");
mysql_query("SET NAMES UTF8"); $result = mysql_query('select * from books',$link);
if(!$result){
die('{"success":false,"message":"读取数据失败"}');
}
if(mysql_num_rows($result)>0){
while($obj = mysql_fetch_object($result)){
$arr[] = $obj;
}
echo '{"success": true, "books": '.json_encode($arr).'}';
}else{
echo '{"success": false,"message":"读取数据失败","books":""}';
} ?>
(2)app.js代码:
Ext.require(['Ext.data.Store','Ext.data.reader.Xml','Ext.dataview.DataView','Ext.MessageBox']);
Ext.application({
name: 'MyApp',
icon: 'images/icon.png',
glossOnIcon: false,
phoneStartupScreen: 'images/phone_startup.png',
tabletStartupScreen: 'images/tablet_startup.png', launch: function(){
Ext.define('BookInfo',{
extend: 'Ext.data.Model',
config: {
fields:['image_url','book_name','author','description']
}
}); var bookStore = Ext.create('Ext.data.Store',{
model: 'BookInfo',
autoLoad: true,
proxy: {
type: 'ajax',
url: 'bookinfo.php',
reader: {
type: 'json',
rootProperty: 'books'
}
},
listeners: {
load: function(store,records,successful){
if(!successful){
Ext.Msg.alert(bookStore.getProxy().getReader().rawData.message);
}
}
}
}); var bookTemplate = new Ext.XTemplate(
'<tpl for=".">',
'<div class="Book_img"><img src="{image_url}" /></div>',
'<div class="Book_info">',
'<h2>{book_name}</h2><br /><h3>作者:{author}</h3>',
'<p>{description:ellipsis(50)}</p>',
'</div>',
'</tpl>'
); var dataview = Ext.create('Ext.DataView',{
store: bookStore,
itemTpl: bookTemplate,
baseCls: 'Book',
}); Ext.Viewport.add(dataview);
}
});
(3)index.html代码:
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>sencha touch</title>
<link rel="stylesheet" type="text/css" href="css/sencha-touch.css" />
<script type="text/javascript" src="sencha-touch-debug.js"></script>
<script type="text/javascript" src="app.js"></script>
<style type="text/css">
.Book-item{padding:10px 0 30px 178px;border-top: 1px solid #ccc;}
.Book-item h2{font-weight: bold;}
.Book-item .Book_img{position: absolute;left: 10px;}
.Book-item .Book_img img{max-width: 159px;}
.Book-itme .Book_info{position: absolute;padding-left: 5px;font-size: 12px;}
.x-item-selectex{background-color: blue;color: white;} </style>
</head>
<body> </body>
</html>
读取mysq数据库l数据,并使用dataview显示的更多相关文章
- 读取mysql数据库的数据,转为json格式
# coding=utf-8 ''' Created on 2016-10-26 @author: Jennifer Project:读取mysql数据库的数据,转为json格式 ''' import ...
- AndroidStudio 中查看获取MD5和SHA1值以及如何查看手机应用信息以及读取*.db数据库里面数据
查看获取MD5和SHA1值具体操作方式链接 查看获取MD5和SHA1值实际操作命令CMD语句: C:\Users\Administrator>cd .android C:\Users\Admin ...
- C# 读取Oracle数据库视图数据异常问题处理
会出现类似现在这种提示的错误 System.Data.OracleClient 需要 Oracle 客户端软件 version 8.1.7 或更高版本 情况1.开发过程中遇到这种问题解决 由于.net ...
- wamp中修改后mysq数据库l闪退无法登陆解决办法
WampServer安装后密码是空的, 修改一般有三种方式: 一是通过phpMyAdmin直接修改: 二是使用WAMP的MySql控制台修改. 三是重置密码 第一种: 1 ...
- Excel2003读取sqlserver数据库表数据(图)
- Jmeter接口测试,往MySQL数据库写数据时,中文显示???
调Jmeter接口测试,请求字段输入中文,查看数据库插入情况, 发现数据库显示 ???
- 使用python将mysql数据库的数据转换为json数据
由于产品运营部需要采用第三方个推平台,来推送消息.如果手动一个个键入字段和字段值,容易出错,且非常繁琐,需要将mysql的数据转换为json数据,直接复制即可. 本文将涉及到如何使用Python访问M ...
- 利用PHP实现登录与注册功能以及使用PHP读取mysql数据库——以表格形式显示数据
登录界面 <body><form action="login1.php" method="post"><div>用户名:&l ...
- Java读取oracle数据库中blob字段数据文件保存到本地文件(转载)
转自:https://www.cnblogs.com/forever2698/p/4747349.html package com.bo.test; import java.io.FileOutput ...
随机推荐
- shell中date命令对month进行加减操作的bug
shell脚本中如何取上个月的月份呢?很容易能想到下面的命令: date +%Y%m -d '-1 month' 或者 date +%Y%m -d 'last month' 在大部分情况下这个命令 ...
- UVALive7261(2015ACM/ICPC北京赛区现场赛A)
题目链接:https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_ ...
- Java程序员之Spring(一) 入门
一. Spring 原理讲解 Spring 是一个轻量容器框架(开源):Spring的核心是 IoC(控制反转) 和 AOP(面向切面编程): Spring 由7个模块组成: Spring Core ...
- 一种SequenceFile的格式研究
最近仔细研究了以下公司中使用的SequenceFile文件格式,SequenceFile的格式比较紧凑,实现了从中间读取文件内容(便于hadoop将文件进行适当地切分),同时也可以支持仅读取文件的元数 ...
- Go - 常量与运算符
常量的定义 1. 常量的值在编译的时候就已经确定.所以,在定义的时候就必须赋值 2. 使用 const 关键字来声明常量.赋值形式与变量类似: // 标准定义 const PI int = 3.14 ...
- enq:TM-contention
enq:TM-contention 2011-08-04 15:55:17 分类: Linux 7.1 enq:TM-contention 执行dml期间,为防止对与dml相关的对象进 ...
- 解决Vmware workstation上不能安装Hyper-V的问题
从今天开始,博主正式开始学习微软相关的知识了.众所周知,微软的虚拟化技术Hyper-V现在也很火.可是博主也没有一台服务器来装Hyper-V.于是想到在自己的PC上先装一个Vmware worksta ...
- Node.js的适用场景
高并发.聊天.实时消息推送.服务器做前端资源压缩
- django之使用jquery完成ajax
使用Ajax 使用视图通过上下文向模板中传递数据,需要先加载完成模板的静态页面,再执行模型代码,生成最张的html,返回给浏览器,这个过程将页面与数据集成到了一起,扩展性差 改进方案:通过ajax的方 ...
- 10.Redis 性能测试
转自:http://www.runoob.com/redis/redis-tutorial.html Redis 性能测试是通过同时执行多个命令实现的. 语法 redis 性能测试的基本命令如下: r ...