将OICQ数据转成MYSQL数据


Posted in PHP onOctober 09, 2006

This file is /tmp/phpBeoJQ5 .  
################# You can copy this code to test #################  

<?  
include("include/dbclass.inc"); //可以用 MYSQL.INC 类代替测试  
$q = new DB_Sql;  

$db = $q->Database; //define the database  
mysql_connect('localhost:3306',$q->User,$q->Password);  
?>  

<form method="post" action="<?php echo $PHP_SELF;?>"  
enctype="multipart/form-data">  
<input type="file" name="csv_file"  
value="<?php echo $csv_file;?>">    
terminated by <input type="text" name="terminated"  
value="," size=2><p>  
Which table you want to insert ?  
<?php show_table($db,$table); ?><p>  
<input type="submit" name="submit" value="go">  
</form>  

<?php  

function show_field($db,$table,$num,$selected_field) {  
$result = mysql_db_query($db, "SHOW KEYS FROM $table") or mysql_die();  
$primary = "";  
while ($row = mysql_fetch_array($result))  
if ($row["Key_name"] == "PRIMARY")  
$primary .= "$row[Column_name], ";  
$result = mysql_db_query($db, "SHOW FIELDS FROM $table");  
if (!$result) {  
mysql_die();  
}  
else {  
echo "<select name=field$num>n";  
while ($row= mysql_fetch_array($result)) {  
$selected = ($selected_field == $row["Field"]) ? "selected" : "";  
echo "<option value=" . $row["Field"] . " $selected>" .  
$row["Field"] . "</option>n";  
}  
echo "</select>nn";  
}  
}  

function show_table($db,$selected_table) {  
$tables = mysql_list_tables($db);  
$num_tables = @mysql_numrows($tables);  
if ($num_tables == 0) {  
echo "no table yet";  
}  
else {  
$i = 0;  
echo "<select name=table>n";  
while ($i < $num_tables) {  
$table = mysql_tablename($tables, $i);  
$selected = ($selected_table == $table) ? "selected" : "";  
echo "<option value=$table $selected>$table</option>n";  
$i++;  
}  
echo "</select>nn";  
}  
}  

if ($submit) {  
if(!empty($csv_file) && $csv_file != "none") {  
//$csv_file = stripslashes($csv_file);  
$fp = fopen($csv_file, "r");  

// show first line of the csv file to select dababase table and its fields  
echo "<form method=post action=$PHP_SELF>";  

$csv_data = fgetcsv($fp, 2000, "$terminated");  
$num = count($csv_data);  
for ( $c=0; $c<$num; $c++ ) {  

$field_name[$c] = $csv_data[$c];  
echo $field_name[$c] . "  n";  

$table_field_name = "field$c";  
show_field($db,$table,$c,$$table_field_name);  
echo "<br>";  
}  

// copy the tmp file for next use  
$dest = "/tmp/csv_file.csv";  
copy($csv_file,$dest);  

echo "<input type=hidden name=csv_file value=$dest>n" .  
"<input type=hidden name=table value=$table>n" .  
"<input type=hidden name=terminated value=$terminated>n" .  
"<input type=submit name=submit value=ok></form><p>n";  

// when click 'ok' button ,start insert data  
if ($submit == "ok") {  
$NO = 1;  
while ($csv_data = fgetcsv($fp, 2000, "$terminated")) {  
//$num = count($csv_data);  
for ( $c=0; $c<$num; $c++ ) {  

$table_field_name = "field$c";  
$first_3 = substr($$table_field_name, 0, 3);  
$first_2 = substr($$table_field_name, 0, 2);  
$val_tmp = ($first_3 == "fid" || $first_3 == "int"  
|| $first_2 == "id") ?  
$csv_data[$c] : "'" . $csv_data[$c] . "'";  
$val .= $val_tmp . ",";  
$var .= $$table_field_name . ",";  
}  
$val = substr($val, 0, -1);  
$var = substr($var, 0, -1);  
$query = "INSERT INTO $table ($var) VALUES ($val)";  
$val = "";  
$var = "";  
$q->query($query);  
echo "NO. $NO $query<p>";  
$NO++;  
}  
fclose($fp);  
}  

}  
}  
?>  

