重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
写个简单的吧
创新互联建站专注于始兴企业网站建设,成都响应式网站建设公司,商城开发。始兴网站建设公司,为始兴等地区提供建站服务。全流程按需规划网站,专业设计,全程项目跟踪,创新互联建站专业和态度为您提供的服务
a.php
form method="post" action="b.php"
input type="text" name="test" value=""这是你要提交的数据
input type="submit" value="提交"
/form
点击提交按钮就跳到b页面了
b.php
echo $_POST['test'];
打印a提交过来的数据,如果有数据你就自己写sql语句存入数据库就好了
可以使用excel插件,这个相对复杂。
说个非常简单的,一般ecel文件可以保存成为csv文件,然后你就可以进行csv的文件处理。
csv的组成一般是
col1,col2,col3
col12,col22,col33
可见,只要使用explode 两次就可以得到一个
array(
array(ccol1,col2,col3),
array(col12,col22,col33);
)
二维数组,然后批量导入这个二维数组就很简单了。
导出是一样的额,写入一个,想办法把取出的数据构造成
col1,col2,col3
col12,col22,col33
这样的字符串,然后使用header函数即可导出csv文件,csv可以使用excel直接打开
纯手打,望采纳!
第一,在前台html页面进行上传文件:如:
复制代码代码如下:
form method="post" action="php文件"enctype="multipart/form-data"
h3导入Excel表:/h3input type="file" name="file_stu" /
input type="submit" value="导入"/
/form
第二,在对应的php文件进行文件的处理
复制代码代码如下:
if (! empty ( $_FILES ['file_stu'] ['name'] ))
{
$tmp_file = $_FILES ['file_stu'] ['tmp_name'];
$file_types = explode ( ".", $_FILES ['file_stu']['name'] );
$file_type = $file_types [count ( $file_types ) - 1];
/*判别是不是.xls文件,判别是不是excel文件*/
if (strtolower ( $file_type ) !="xls")
{
$this-error ( '不是Excel文件,重新上传' );
}
/*设置上传路径*/
$savePath = SITE_PATH . '/public/upfile/Excel/';
/*以时间来命名上传的文件*/
$str = date ( 'Ymdhis' );
$file_name = $str . "." . $file_type;
/*是否上传成功*/
if (! copy ( $tmp_file, $savePath . $file_name ))
{
$this-error ( '上传失败' );
}
/*
*对上传的Excel数据进行处理生成编程数据,这个函数会在下面第三步的ExcelToArray类中
注意:这里调用执行了第三步类里面的read函数,把Excel转化为数组并返回给$res,再进行数据库写入
*/
$res = Service ( 'ExcelToArray' )-read ( $savePath . $file_name );
/*
重要代码解决Thinkphp M、D方法不能调用的问题
如果在thinkphp中遇到M 、D方法失效时就加入下面一句代码
*/
//spl_autoload_register ( array ('Think', 'autoload' ) );
/*对生成的数组进行数据库的写入*/
foreach ( $res as $k = $v )
{
if ($k != 0)
{
$data ['uid'] = $v[0];
$data ['password']= sha1 ( '111111' );
$data ['email'] =$v [1];
$data ['uname'] = $v [3];
$data ['institute'] = $v [4];
$result = M ( 'user' )-add( $data );
if (! $result)
{
$this-error ( '导入数据库失败' );
}
}
}
}
第三:ExcelToArrary类,用来引用phpExcel并处理Excel数据的
复制代码代码如下:
class ExcelToArrary extends Service{
public function __construct() {
/*导入phpExcel核心类 注意:你的路径跟我不一样就不能直接复制*/
include_once('./Excel/PHPExcel.php');
}
/**
* 读取excel $filename 路径文件名$encode 返回数据的编码默认为utf8
*以下基本都不要修改
*/
public function read($filename,$encode='utf-8'){
$objReader = PHPExcel_IOFactory::createReader('Excel5');
$objReader-setReadDataOnly(true);
$objPHPExcel = $objReader-load($filename);
$objWorksheet = $objPHPExcel-getActiveSheet();
$highestRow =$objWorksheet-getHighestRow();
$highestColumn = $objWorksheet-getHighestColumn();
$highestColumnIndex = PHPExcel_Cell::columnIndexFromString($highestColumn);
$excelData = array();
for($row = 1; $row = $highestRow; $row++) {
for ($col = 0; $col $highestColumnIndex;$col++) {
$excelData[$row][] =(string)$objWorksheet-getCellByColumnAndRow($col,$row)-getValue();
}
}
return $excelData;
}
}
在查询sql的时候加分页代码
eg: $sql="select * from table where id10 order by id asc limit 0,10 ";
这样就可以了
加上一个分页类就可以了,
可以先计算出总条数,然后除以每页显示的数量,就可以了
比如
$sql="select count(*) as tol from table where id10 ";
$rs=mysql_query($sql);
$tol=$rs['tol'];
....
一、php配置MySQL
1、将php安装目录下的php_mysql.dll和MySQL安装目录下的libmysql.dll文件拷贝至c:/windows/system32中;
2、配置php.ini
extension=php_gd2.dll
extension=php_mbstring.dll
extension=php_mysql.dll
extension=php_mysqli.dll
把上面四个。dll的最前面的;去掉
二、php表单提交至数据库的实现过程
1、login.php页面
SPAN style="FONT-SIZE: 14px"html
FORM method=post action=add.php
Name: INPUT name=usernameBR
Email: INPUT name=emailBR
INPUT value=提交 type=submit name=submit
/FORM
/SPAN
2、add.php页面
SPAN style="FONT-SIZE: 14px"?php
include("conn.php");
?
?php
if(isset($_POST["submit"]))
{
$sql = "insert into users(username, email) values('$_POST[username]', '$_POST[email]')";
mysqli_query($conn, $sql);
echo "添加成功";
}
?/SPAN
3、conn.php页面
SPAN style="FONT-SIZE: 14px"?php
$conn = new mysqli("localhost", "root", "159357");
$conn-select_db("db_test");
//mysql_query("set name 'gb2312'");
$conn-set_charset("utf8");
?/SPAN
难道你导入的时候不是选择的本地 文件吗?input框获取之后 提交过去就可以导入了啊 phpexcel中有例子的啊 可以看看简单的嘛 基本上 按那个例子改点东西就可以用了啊