インポート機能の進行状況バーが表示されたままになり、インポート機能を実装できません。
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).'}');}?>
インポート部門を達成できません
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(); }});
ディスカッション (解決策) への返信
ユーザーのインポートは成功できますか? ?ループ部分をよく確認してください
解決しました、ありがとうございます、あげます
。
ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









Laravelは、直感的なフラッシュメソッドを使用して、一時的なセッションデータの処理を簡素化します。これは、アプリケーション内に簡単なメッセージ、アラート、または通知を表示するのに最適です。 データは、デフォルトで次の要求のためにのみ持続します。 $リクエスト -

PHPクライアントURL(CURL)拡張機能は、開発者にとって強力なツールであり、リモートサーバーやREST APIとのシームレスな対話を可能にします。尊敬されるマルチプロトコルファイル転送ライブラリであるLibcurlを活用することにより、PHP Curlは効率的なexecuを促進します

Laravelは簡潔なHTTP応答シミュレーション構文を提供し、HTTP相互作用テストを簡素化します。このアプローチは、テストシミュレーションをより直感的にしながら、コード冗長性を大幅に削減します。 基本的な実装は、さまざまな応答タイプのショートカットを提供します。 Illuminate \ support \ facades \ httpを使用します。 http :: fake([[ 'google.com' => 'hello world'、 'github.com' => ['foo' => 'bar']、 'forge.laravel.com' =>

顧客の最も差し迫った問題にリアルタイムでインスタントソリューションを提供したいですか? ライブチャットを使用すると、顧客とのリアルタイムな会話を行い、すぐに問題を解決できます。それはあなたがあなたのカスタムにより速いサービスを提供することを可能にします

記事では、PHP 5.3で導入されたPHPの後期静的結合(LSB)について説明し、より柔軟な継承を求める静的メソッドコールのランタイム解像度を可能にします。 LSBの実用的なアプリケーションと潜在的なパフォーマ

この記事では、フレームワークにカスタム機能を追加し、アーキテクチャの理解、拡張ポイントの識別、統合とデバッグのベストプラクティスに焦点を当てています。

記事では、入力検証、認証、定期的な更新など、脆弱性から保護するためのフレームワークの重要なセキュリティ機能について説明します。
