當前位置:首頁 » 手機壁紙 » php手機圖片上傳
擴展閱讀
惡搞狗狗圖片大全 2025-08-21 21:18:00
背景圖片很多人用的 2025-08-21 20:36:47

php手機圖片上傳

發布時間: 2022-05-24 02:51:49

『壹』 PHP上傳圖片怎麼做

上傳類,保存文件名稱為 uppoo.php:

<?php
class upphoto{
public $previewsize=0.125 ; //預覽圖片比例
public $preview=0; //是否生成預覽,是為1,否為0
public $datetime; //隨機數
public $ph_name; //上傳圖片文件名
public $ph_tmp_name; //圖片臨時文件名
public $ph_path="./userimg/"; //上傳文件存放路徑
public $ph_type; //圖片類型
public $ph_size; //圖片大小
public $imgsize; //上傳圖片尺寸,用於判斷顯示比例
public $al_ph_type=array('image/jpg','image/jpeg','image/png','image/pjpeg','image/gif','image/bmp','image/x-png'); //允許上傳圖片類型
public $al_ph_size=1000000; //允許上傳文件大小
function __construct(){
$this->set_datatime();
}
function set_datatime(){
$this->datetime=date("YmdHis");
}
//獲取文件類型
function get_ph_type($phtype){
$this->ph_type=$phtype;
}
//獲取文件大小
function get_ph_size($phsize){
$this->ph_size=$phsize."<br>";
}
//獲取上傳臨時文件名
function get_ph_tmpname($tmp_name){
$this->ph_tmp_name=$tmp_name;
$this->imgsize=getimagesize($tmp_name);
}
//獲取原文件名
function get_ph_name($phname){
$this->ph_name=$this->ph_path.$this->datetime.strrchr($phname,"."); //strrchr獲取文件的點最後一次出現的位置
//$this->ph_name=$this->datetime.strrchr($phname,"."); //strrchr獲取文件的點最後一次出現的位置
return $this->ph_name;
}
// 判斷上傳文件存放目錄
function check_path(){
if(!file_exists($this->ph_path)){
mkdir($this->ph_path);
}
}
//判斷上傳文件是否超過允許大小
function check_size(){
if($this->ph_size>$this->al_ph_size){
$this->showerror("上傳圖片超過2000KB");
}
}
//判斷文件類型
function check_type(){
if(!in_array($this->ph_type,$this->al_ph_type)){
$this->showerror("上傳圖片類型錯誤");
}
}
//上傳圖片
function up_photo(){
if(!move_uploaded_file($this->ph_tmp_name,$this->ph_name)){
$this->showerror("上傳文件出錯");
}
}
//圖片預覽
function showphoto(){
if($this->preview==1){
if($this->imgsize[0]>2000){
$this->imgsize[0]=$this->imgsize[0]*$this->previewsize;
$this->imgsize[1]=$this->imgsize[1]*$this->previewsize;
}
echo("<img src=\"{$this->ph_name}\" width=\"{$this->imgsize['0']}\" height=\"{$this->imgsize['1']}\">");
}
}
//錯誤提示
function showerror($errorstr){
echo "<script language=java script>alert('$errorstr');location='java script:history.go(-1);';</script>";
exit();
}
function save(){
$this->check_path();
$this->check_size();
$this->check_type();
$this->up_photo();
$this->showphoto();
}
}
?>

這里是使用的方法:

<?php
header("Content-Type:text/html; charset=utf-8");
//類的實例化:
include("uppoo.php");//類的文件名是upoop.php
$up=newupphoto;
$submit=$_POST['submit'];
if($submit=="上傳"){
$up->get_ph_tmpname($_FILES['photo']['tmp_name']);
$up->get_ph_type($_FILES['photo']['type']);
$up->get_ph_size($_FILES['photo']['size']);
$up->get_ph_name($_FILES['photo']['name']);
$up->save();
}
?>
//上傳圖片的HTML:
<form action="upphoto.php?action=act" method="post" enctype="multipart/form-data">
圖片來源:<input type="file" name="photo">
<input type="submit" name="submit" value="上傳">

『貳』 php 手機網頁上傳圖片 $_FILES 下面的 type 不是jpg,png,gif 怎麼解決

讀取上傳的文件的流,然後用gd庫創建空白圖形,然後把流扔進去
$filename = $_FILE['tmp_name'];

$fd = fopen($filename, "r" );
$contents = fread($fd, filesize($filename));
fclose( $fd );
然後用gd庫函數,創建圖片資源,把上面得到的流寫進去

