将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 相关文章推荐
5.PHP的其他功能
Oct 09 PHP
PHP通用分页类page.php[仿google分页]
Aug 31 PHP
创建数据库php代码 用PHP写出自己的BLOG系统
Apr 12 PHP
php图片处理:加水印、缩略图的实现(自定义函数:watermark、thumbnail)
Dec 02 PHP
Views rows style模板重写代码
May 16 PHP
用php实现选择排序的解决方法
May 04 PHP
解析Linux下Varnish缓存的配置优化
Jun 20 PHP
php将金额数字转化为中文大写
Jul 09 PHP
Yii2框架RESTful API 格式化响应,授权认证和速率限制三部分详解
Nov 10 PHP
php实现查询功能(数据访问)
May 23 PHP
PHP7内核CGI与FastCGI详解
Apr 14 PHP
php 使用ActiveMQ发送消息,与处理消息操作示例
Feb 23 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 gd2 上传图片/文字水印/图片水印/等比例缩略图/实现代码
2010/05/15 PHP
php curl的深入解析
2013/06/02 PHP
ThinkPHP使用心得分享-上传类UploadFile的使用
2014/05/15 PHP
PHP常用正则表达式集锦
2014/08/17 PHP
分享ThinkPHP3.2中关联查询解决思路
2015/09/20 PHP
PHP foreach遍历多维数组实现方式
2016/11/16 PHP
PHP面向对象程序设计之类与反射API详解
2016/12/02 PHP
getElementsByTagName vs selectNodes效率 及兼容的selectNodes实现
2010/02/26 Javascript
11个用于提高排版水平的基于jquery的文字效果插件
2012/09/14 Javascript
网页实时显示服务器时间和javscript自运行时钟
2014/06/09 Javascript
JS仿iGoogle自定义首页模块拖拽特效的方法
2015/02/13 Javascript
jQuery使用empty()方法删除元素及其所有子元素的方法
2015/03/26 Javascript
基于jquery实现的树形菜单效果代码
2015/09/06 Javascript
Windows下用PyCharm和Visual Studio开始Python编程
2015/10/26 Javascript
jquery彩色投票进度条简单实例演示
2020/07/23 Javascript
jQuery ajax请求返回list数据动态生成input标签,并把list数据赋值到input标签
2016/03/29 Javascript
微信小程序实现分享朋友圈的图片功能示例
2019/01/18 Javascript
小程序云开发教程如何使用云函数实现点赞功能
2019/05/18 Javascript
layer.open组件获取弹出层页面变量、函数的实例
2019/09/25 Javascript
VUE.js实现动态设置输入框disabled属性
2019/10/28 Javascript
JavaScript数组及常见操作方法小结
2019/11/13 Javascript
nodejs中使用worker_threads来创建新的线程的方法
2021/01/22 NodeJs
Python实现模拟浏览器请求及会话保持操作示例
2018/07/30 Python
使用Python实现微信提醒备忘录功能
2018/12/04 Python
pytorch 转换矩阵的维数位置方法
2018/12/08 Python
Python selenium根据class定位页面元素的方法
2019/02/26 Python
python中pip的使用和修改下载源的方法
2019/07/08 Python
Python 使用指定的网卡发送HTTP请求的实例
2019/08/21 Python
python多继承(钻石继承)问题和解决方法简单示例
2019/10/21 Python
医学护理毕业生自荐信
2013/11/07 职场文书
外企财务年会演讲稿
2014/01/03 职场文书
建党伟业电影观后感
2015/06/01 职场文书
雷锋之歌观后感
2015/06/10 职场文书
中小学教师继续教育心得体会
2016/01/19 职场文书
《时代广场的蟋蟀》读后感:真挚友情,温暖世界!
2020/01/08 职场文书
解析laravel使用workerman用户交互、服务器交互
2021/04/28 PHP