HTML表格能不能使用PHP直接转换成EXCEL表格文件

html-css014

HTML表格能不能使用PHP直接转换成EXCEL表格文件,第1张

有以下提示供参考:

1、你可以直接抓取html表格代码,然后用PHP输出,如以下示例:

function outputXlsHeader($data, $file_name = 'export')

{

    header('Content-Type: text/xls')

    header("Content-type:application/vnd.ms-excelcharset=utf-8")

    $str = mb_convert_encoding($file_name, 'gbk', 'utf-8')

    header('Content-Disposition: attachmentfilename="' . $str . '.xls"')

    header('Cache-Control:must-revalidate,post-check=0,pre-check=0')

    header('Expires:0')

    header('Pragma:public')

    $table_data = '<table border="1">'

    foreach ($data as $line) {

        $table_data .= '<tr>'

        foreach ($line as $key => &$item) {

            $item = mb_convert_encoding($item, 'gbk', 'utf-8')

            $table_data .= '<td>' . $item . '</td>'

        }

        $table_data .= '</tr>'

    }

    $table_data .= '</table>'

    echo $table_data

    die()

}

2、先抓取 Html 表格,再用 PhpExcel 类库进行 Excel 表格操作。

1:首先要使用PHP的超全局变量 $_GET 和 $_POST 用于收集表单数据(form-data)

2:然后使用INSERT INTO 语句用于向数据库表中插入新记录。

具体示例:

(1)首先创建了一个名为 "Persons" 的表,有三个列:"Firstname", "Lastname" 以及 "Age"。

<?php

$con = mysql_connect("localhost","peter","abc123")

if (!$con)

{

die('Could not connect: ' . mysql_error())

}

mysql_select_db("my_db", $con)

mysql_query("INSERT INTO Persons (FirstName, LastName, Age)

VALUES ('Peter', 'Griffin', '35')")

mysql_query("INSERT INTO Persons (FirstName, LastName, Age)

VALUES ('Glenn', 'Quagmire', '33')")

mysql_close($con)

?>

(2)其次创建一个 HTML 表单,这个表单可把新记录插入 "Persons" 表。

<html>

<body>

<form action="insert.php" method="post">

Firstname: <input type="text" name="firstname" />

Lastname: <input type="text" name="lastname" />

Age: <input type="text" name="age" />

<input type="submit" />

</form>

</body>

</html>

(3)接着当用户点击上例中 HTML 表单中的提交按钮时,表单数据被发送到 "insert.php"。"insert.php" 文件连接数据库,并通过

$_POST 变量从表单取回值。然后,mysql_query() 函数执行 INSERT INTO 语句,一条新的记录会添加到数据库表中。

<?php

$con = mysql_connect("localhost","peter","abc123")

if (!$con)

{

die('Could not connect: ' . mysql_error())

}

mysql_select_db("my_db", $con)

$sql="INSERT INTO Persons (FirstName, LastName, Age)

VALUES

('$_POST[firstname]','$_POST[lastname]','$_POST[age]')"

if (!mysql_query($sql,$con))

{

die('Error: ' . mysql_error())

}

echo "1 record added"

mysql_close($con)

?>