『叄』 php開發手機網站上傳圖片問題!

讀取上傳的文件的流,然後用gd庫創建空白圖形,然後把流扔進去
$filename = $_FILE['tmp_name'];

$fd = fopen($filename, "r" );
$contents = fread($fd, filesize($filename));
fclose( $fd );
然後用gd庫函數,創建圖片資源,把上面得到的流寫進去

『肆』 用php實現手機拍照+本地相冊實現圖片上傳功能,需要統一樣式

PHP?很遺憾,PHP無法啟動手機的拍照功能,這個需要調用手機的內部資源,通俗來說就是只有APP獲取了這個許可權才能去打開拍照公告,PHP是無法辦到的。對於文件上傳,目前還真的只有 <input type="file">,至於樣式自己可以 去調試,關於你說的兼容性太差了,這個很不解,麻煩描述清楚點。

『伍』 PHP 微信端上傳圖片,上傳logo和banner圖,哪位大神傳授一下經驗啊,有demo更好,可以加分

<divclass="header">
<span>頭像</span>
<divclass="head_r"style="position:relative">
<imgclass="portrait_line"id="show_portrait"src="{$agent['portrait']}">
<imgsrc="__IMAGES__/more.png">
<inputtype="file"name="portrait"id="portrait"data-server="{:U('Home/Upload/mobile_upload_portrait')}"style="width:100%;height:100%;position:absolute;left:0px;top:0px;opacity:0;">
</div>
</div>

最後一個input file弄成透明的,占據整個你要觸發上傳的位置。

重點在下面,用原生ajax上傳提交圖片,並把上傳後伺服器本地的地址傳回來,通過js付到表單里,並把圖片縮小預覽貼出來。

<script>
$(function(){
$("input#portrait").on("change",function(){
changepic('portrait','show_portrait');
});
});

varxhr;
varreturnimg="";
varreturninput="";

functionchangepic(id,img,input){
returnimg=img;
returninput=input;
varfileObj=document.getElementById(id).files[0];
varuploadServer=$("#"+id).attr("data-server");
varform=newFormData();
form.append("portrait",fileObj);
createXMLHttpRequest();
xhr.onreadystatechange=handleStateChange;
xhr.open("post",uploadServer,true);
xhr.send(form);
}

functioncreateXMLHttpRequest()
{
if(window.ActiveXObject)
{
xhr=newActiveXObject("Microsoft.XMLHTTP");
}
elseif(window.XMLHttpRequest)
{
xhr=newXMLHttpRequest();
}
}
functionhandleStateChange()
{
var$loading=layer.open({type:2,})
if(xhr.readyState==4)
{
if(xhr.status==200||xhr.status==0)
{
varresult=xhr.responseText;
varjson=eval("("+result+")");
if(json.result=='success'){
$.ajax({
type:'post',
url:'/index.php/Wap/Self/updatePortrait',
data:{
portrait:json.url,
},
success:function(){

},
error:function(){
alert('伺服器錯誤');
},
});
$("#"+returnimg).attr("src",json.url);
layer.close($loading);
}
else{
alert('上傳頭像失敗'+json.msg);
layer.close($loading);
}

}
}
}
</script>

然後是ajax上傳的介面

publicfunctionmobile_upload_portrait(){//手機端上傳頭像
if(IS_POST){
$upload=newUpload();
$upload->maxSize=3*1024*1024;//3M
$upload->exts=array('jpg','gif','png','jpeg');
$upload->rootPath='./';
$upload->savePath='/Uploads/';
$upload->autoSub=true;
$upload->subName=array('date','Ymd');
$upload->saveName='uniqid';
if(!is_dir($upload->savePath)){
mkdir($upload->savePath);
}
$info=$upload->uploadOne($_FILES['portrait']);
if(!$info){
$result=array('result'=>'fail','msg'=>'請上傳3M以下的圖片');
}else{
$result=array('result'=>'success','url'=>$info['savepath'].$info['savename']);
}
$this->ajaxReturn($result);
}
}

代碼是Thinkphp的項目截出來的,頁面上有模板的痕跡,最後一段php的介面,也用了tp自帶的文件上傳類。不過看得懂的話,這些都不影響理解。

『陸』 php手機站,怎麼上傳圖片給伺服器(提交給介面api處理)

上傳操作可以使用FTP來實現,用php即可調用。

