Table des matières
回复讨论(解决方案)
Maison développement back-end tutoriel php 导入功能进度条一直在走,导入功能不能实现

导入功能进度条一直在走,导入功能不能实现

Jun 23, 2016 pm 02:20 PM

upload excel

<?phprequire_once("include/common.php");require_once 'phpExcelReader/reader.php';$data = new Spreadsheet_Excel_Reader();$data->setOutputEncoding('UTF-8');if($_GET['file'] == 'user'){	$filename = $_FILES['myfile']['tmp_name'];	$data->read($filename);	/*	* 用户导入顺序: 单位编号、登录名、密码、姓名、电话、备注	*/	for ($i = 1; $i <= $data->sheets[0]['numRows']; $i++) {		for ($j = 1; $j <= $data->sheets[0]['numCols']; $j++) {			//判断数据库中是否已存在用户			$username = trim($data->sheets[0]['cells'][$i][2]);			$repeatsql = "select username from user where username = '$username'";			if($db->getNum($repeatsql)) break;			//判断数据库中是否已存在此电话			$phone = trim($data->sheets[0]['cells'][$i][5]);			$repeatsql = "select username from user where username = '$username'";			if($db->getNum($repeatsql)) break;			//通过单位编码获取单位id			$code = $data->sheets[0]['cells'][$i][1];			$deptsql = "select id from dept where code = '$code'";			dolog('myfile upload success');			dolog($deptsql);//			fwrite(fopen("/tmp/upload.sql", 'ab+'), $deptsql."\r\n");			$rs = $db->getRow($deptsql) or die("{failure:true, msg:'<nobr>用户所在的单位编码'".$code."'不存在,请查证</nobr>'}");			$deptid = $rs['id'];			//密码和姓名			$password = md5(trim($data->sheets[0]['cells'][$i][3]));			$name = trim($data->sheets[0]['cells'][$i][4]);			$note = trim ($data->sheets[0]['cells'][$i][6]);			$sql ="INSERT INTO user(dept_id, username, password, name, phone, note) VALUES ('$deptid',			    '$username', '$password', '$name', '$phone', '$note')";			dolog($sql);			//fwrite(fopen("/tmp/upload.sql", 'ab+'), $sql."\r\n");			$res = $db->query($sql);			if (!$res)			    die("{failure:true, msg:'记录不符合条件,数据库错误!'}");		}	}	die('{success:true, file:'.json_encode($filename).'}');}if($_GET['file'] == 'dept'){	$deptfile = $_FILES['depts']['tmp_name'];	$data->read($deptfile);	/*	* 单位导入顺序: 单位编码、上级单位编码、单位名称、备注	*/	for ($i = 1; $i <= $data->sheets[0]['numRows']; $i++) {		for ($j = 1; $j <= $data->sheets[0]['numCols']; $j++) {			$code = $data->sheets[0]['cells'][$i][1];			$parentcode = $data->sheets[0]['cells'][$i][2];			$parent = "select id from dept where code = '$parentcode'";			$parentrs = $db->getRow($parent) or die("{failure: true, msg:'<nobr>选择上级单位id出错</nobr>'}"); 			$deptid = $parentrs['id'];			$name = $data->sheets[0]['cells'][$i][3];			//$restriction = $data->sheets[0]['cells'][$i][4];			$note = $data->sheets[0]['cells'][$i][4];			$checkcode = "select * from dept where code = '$code'";			if($db->getNum($checkcode)) break;			$childsql = "select fn_get_or_create_dept('$code', '$deptid') as id";			$result = $db->getRow($childsql);			$deptid = $result['id'];			$sql = "update dept set name='$name', note='$note' where id = $deptid";			$db->query($sql) or die("{failure: true, msg:'<nobr>添加单位出错</nobr>'}");		}	}	die('{success:true, msg:'.json_encode($deptfile).'}');}if($_GET['file'] == 'che'){	$epfile = $_FILES['myfile']['tmp_name'];	$data->read($epfile);	//print_r($data);		for ($i = 1; $i <= $data->sheets[0]['numRows']; $i++) {			$devid = $data->sheets[0]['cells'][$i][1];			$row = $ep->Hasdevid($devid);			if($row){			    $sql = "select id from ep where devid = '".$devid."'";				  $devtype2 = $db->getRow($sql);				  $ep_id = $devtype2['id'];				$sql="insert into dept_has_ep  values('',167,$ep_id)";				$db->insert($sql) ;			}			}}if($_GET['file'] == 'ep'){	$epfile = $_FILES['myfile']['tmp_name'];	$data->read($epfile);	/*   * 设备导入顺序:单位名称、终端号、终端名称、终端类型、基站定位、设备号、设备类型、电话、备注	*/	dolog('numRows:'.$data->sheets[0]['numRows']."--");	for ($i = 1; $i <= $data->sheets[0]['numRows']; $i++) {		dolog('--i:'.$i."--");			$deptname = $data->sheets[0]['cells'][$i][1];			$epid = $data->sheets[0]['cells'][$i][2];			$epname = $data->sheets[0]['cells'][$i][3];			$eptype = $data->sheets[0]['cells'][$i][4];			$bsl = $data->sheets[0]['cells'][$i][5];			$devid = $data->sheets[0]['cells'][$i][6];			$devtype = $data->sheets[0]['cells'][$i][7];			//$phone = $data->sheets[0]['cells'][$i][8];			$info = $data->sheets[0]['cells'][$i][9];	      $row = $ep->Hasepid($epid);	      if($row > 0){					dolog('warn:epid has existed '.$epid);					continue;//	        die("{failure: true, msg:'终端号重复'}");	      }	      $row1 = $ep->Hasdevid($devid);	      if($row1 > 0){					dolog('warn:devid has existed '.$devid);					continue;//	        die("{failure: true, msg:'设备号重复'}");	      }	      $sql = "select type from devtype where name = '".$devtype."'";	      $devtype2 = $db->getRow($sql);	      $devtype = $devtype2['type'];	      if (empty($devtype) or !isset($devtype)){					dolog('warn:dev type error epid:'.$epid);					continue;//	        die("{failure: true, msg:'设备类型出错'}");	      }	      $sql = "select id from dept where name = '".$deptname."'";	      $deptid = $db->getRow($sql);	      $deptid = $deptid['id'];	      if (empty($deptid) or !isset($deptid)){					dolog('warn:depa name error epid:'.$epid);					continue;//	        die("{failure: true, msg:'单位名称出错'}");        }        if ($bsl == '是'){          $bsl = 1;        }else{          $bsl = 0;        }				$capability = '';				$info=$info.";&&&&";	      $insert = array(	          'epid' => $epid,	          'name' => $epname,	          'eptype' => $eptype,	          'devid' => $devid,	          'devtype' => $devtype,	          'dept_id' => $deptid,	          'bsl' => $bsl,	          'info' => $info,	          'capability' => $capability	          );	      $last_insert_epid = $ep->AddEp($insert);	      $sql = "replace into dept_has_ep(dept_id, ep_id) values($deptid, $last_insert_epid)";	      $db->query($sql) or die("{failure: true, msg:'错误003'}");	}	die('{success:true, msg:'.json_encode($epfile).'}');//	echo "{success:true, msg:'导入成功'}";}if($_GET['file'] == 'car'){	$epfile = $_FILES['myfile']['tmp_name'];	$data->read($epfile);	ini_set('max_execution_time', '1000');	/*   * 设备导入顺序:单位名称、车牌号、设备类型、本次缴费金额	*/	dolog('numRows:'.$data->sheets[0]['numRows']."--");	for ($i = 1; $i <= $data->sheets[0]['numRows']; $i++) {		dolog('--i:'.$i."--");			$name = $data->sheets[0]['cells'][$i][1];			$devid = $data->sheets[0]['cells'][$i][2];			$dev=substr((trim($devid)),0,3);						if($dev!='107'){			  continue;			}			//$eptype = $data->sheets[0]['cells'][$i][3];            $sql="select count(*) as c from ep where name ='$name'";			$q=$db->getRow($sql);			$num=$q['c'];			if($num){				$sql="select id from ep where name ='$name'";				$q=$db->getRow($sql);				$ep_id=$q['id'];				//echo $ep_id;				$sql="insert into dept_has_ep  values('',163,$ep_id)";				echo $sql;				$db->insert($sql) ;			}			}	//die('{success:true, msg:'.json_encode($epfile).'}');}?>
Copier après la connexion

导入dept 实现不了
var FileFormdept = function(){};Ext.apply(FileFormdept.prototype, {	uploaddeptwindow: function(){		fp = new Ext.FormPanel({	        fileUpload: true,	        width: 400,	        frame: true,	        autoHeight: true,	        bodyStyle: 'padding: 10px 10px 0 10px;',	        labelWidth: 50,	        defaults: {	            anchor: '95%',	            allowBlank: false,	            msgTarget: 'side'	        },	        items: [{	            xtype: 'fileuploadfield',	            id: 'form-file',	            emptyText: '选择文件',	            fieldLabel: '文件',	            name: 'depts',	            buttonText: '浏览'	        }],	        buttons: [{	            text: '上传',	            handler: function(){	                if(fp.getForm().isValid()){		                fp.getForm().submit({		                    url: 'file-upload.php?file=dept',		                    waitMsg: '上传文件...',		                    success: function(form, action){		                    	Ext.getCmp('left-panel-refresh').fireEvent('click');		                    	Ext.getCmp('uploaddeptwindow').close();		                    },				     		failure : function(form, action) {		      					Ext.Msg.alert('提示',action.result.msg);		     				}		                });	                }	            }	        },{	            text: '重置',	            handler: function(){	                fp.getForm().reset();	            }	        }]	    });	    	    uf = new Ext.Window({	    	id: 'uploaddeptwindow',	        title: '上传要导入的文件',	        closable: true,	        modal: true,	        width: 410,	        //border:false,	        plain: true,	        items: [fp]	    });	    	    uf.show();	}});
Copier après la connexion





回复讨论(解决方案)

导入user能成功吗??仔细检查一下循环部分

已经解决了 谢谢 分给你吧

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Article chaud

Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD
Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Musée à deux points: toutes les expositions et où les trouver
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Article chaud

Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD
Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Musée à deux points: toutes les expositions et où les trouver
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Tags d'article chaud

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

11 meilleurs scripts de raccourcissement d'URL PHP (gratuit et premium) 11 meilleurs scripts de raccourcissement d'URL PHP (gratuit et premium) Mar 03, 2025 am 10:49 AM

11 meilleurs scripts de raccourcissement d'URL PHP (gratuit et premium)

Travailler avec les données de session Flash dans Laravel Travailler avec les données de session Flash dans Laravel Mar 12, 2025 pm 05:08 PM

Travailler avec les données de session Flash dans Laravel

Misque de réponse HTTP simplifié dans les tests Laravel Misque de réponse HTTP simplifié dans les tests Laravel Mar 12, 2025 pm 05:09 PM

Misque de réponse HTTP simplifié dans les tests Laravel

Construisez une application React avec un Laravel Back End: Partie 2, React Construisez une application React avec un Laravel Back End: Partie 2, React Mar 04, 2025 am 09:33 AM

Construisez une application React avec un Laravel Back End: Partie 2, React

Curl dans PHP: Comment utiliser l'extension PHP Curl dans les API REST Curl dans PHP: Comment utiliser l'extension PHP Curl dans les API REST Mar 14, 2025 am 11:42 AM

Curl dans PHP: Comment utiliser l'extension PHP Curl dans les API REST

12 meilleurs scripts de chat PHP sur Codecanyon 12 meilleurs scripts de chat PHP sur Codecanyon Mar 13, 2025 pm 12:08 PM

12 meilleurs scripts de chat PHP sur Codecanyon

Introduction à l'API Instagram Introduction à l'API Instagram Mar 02, 2025 am 09:32 AM

Introduction à l'API Instagram

Notifications à Laravel Notifications à Laravel Mar 04, 2025 am 09:22 AM

Notifications à Laravel

See all articles