php單張圖片上傳外掛免重新整理,相容手機,可實現類似微信圖片上傳的體驗
本上傳功能.是用於整合到一個php,ajax聊天室上的,具體可下載php聊天室http://download.csdn.net/download/viqecel/9832763
因為是聊天室,需要實現類似微信的圖片上傳效果,就是點選上傳按鈕後,自動直接彈出相簿,選擇好一張圖片後,自動上傳到聊天室併入庫.所以.通過upload()函式,可以不用顯示上傳框了,直接啟用子頁面中的上傳動作.另外,onchange事件則可以自動提交上傳,不必使用者點選上傳按鈕了.三步並做一步
<!-- 父頁面中的上傳按鈕 -->
<img src="ui/images/myimg.png" class="link" onclick="upload()" />
<iframe src="upload.php"id="box_paint_container" ></iframe>
upload.php 檔案中有一個表單,注意,通過下面的 window.parent,可以把值傳回父頁面中的一個表單上,從而可以實時瀏覽上傳的圖片,比如類這樣
js程式碼: $('#showImg').attr('src','圖片新地址');
<img src="" alt="" id="showImg"width="100%"onclick="return close_l();" style="">
<form enctype="multipart/form-data" action="upload.php"id="forms" method="post" name="upform" style="position: relative; ">
<input name="upfile" type="file"id="file" onchange="document.getElementById('forms').submit();
window.parent.document.getElementById('box_paint_container').style.display='none';;">
</form>
下面是父頁面中的一個函式
<script type="text/javascript">
function upload(){
var a = document.getElementById('box_paint_container').contentWindow.document.getElementById("file");
a.click();
}
</script>
upload.php中還有一個php上傳功能,相容手機版,可上傳單張圖片. 一併分享下
//上傳檔案型別列表
require_once 'config.php';
require_once '../system/config/database.inc.php';
//require_once '../system/funcs/global.fun.php';
require_once 'incl/main.inc';
dbconnect(); $settings=get_settings(0); $options=get_options(); $lang=get_language();
if(isset($_COOKIE['uid'])){
$uid=intval(_encrypt(_getcookie("uid"),'DECODE'));
$shopid=$_COOKIE['shopid'];
$query='SELECT * FROM '.$dbss['prfx']."_member WHERE uid=$uid";
$result=neutral_query($query);
if(neutral_num_rows($result)>0){
$ext_user=neutral_fetch_array($result);
$user=array();
$uname=$ext_user['username'];
$heading=$ext_user['headimg']==''?'/statics/uploads/'.$ext_user['img']:$ext_user['headimg'];
if($uname==''){
$uname=substr_replace($ext_user['mobile'],"****",5,2);
}
}
}
if(!isset($uid)){
//許可權
redirect('/index.php/mobile/user/login.php');die();
}
$uptypes=array(
'image/jpg',
'image/jpeg',
'image/png',
'image/pjpeg',
'image/gif',
'image/x-png'
);
$max_file_size=2000000; //上傳檔案大小限制, 單位BYTE
$destination_folder="uploadimg/"; //上傳檔案路徑
$watermark=0; //是否附加水印(1為加水印,其他為不加水印);
$watertype=1; //水印型別(1為文字,2為圖片)
$waterposition=1; //水印位置(1為左下角,2為右下角,3為左上角,4為右上角,5為居中);
$waterstring="http://www.xplore.cn/"; //水印字串
$waterimg="xplore.gif"; //水印圖片
$imgpreview=0; //是否生成預覽圖(1為生成,其他為不生成);
$imgpreviewsize=1/2; //縮圖比例
if ($_SERVER['REQUEST_METHOD'] == 'POST')
{
if (!is_uploaded_file($_FILES["upfile"]['tmp_name']))
//是否存在檔案
{
echo "圖片不存在!";
exit;
}
$file = $_FILES["upfile"];
if($max_file_size < $file["size"])
//檢查檔案大小
{
echo "檔案太大!";
exit;
}
if(!in_array($file["type"], $uptypes))
//檢查檔案型別
{
echo "檔案型別不符!".$file["type"];
exit;
}
if(!file_exists($destination_folder))
{
mkdir($destination_folder); //上傳到的位置
}
$filename=$file["tmp_name"];
$image_size = getimagesize($filename);
$pinfo=pathinfo($file["name"]);
$ftype=$pinfo['extension'];
$destination = $destination_folder.time().".".$ftype;
if (file_exists($destination) && $overwrite != true)
{
echo "同名檔案已經存在了";
exit;
}
if(!move_uploaded_file ($filename, $destination))
{
echo "移動檔案出錯";
exit;
}
$pinfo=pathinfo($destination); //檔名
$fname=$pinfo['basename'];
$line='<img onclick="imgbig(this)"src="'.$destination_folder.$fname.'" style="width:100px;" />';
$query='INSERT INTO '.$dbss['prfx']."_lines VALUES(NULL,$uid,'$uname',$timestamp,'$line','$shopid','$heading','',0)";
neutral_query($query);
//print_r($line);exit;
//echo " <font color=red>上傳中....</font><br>";
// echo " 寬度:".$image_size[0];
// echo " 長度:".$image_size[1];
// echo "<br> 大小:".$file["size"]." bytes";
}
相關文章
- PHP上傳圖片類PHP
- PHP實現圖片(檔案)上傳PHP
- 求一個手機多選上傳圖片的好外掛
- jquery圖片上傳外掛HHuploadifyjQuery
- vue 實現貼上上傳圖片Vue
- [外掛擴充套件]圖片批量上傳外掛2.0套件
- 微信小程式 圖片上傳微信小程式
- php圖片上傳之圖片轉換PHP
- Ajax+PHP實現非同步圖片上傳PHP非同步
- html5手機上傳圖片HTML
- PHP配置CKEditor上傳圖片PHP
- PHP仿微信多圖片預覽上傳功能PHP
- formData原生實現圖片上傳ORM
- 前端手勢控制圖片外掛書寫四(圖片上傳及Ios圖片方向問題)前端iOS
- 基於uni-app圖片上傳JS外掛APPJS
- jcrop+Fileapi圖片上傳裁剪外掛使用簡單介紹API
- Java實現圖片上傳到伺服器,並把上傳的圖片讀取出來Java伺服器
- php+html5相容手機端的圖片選取裁剪上傳例項PHPHTML
- Retrofit+RxJava上傳圖片上傳圖片到後臺RxJava
- PHP+jQuery+Ajax實現多圖片上傳介紹PHPjQuery
- 編寫還可以的php 圖片上傳類程式碼PHP
- 微信小程式簡單封裝圖片上傳元件微信小程式封裝元件
- 【easyui 】上傳圖片UI
- 上傳圖片jsJS
- 阿里雲上傳多張圖片阿里
- php+WebUploader圖片批量上傳PHPWeb
- Retrofit2.0:上傳圖片到PHPPHP
- php圖片上傳之檔案安全PHP
- [提問交流]多圖上傳外掛和系統自帶的圖片上傳不能共存嗎?
- node+express實現圖片上傳功能Express
- layui中實現上傳圖片壓縮UI
- 通過API介面實現圖片上傳API
- HTML5實現圖片上傳2HTML
- element-ui+Vue實現的圖片上傳UIVue
- 圖片上傳及圖片處理
- layui上傳圖片後表單重新整理,資料清空UI
- jsp+springmvc實現檔案上傳、圖片上傳和及時預覽圖片JSSpringMVC
- [外掛擴充套件]移動端多圖片上傳外掛uploadimages套件