FTP 是File Transfer Protocol(文件傳輸協議)的英文簡稱,而中文簡稱為「文傳協議」。用於Internet上的控制文件的雙向傳輸。同時,它也是一個應用程序(Application)。基於不同的操作系統有不同的FTP應用程序,而所有這些應用程序都遵守同一種協議以傳輸文件。在FTP的使用當中,用戶經常遇到兩個概念:"下載"(Download)和"上傳"(Upload)。"下載"文件就是從遠程主機拷貝文件至自己的計算機上;"上傳"文件就是將文件從自己的計算機中拷貝至遠程主機上。用Internet語言來說,用戶可通過客戶機程序向(從)遠程主機上傳(下載)文件。

『柒』 php上傳圖片文件常用的幾個方法

你好,要先建立一個html代碼

<formaction="upload_file.php"method="post"
enctype="multipart/form-data">
<labelfor="file">Filename:</label>
<inputtype="file"name="file"id="file"/>
<br/>
<inputtype="submit"name="submit"value="Submit"/>
</form>

然後創建upload_file文件用$_FILE判斷文件,下面是判斷文件的具體信息

  • $_FILES["file"]["name"] - 被上傳文件的名稱

  • $_FILES["file"]["type"] - 被上傳文件的類型

  • $_FILES["file"]["size"] - 被上傳文件的大小,以位元組計

  • $_FILES["file"]["tmp_name"] - 存儲在伺服器的文件的臨時副本的名稱

  • $_FILES["file"]["error"] - 由文件上傳導致的錯誤代

    希望對你有幫助!

『捌』 用php上傳圖片怎麼做

上傳圖片原理:首先判斷文件類型是否為圖片格式,若是則上傳文件,然後重命名文件(一般都是避免上傳文件重名,現在基本上都是以為時間來命名),接著把文件上傳到指定目錄,成功上傳後輸出上傳圖片的預覽。

1.首先我們開始判斷文件類型是否為圖片類型用到的函數

{
strrchr:查找字元串在另一個字元串中最後一次出現的位置,並返回從該位置到字元串結尾的所有字元。
substr: 取部份字元串。
$HTTP_POST_FILES['file']['name']:獲取當前上傳的文件全稱。
}
圖片類型就是「.」後面的字元(比如:一個文件名稱為XXX.JPG 那麼它的類型就是「.」後面的JPG)。 我們可以用PHP中的函數來截取上傳者文件名字的。我們來寫個獲取文件類型的函數

<?
function type()
{
return substr(strrchr($HTTP_POST_FILES['file']['name'],'.'),1);
}
?>
2.若是則上傳文件,然後重命名文件用到的函數

{ strtolower:把字元串的字母全部轉換為小寫字母. in_array: 函數在數組中搜索給定的值。 implode:函數把數組元素組合為一個字元串 random:隨機生成的數 $_FILES['userfile']['name']:上傳文件名稱 $uploaddir:自己定義的變數。比如在同一個文件夾裡面,你想把上傳的文件放到這個文件夾的FILE文件夾下,你可以這樣定義$uploaddir="./file/";注意寫法 } 這邊會出現很多問題,第一先寫一個能上傳類型的數組。第二判斷文件合法性。第三給文件重名。*(這邊判斷文件大小就不寫了)先定義允許上傳文件的類型數組:$type=array("jpg","gif","bmp","jpeg","png");第二用一個IF。。else。。寫一個判斷文件合法性的控制流語句。if(!in_arry(strtolower(type()),$type))//如果不存在能上傳的類型 { $text=implode('.',$type); echo "您只能上傳以下類型文件: ",$text,"<br>"; } 下面就是給他們重新命名了,else { $filename=explode(".",$_FILES['userfile']['name']);//把上傳的文件名以「.」好為准做一個數組。 $time=date("m-d-H-i-s");//去當前上傳的時間 $filename[0]=$time;//取文件名t替換 name=implode(".",$filename); //上傳後的文件名 $uploadfile=$uploaddir.$name;//上傳後的文件名地址 } 3.最後把文件上傳到指定目錄,成功上傳後輸出上傳圖片的預覽用到的函數{ move_uploaded_file:執行上傳文件 } if(move_uploaded_file($_FILES['userfile']['tmp_name'],$uploadfile)) { echo "<center>您的文件已經上傳完畢 上傳圖片預覽: </center><br><center><img src='$uploadfile'></center>"; echo"<br><center><a href='javascrīpt:history.go(-1)'>繼續上傳</a></center>"; } else { echo"傳輸失敗!"; }

『玖』 PHPcms 如何實現手機上傳圖片

手機不支持phpcms的js圖片上傳功能 把上傳功能改成簡單一點的上傳代碼就行了