PHP 相关文章推荐
Apache, PHP在Windows 9x/NT下的安装与配置 (二)
Oct 09 PHP
php checkdate、getdate等日期时间函数操作详解
Mar 11 PHP
zend framework多模块多布局配置
Feb 26 PHP
在PHP中使用redis
Nov 04 PHP
PHP获取文件相对路径的方法
Feb 26 PHP
php socket通信(tcp/udp)实例分析
Feb 14 PHP
Zend Framework+smarty用法实例详解
Mar 19 PHP
php简单统计中文个数的方法
Sep 30 PHP
php json相关函数用法示例
Mar 28 PHP
php mysql数据库操作类(实例讲解)
Aug 06 PHP
php识别翻转iphone拍摄的颠倒图片
May 17 PHP
TP5(thinkPHP5框架)基于bootstrap实现的单图上传插件用法示例
May 29 PHP
PHP中一个控制字符串输出的函数
Oct 09 #PHP
PHP用户指南-cookies部分
Oct 09 #PHP
PHP 存取 MySQL 数据库的一个例子
Oct 09 #PHP
如何跨站抓取别的站点的页面的补充
Oct 09 #PHP
截获网站title标签之家内容的例子
Oct 09 #PHP
怎样在PHP中通过ADO调用Asscess数据库和COM程序
Oct 09 #PHP
怎样在php中使用PDF文档功能
Oct 09 #PHP
You might like
php使用codebase生成随机数
2014/03/25 PHP
PHP如何搭建百度Ueditor富文本编辑器
2018/09/21 PHP
js获取网页高度(详细整理)
2012/12/28 Javascript
javascript拖拽上传类库DropzoneJS使用方法
2013/12/05 Javascript
flash遮住div问题的正确解决方法
2014/02/27 Javascript
js实现简易的单数字随机抽奖(0-9)
2020/03/19 Javascript
基于jQuery实现简单的折叠菜单效果
2015/11/23 Javascript
JS制作图形验证码实现代码
2020/10/19 Javascript
微信小程序中如何计算距离某个节日还有多少天
2019/07/15 Javascript
微信小程序缓存支持二次开发封装实现解析
2019/12/16 Javascript
js实现图片实时时钟
2020/01/15 Javascript
javascript使用Blob对象实现的下载文件操作示例
2020/04/18 Javascript
跟老齐学Python之折腾一下目录
2014/10/24 Python
python查询mysql中文乱码问题
2014/11/09 Python
Python读写txt文本文件的操作方法全解析
2016/06/26 Python
python实现pdf转换成word/txt纯文本文件
2018/06/07 Python
python中copy()与deepcopy()的区别小结
2018/08/03 Python
解决Django后台ManyToManyField显示成Object的问题
2019/08/09 Python
python应用文件读取与登录注册功能
2019/09/23 Python
python 普通克里金(Kriging)法的实现
2019/12/19 Python
CSS3中HSL和HSLA的简单使用示例
2015/07/14 HTML / CSS
浅谈css3新单位vw、vh、vmin、vmax的使用详解
2017/12/01 HTML / CSS
html5理解head_动力节点Java学院整理
2017/07/13 HTML / CSS
美国家用电器和电子产品商店:Abt
2016/09/06 全球购物
J2EE中的容器都包括哪些
2013/08/21 面试题
幼教简历自我评价
2014/01/28 职场文书
优秀教导主任事迹材料
2014/05/09 职场文书
校园环保建议书
2014/05/14 职场文书
本科毕业生应聘自荐信范文
2014/06/26 职场文书
2015年女生节活动总结
2015/02/27 职场文书
学雷锋献爱心活动总结
2015/05/11 职场文书
2015社区健康教育工作总结
2015/05/20 职场文书
婚礼家长致辞
2015/07/27 职场文书
2016年中学清明节活动总结
2016/04/01 职场文书
Vue.js 带下拉选项的输入框(Textbox with Dropdown)组件
2021/04/17 Vue.js
css常用字体属性与背景属性介绍
2022/02/28 HTML / CSS