将OICQ数据转成MYSQL数据_php教程-查字典教程网
将OICQ数据转成MYSQL数据
将OICQ数据转成MYSQL数据
发布时间:2016-12-29 来源:查字典编辑
摘要:Thisfileis/tmp/phpBeoJQ5.#################Youcancopythiscodetotest####...

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教程学习
    热门php教程学习
    编程开发子分类