admin prefile. 将languages/english.php 编码设置为UTF-8
编辑*.SQL文件. 看是否需要加前缀. 首行设置SET NAMES ‘utf8′;
在PHPMYADMIN中运行.
OVER.
admin prefile. 将languages/english.php 编码设置为UTF-8
编辑*.SQL文件. 看是否需要加前缀. 首行设置SET NAMES ‘utf8′;
在PHPMYADMIN中运行.
OVER.
默认的属性值都是static,静态。就不用多说了。最关键的是
relative(相对)以及absolute(绝对)。
往往我们如果是COPY别人的代码,会把absolute属性与left、top配合起来制作相关的“悬浮层”效果。然而有时候我们需要针对某一个容器的悬浮效果,而不是针对窗口的。这时候通过高度、宽度的计算不但麻烦,而且几乎无法完美实现效果。我一开始也无能为力,后来发现只要把其上一级的样式属性position设置为relative就可以了。
也就是说,position的属性值的效果,直接受其容器样式中position属性值影响。
例如如下A-B的嵌套结构
最常见的mysqldump使用可能制作整个数据库的一个备份:
mysqldump –opt database > backup-file.sql
但是它对用来自于一个数据库的信息充实另外一个MySQL数据库也是有用的:
mysqldump –opt database | mysql –host=remote-host -C database
由于mysqldump导出的是完整的SQL语句,所以用mysql客户程序很容易就能把数据导入了:
shell> mysqladmin create target_db_name
shell> mysql target_db_name < backup-file.sql
就是
shell> mysql 库名 < 文件名
================================
几个常用用例:
1.导出整个数据库
mysqldump -u 用户名 -p 数据库名 > 导出的文件名
mysqldump -u wcnc -p smgp_apps_wcnc > wcnc.sql
2.导出一个表
mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名
mysqldump -u wcnc -p smgp_apps_wcnc users> wcnc_users.sql
3.导出一个数据库结构
mysqldump -u wcnc -p -d –add-drop-table smgp_apps_wcnc >d:\wcnc_db.sql
-d 没有数据 –add-drop-table 在每个create语句之前增加一个drop table
4.导入数据库
常用source 命令
进入mysql数据库控制台,
如mysql -u root -p
mysql>use 数据库
然后使用source命令,后面参数为脚本文件(如这里用到的.sql)
mysql>source d:\wcnc_db.sql
1.导出结构不导出数据
mysqldump -d 数据库名 -uroot -p > xxx.sql
2.导出数据不导出结构
mysqldump -t 数据库名 -uroot -p > xxx.sql
3.导出数据和表结构
mysqldump 数据库名 -uroot -p > xxx.sql
4.导出特定表的结构
mysqldump -uroot -p -B数据库名 –table 表名 > xxx.sql
C:\Documents and Settings\Administrator>
mysqldump -h192.168.0.81 –hex-blob=true -uroot -p database tablename >d:\blob.sql
mysqldump -h192.168.0.81 -uroot -p –hex-blob=true database> d:\coolink.sql
sideboxes/tpl_categories.php
if ($box_categories_array[$i]['current']) {
if ($box_categories_array[$i]['has_sub_cat']) {
$content .= '' . $box_categories_array[$i]['name'] . '';
} else {
$content .= '' . $box_categories_array[$i]['name'] . '';
}
} else {
$content .= '< img src="../images/menu/' . $new_style . '.jpg" />'/* . 'top down'*/;
}
1, 创建一个新文件 随意命名 没重复就行 例如:tpl_product_info_similar.php
复制该文件到includes\templates\你的模板\templates\目录下
打开该文件,把以下代码复制进去并保存
» Read more: 在商品页随机显示一定数量的同类产品
阅读代码笔记:
1\newimg imgedit等值是提交表单对应的表单值.
2\初步判断,dmz_cache的图片也是这个ih组件来控制来生成.
3\所有图片的操作,都是由这个image handles模块来控制,而那个includes的下面的configure.php都是一个路径变量的设置,以及数据库连接参数的设置.
4\include下面的class 以及Fuction都是一些常用操作功能的设置.包括.图片一部份节能处理操作.
5\图片上传调用的类是includes/class下面的upload.php类文件.
6\阅读数据库,熟悉数据表,特别是数据表名以数据字段,熟悉之,更方便读懂源代码!
7\刚刚发现,俺一直疑惑看源代码里的SQL语句时,总找不到执行操作的表.原来是SQL语句中都加了前缀,例如table_tablename 等.正克确而实际的数据名是tablename.
现在问题就是仍然搞明,他们文件是如何调用与转移的?明白这点,就好写代码?
8\经过测试,现在已经解决图片复制其它目录的问题.而且经过观察,相应的img录,dmz_cache目录也可以看到生成的缓存图片.感觉工作已经完成一大半.只余下最后一步,就是将生成的加水印的图片放到本地网站的images目录下面,方便以后查询调用.并且,要判断,本地有的,就从本地但读取,本地没有的,才从远程的图片目录调用.是事情就这样简单吗?
9\那么俺应该再精读源代码,如果以前是走马观花地阅读,是大概级阅读,那么现在就是代码级阅读.那就先从Fuction,再读class.再读ih2模块.
10\ 阿mark说要改变那些加密过的字符为自已定制的字符,这个比较难实现.因为MD5加密的字符都是随机的.不能让MD5加密的字符完全符合自已的要求.除非取消MD5加密.而将后缀名改为按提交时间或者按产品目录分类来定义吧.
11\ Zen Cart是基于面向对象,也就是OOP来开发的.刚刚发觉这种写法的一样好处,就是代码比较精练,没有冗余代码设置.
» Read more: ZenCart源代码的思想笔记
http://code.google.com/p/namebench/
与另一款网站测速工具 Pingdom Tools 不同的是,HostTracker 采用分布式的测速方案。通过布置在全球范围内的几十台服务器来测试网站的访问速度,更有针对性和参考性。
相比 Pingdom Tools 强悍的网页元素的加载测试,HostTracker 在这方面没有多少优势。但重要的是它能了解不同网络环境下的访问速度,包括能否成功访问,响应时间,数据传输速度等参数。两款工具结合测试,效果更佳。
此外,HostTracker 支持站外按钮调用,点击右侧工具 “Get button code” 即可配置。允许自定义调用图标和文字信息,非常方便。
官方主页:host-tracker.com
ecshop电子商务系统里面,ecshop收货人信息其实是存在很大缺陷的,ecshop 二次开发的过程中,我们也常常修改ecshop收货人信息.比如卖花的行业,他们需要知道送花人,送花人的电话和送花的确切时间, 首先是在flow.php?step=consignee里面,就是用来增加收货人地址的.
1:首先二次开发修改ecshop数据库
alter table dyh_order_info add column buy_real_name varchar(200), add column buy_real_phone varchar(20)
2:在consignee.lbi中增加
3:ecshop的flow.php中增加以下
‘buy_real_name’ => empty($_POST['buy_real_name']) ? ” : $_POST['buy_real_name'],
‘buy_real_phone’ => empty($_POST['buy_real_phone']) ? ” : $_POST['buy_real_phone'],
4:在flow.php中的done中,记录订货人信息
5:order_info.htm中显示订货人信息
通过以上思路和流程,我们就完成了ecshop二次开发收货人插件的制作.
DELETE FROM configuration WHERE configuration_key = 'LARGE_IMAGE_MAX_WIDTH';
DELETE FROM configuration WHERE configuration_key = 'LARGE_IMAGE_MAX_HEIGHT';
DELETE FROM configuration WHERE configuration_key = 'SMALL_IMAGE_FILETYPE';
DELETE FROM configuration WHERE configuration_key = 'SMALL_IMAGE_BACKGROUND';
DELETE FROM configuration WHERE configuration_key = 'WATERMARK_SMALL_IMAGES';
DELETE FROM configuration WHERE configuration_key = 'SMALL_IMAGE_QUALITY';
DELETE FROM configuration WHERE configuration_key = 'MEDIUM_IMAGE_FILETYPE';
DELETE FROM configuration WHERE configuration_key = 'MEDIUM_IMAGE_BACKGROUND';
DELETE FROM configuration WHERE configuration_key = 'WATERMARK_MEDIUM_IMAGES';
DELETE FROM configuration WHERE configuration_key = 'MEDIUM_IMAGE_QUALITY';
DELETE FROM configuration WHERE configuration_key = 'LARGE_IMAGE_FILETYPE';
DELETE FROM configuration WHERE configuration_key = 'LARGE_IMAGE_BACKGROUND';
DELETE FROM configuration WHERE configuration_key = 'WATERMARK_LARGE_IMAGES';
DELETE FROM configuration WHERE configuration_key = 'LARGE_IMAGE_QUALITY';
DELETE FROM configuration WHERE configuration_key = 'WATERMARK_GRAVITY';
DELETE FROM configuration WHERE configuration_key = 'IMAGE_MANAGER_HANDLER';
DELETE FROM configuration WHERE configuration_key = 'DIR_FS_IMAGE_MAGICK';
DELETE FROM configuration WHERE configuration_key = 'DIR_FS_IMAGE_MAGICK_LIB';
DELETE FROM configuration WHERE configuration_key = 'SHOW_UPLOADED_IMAGES';
DELETE FROM configuration WHERE configuration_key = 'CLONE_IMAGE_DIR_OWNER';