In diesem Artikel werden hauptsächlich die relevanten Informationen zum Hochladen von Dateien über thinkphp-Formulare und zum Speichern von Dateipfaden in der Datenbank vorgestellt.
Das Hochladen einer einzelnen Datei dient als Beispiel. Der Effekt ist wie in der Abbildung gezeigt
Erstellen Sie die Datenbank upload_img, um den Upload-Pfad zu speichern
CREATE TABLE `seminar_upload_img` ( `id` int(11) NOT NULL AUTO_INCREMENT, `img_name` varchar(255) DEFAULT NULL COMMENT '图片名称', `img_url` varchar(255) DEFAULT NULL COMMENT '图片路径', `create_time` text, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=23 DEFAULT CHARSET=utf8;
Verbinden Sie sich mit der Datenbank in der öffentlichen Konfigurationsdatei Common/Conf.php und konfigurieren Sie die Adresse
return array( 'DB_TYPE'=>'mysql', 'DB_HOST'=>'127.0.0.1', 'DB_NAME'=>'seminar', 'DB_USER'=>'root', 'DB_PWD'=>'root', 'DB_PORT'=>3306, 'DB_PREFIX'=>'seminar_', 'DB_CHARSET'=>'utf8', 'SHOW_PAGE_TRACE'=>true, /*地址替换*/ 'TMPL_PARSE_STRING'=>array( '__UPLOAD__'=>__ROOT__.'/Public/Uploads', ), );
in der Ansichtsdatei Upload/index.html
<!DOCTYPE html> <html> <head> <title></title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <style type="text/css"> #img{height:22px; border:#000 2px solid} #button{height:30px; width:100px;} </style> </head> <body> <p><notemply name="data"> <img src="__UPLOAD__/{$data['img_url']}" width="200" height="100"/> </notemply></p> <p class="result" >上传允许文件类型:'jpg', 'gif', 'png', 'jpeg'图像文件后</p><br> <form action="{:U('upload/Upload')}" method="post" enctype="multipart/form-data"> <input type="file" name="image"/> <input type="submit" value="上传" id="button"> </form> </body> </html>
Das Hochladen von Dateien ist im Controller UploadController.class.php
<🎜 implementiert >
namespace Home\Controller; use Think\Controller; class UploadController extends Controller { public function index() { $img=M('upload_img'); $sel=$img->order('create_time desc')->find(); $this->assign('data', $sel); $this->display(); } public function upload(){ $upload_img=M('upload_img'); if(!empty($_FILES)){ //上传单个图像 $upload = new \Think\Upload();// 实例化上传类 $upload->maxSize = 1*1024*1024 ;// 设置附件上传大小 $upload->exts = array('jpg', 'gif', 'png', 'jpeg');// 设置附件上传类型 $upload->rootPath = 'Public/Uploads/'; // 设置附件上传根目录 $upload->savePath = ''; // 设置附件上传(子)目录 $upload->saveName=array('uniqid','');//上传文件的保存规则 $upload->autoSub = true;//自动使用子目录保存上传文件 $upload->subName = array('date','Ymd'); // 上传单个图片 $info = $upload->uploadOne($_FILES['image']); if(!$info) {// 上传错误提示错误信息 $this->error($upload->getError()); }else{// 上传成功 获取上传文件信息 $img_url=$info['savepath'].$info['savename']; $data['img_url']=$img_url; $data['img_name']=$info['savename']; $data['create_time']=NOW_TIME; $upload_img->create($data); $result=$upload_img->add(); if(!$result){ $this->error('上传失败!'); }else{ $this->success('上传成功'); } } } } }
Anwendung zur automatischen Überprüfung von ThinkPHP-Formularen, PHP-Tutorial zur Überprüfung von ThinkPHP-Formularen
Das obige ist der detaillierte Inhalt vonThinkphp-Formular-Datei hochladen und Dateipfad in der Datenbank speichern. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!