首页 > 后端开发 > 正文

php在手机上传照片框架 php微信上传永久图片素材求代码

2023-10-02 23:33:22 | 我爱编程网

对于后端开发比较关注的小伙伴们一定非常关心php在手机上传照片框架 php微信上传永久图片素材求代码,今天我爱编程网小编为大家整理了以下内容,下面一起来看看吧。

php在手机上传照片框架 php微信上传永久图片素材求代码

php微信上传永久图片素材求代码

您好,这样的:
//素材
const MEDIA_FOREVER_UPLOAD_URL = '/material/add_material?';
const MEDIA_FOREVER_NEWS_UPLOAD_URL = '/material/add_news?';
const MEDIA_FOREVER_NEWS_UPDATE_URL = '/material/update_news?';
const MEDIA_FOREVER_GET_URL = '/material/get_material?';
const MEDIA_FOREVER_DEL_URL = '/material/del_material?';
const MEDIA_FOREVER_COUNT_URL = '/material/get_materialcount?';
const MEDIA_FOREVER_BATCHGET_URL = '/material/batchget_material?';

/**
* 上传临时素材,有效期为3天(认证后的订阅号可用)
* 注意:上传大文件时可能需要先调用 set_time_limit(0) 避免超时
* 注意:数组的键值任意,但文件名前必须加@,使用单引号以避免本地路径斜杠被转义
* 注意:临时素材的media_id是可复用的!
* @param array $data {"media":'@Path\filename.jpg'}
* @param type 类型:图片:image 语音:voice 视频:video 缩略图:thumb
* @return boolean|array
*/
public function uploadMedia($data, $type){
if (!$this->access_token && !$this->checkAuth()) return false;
//原先的上传多媒体文件接口使用 self::UPLOAD_MEDIA_URL 前缀
$result = $this->http_post(self::API_URL_PREFIX.self::MEDIA_UPLOAD_URL.'access_token='.$this->access_token.'&type='.$type,$data,true);
if ($result)
{
$json = json_decode($result,true);
if (!$json || !empty($json['errcode'])) {
$this->errCode = $json['errcode'];
$this->errMsg = $json['errmsg'];
return false;
}
return $json;
}
return false;
}

/**
* 获取临时素材(认证后的订阅号可用)
* @param string $media_id 媒体文件id
* @param boolean $is_video 是否为视频文件,默认为否
* @return raw data
*/
public function getMedia($media_id,$is_video=false){
if (!$this->access_token && !$this->checkAuth()) return false;
//原先的上传多媒体文件接口使用 self::UPLOAD_MEDIA_URL 前缀
//如果要获取的素材是视频文件时,不能使用https协议,必须更换成http协议
$url_prefix = $is_video?str_replace('https','http',self::API_URL_PREFIX):self::API_URL_PREFIX;
$result = $this->http_get($url_prefix.self::MEDIA_GET_URL.'access_token='.$this->access_token.'&media_id='.$media_id);
if ($result)
{
if (is_string($result)) {
$json = json_decode($result,true);
if (isset($json['errcode'])) {
$this->errCode = $json['errcode'];
$this->errMsg = $json['errmsg'];
return false;
}
}
return $result;
}
return false;
}

/**
* 上传永久素材(认证后的订阅号可用)
* 新增的永久素材也可以在公众平台官网素材管理模块中看到
* 注意:上传大文件时可能需要先调用 set_time_limit(0) 避免超时
* 注意:数组的键值任意,但文件名前必须加@,使用单引号以避免本地路径斜杠被转义
* @param array $data {"media":'@Path\filename.jpg'}
* @param type 类型:图片:image 语音:voice 视频:video 缩略图:thumb
* @param boolean $is_video 是否为视频文件,默认为否
* @param array $video_info 视频信息数组,非视频素材不需要提供 array('title'=>'视频标题','introduction'=>'描述')
* @return boolean|array
*/
public function uploadForeverMedia($data, $type,$is_video=false,$video_info=array()){
if (!$this->access_token && !$this->checkAuth()) return false;
//#TODO 暂不确定此接口是否需要让视频文件走http协议
//如果要获取的素材是视频文件时,不能使用https协议,必须更换成http协议
//$url_prefix = $is_video?str_replace('https','http',self::API_URL_PREFIX):self::API_URL_PREFIX;
//当上传视频文件时,附加视频文件信息
if ($is_video) $data['description'] = self::json_encode($video_info);
$result = $this->http_post(self::API_URL_PREFIX.self::MEDIA_FOREVER_UPLOAD_URL.'access_token='.$this->access_token.'&type='.$type,$data,true);
if ($result)
{
$json = json_decode($result,true);
if (!$json || !empty($json['errcode'])) {
$this->errCode = $json['errcode'];
$this->errMsg = $json['errmsg'];
return false;
}
return $json;
}
return false;
}

/**
* 上传永久图文素材(认证后的订阅号可用)
* 新增的永久素材也可以在公众平台官网素材管理模块中看到
* @param array $data 消息结构{"articles":[{...}]}
* @return boolean|array
*/
public function uploadForeverArticles($data){
if (!$this->access_token && !$this->checkAuth()) return false;
$result = $this->http_post(self::API_URL_PREFIX.self::MEDIA_FOREVER_NEWS_UPLOAD_URL.'access_token='.$this->access_token,self::json_encode($data));
if ($result)
{
$json = json_decode($result,true);
if (!$json || !empty($json['errcode'])) {
$this->errCode = $json['errcode'];
$this->errMsg = $json['errmsg'];
return false;
}
return $json;
}
return false;
}

/**
* 修改永久图文素材(认证后的订阅号可用)
* 永久素材也可以在公众平台官网素材管理模块中看到
* @param string $media_id 图文素材id
* @param array $data 消息结构{"articles":[{...}]}
* @param int $index 更新的文章在图文素材的位置,第一篇为0,仅多图文使用
* @return boolean|array
*/
public function updateForeverArticles($media_id,$data,$index=0){
if (!$this->access_token && !$this->checkAuth()) return false;
if (!isset($data['media_id'])) $data['media_id'] = $media_id;
if (!isset($data['index'])) $data['index'] = $index;
$result = $this->http_post(self::API_URL_PREFIX.self::MEDIA_FOREVER_NEWS_UPDATE_URL.'access_token='.$this->access_token,self::json_encode($data));
if ($result)
{
$json = json_decode($result,true);
if (!$json || !empty($json['errcode'])) {
$this->errCode = $json['errcode'];
$this->errMsg = $json['errmsg'];
return false;
}
return $json;
}
return false;
}

/**
* 获取永久素材(认证后的订阅号可用)
* 返回图文消息数组或二进制数据,失败返回false
* @param string $media_id 媒体文件id
* @param boolean $is_video 是否为视频文件,默认为否
* @return boolean|array|raw data
*/
public function getForeverMedia($media_id,$is_video=false){
if (!$this->access_token && !$this->checkAuth()) return false;
$data = array('media_id' => $media_id);
//#TODO 暂不确定此接口是否需要让视频文件走http协议
//如果要获取的素材是视频文件时,不能使用https协议,必须更换成http协议
//$url_prefix = $is_video?str_replace('https','http',self::API_URL_PREFIX):self::API_URL_PREFIX;
$result = $this->http_post(self::API_URL_PREFIX.self::MEDIA_FOREVER_GET_URL.'access_token='.$this->access_token,self::json_encode($data));
if ($result)
{
if (is_string($result)) {
$json = json_decode($result,true);
if (isset($json['errcode'])) {
$this->errCode = $json['errcode'];
$this->errMsg = $json['errmsg'];
return false;
}
return $json;
}
return $result;
}
return false;
}

/**
* 删除永久素材(认证后的订阅号可用)
* @param string $media_id 媒体文件id
* @return boolean
*/
public function delForeverMedia($media_id){
if (!$this->access_token && !$this->checkAuth()) return false;
$data = array('media_id' => $media_id);
$result = $this->http_post(self::API_URL_PREFIX.self::MEDIA_FOREVER_DEL_URL.'access_token='.$this->access_token,self::json_encode($data));
if ($result)
{
$json = json_decode($result,true);
if (!$json || !empty($json['errcode'])) {
$this->errCode = $json['errcode'];
$this->errMsg = $json['errmsg'];
return false;
}
return true;
}
return false;
}

/**
* 获取永久素材列表(认证后的订阅号可用)
* @param string $type 素材的类型,图片(image)、视频(video)、语音 (voice)、图文(news)
* @param int $offset 全部素材的偏移位置,0表示从第一个素材
* @param int $count 返回素材的数量,取值在1到20之间
* @return boolean|array
* 返回数组格式:
* array(
* 'total_count'=>0, //该类型的素材的总数
* 'item_count'=>0, //本次调用获取的素材的数量
* 'item'=>array() //素材列表数组,内容定义请参考官方文档
* )
*/
public function getForeverList($type,$offset,$count){
if (!$this->access_token && !$this->checkAuth()) return false;
$data = array(
'type' => $type,
'offset' => $offset,
'count' => $count,
);
$result = $this->http_post(self::API_URL_PREFIX.self::MEDIA_FOREVER_BATCHGET_URL.'access_token='.$this->access_token,self::json_encode($data));
if ($result)
{
$json = json_decode($result,true);
if (isset($json['errcode'])) {
$this->errCode = $json['errcode'];
$this->errMsg = $json['errmsg'];
return false;
}
return $json;
}
return false;
}

/**
* 获取永久素材总数(认证后的订阅号可用)
* @return boolean|array
* 返回数组格式:
* array(
* 'voice_count'=>0, //语音总数量
* 'video_count'=>0, //视频总数量
* 'image_count'=>0, //图片总数量
* 'news_count'=>0 //图文总数量
* )
*/
public function getForeverCount(){
if (!$this->access_token && !$this->checkAuth()) return false;
$result = $this->http_get(self::API_URL_PREFIX.self::MEDIA_FOREVER_COUNT_URL.'access_token='.$this->access_token);
if ($result)
{
$json = json_decode($result,true);
if (isset($json['errcode'])) {
$this->errCode = $json['errcode'];
$this->errMsg = $json['errmsg'];
return false;
}
return $json;
}
return false;
}

php在手机上传照片框架 php微信上传永久图片素材求代码我爱编程网

用php实现手机拍照+本地相册实现图片上传功能,需要统一样式

PHP?很遗憾,PHP无法启动手机的拍照功能,这个需要调用手机的内部资源,通俗来说就是只有APP获取了这个权限才能去打开拍照公告,PHP是无法办到的。对于文件上传,目前还真的只有 <input type="file">,至于样式自己可以 去调试,关于你说的兼容性太差了,这个很不解,麻烦描述清楚点。

php在手机上传照片框架 php微信上传永久图片素材求代码

php上传文件(上传后显示图片)

如果你能上传成功得话下面得

upload.php
<?
include_once ('admin_global.php');
if(isset($_POST['upload'])){
$name=$_FILES["userfile"]["name"];
$updir="../common/images/";
//$uploadfile=$uploaddir.$_FILES['userfile']['name']; //新文件
$type=$_FILES["userfile"]["type"];
$size=$_FILES["userfile"]["size"];
if($name==""){echo"<script>alert('请先选择要上传的图片文件!');window.history.back();</script>";}
$tmp_name=$_FILES["userfile"]["tmp_name"];
if($type!="image peg" && $type!="image/jpeg" && $type!="image/gif"){echo"<script>alert('上传文件只可以是JPEG或GIF类型的!');window.history.back();</script>";exit;}
if(file_exists($updir.$name)){echo"<script>alert('服务器上已有同名文件!');window.history.back();</script>";exit;}
if(move_uploaded_file($tmp_name,$updir.$name)){echo"<script>alert('图片上传完成!');</script>";}
echo"<script>window.location.href('admin_tu_add.php?n=$name');</script>";
//echo"$name";
}

?>

admin_tu_add.php
<img src="../common/images/<? echo $_GET['n']; ?>">

如果上传不了得话就是你写得上传程序可能有问题

以上就是我爱编程网小编为大家带来的内容了,希望能够帮助到大家,了解更多后端开发资讯敬请关注我爱编程网。
与“php在手机上传照片框架 php微信上传永久图片素材求代码”相关推荐
php的框架图片上传 php怎样上传图片
php的框架图片上传 php怎样上传图片

怎样用php实现上传图片到数据库php实现上传图片保存到数据库的方法。具体分析如下:php上传图片,一般都使用move_uploaded_file方法保存在服务器上。但如果一个网站有多台服务器,就需要把图片发布到所有的服务器上才能正常使用(使用图片服务器的除外)如果把图片数据保存到数据库中,多台服务器间可以实现文件共享,节省空间。首先图片文件是二进制数据,所以需要把二进制数

2023-09-20 10:15:45
php传图片框架 php中上传图片的问题
php传图片框架 php中上传图片的问题

php怎样上传图片一下代码可以实现简单的(单个的)文件上传,你看看吧:有更好的方法可以讨论&lt;?php////////上传文件////////////if(isset($_POST["sub"])){ //$upfile="../upload_file/".$_FILES["file"]["name"]; $name=time();//定义变量,保存图片名,以防图片的名字相同 echo 

2023-09-10 09:03:38
php图片上传框架 怎样用php实现上传图片到数据库
php图片上传框架 怎样用php实现上传图片到数据库

PHP实现上传图片到数据库并显示输出的方法本文实例讲述了PHP实现上传图片到数据库并显示输出的方法。分享给大家供大家参考,具体如下:1.创建数据表CREATETABLEccs_image(idint(4)unsignedNOTNULLauto_increment,descriptionvarchar(250)defaultNUL

2023-09-14 00:37:15
php上传图片框架 PHP实现上传图片到数据库并显示输出的方法
php上传图片框架 PHP实现上传图片到数据库并显示输出的方法

PHP实现上传图片到数据库并显示输出的方法本文实例讲述了PHP实现上传图片到数据库并显示输出的方法。分享给大家供大家参考,具体如下:1.创建数据表CREATETABLEccs_image(idint(4)unsignedNOTNULLauto_increment,descriptionvarchar(250)defaultNUL

2023-09-08 23:48:13
微信小程序后段php框架 使用微信小程序如何实现图片上传功能
微信小程序后段php框架 使用微信小程序如何实现图片上传功能

小程序后端怎么搭建有以下七条。1.打开宝塔,配置站点和ssl证书,这里我是用的是宝塔自带的ssl证书,如果你的域名是阿里云、腾讯云的会赠送免费证书。2.配置好站点后,上传后端cms源码到站点根目录并且解压。3.解压完成后先不要急着安装,找到文件wxApi/config/dbs.php修改数据库账号密码。4.然后我们在访问域名安装-安装完成后后台路径是,你的域名后面+/admins.p

2023-10-04 04:06:25
php上传多张图片框架 input file用了multiple属性,而且选择了多张图片,PHP该怎么上传?
php上传多张图片框架 input file用了multiple属性,而且选择了多张图片,PHP该怎么上传?

inputfile用了multiple属性,而且选择了多张图片,PHP该怎么上传?其实就那两个函数\x0d\x0ais_uploaded_file()和move_uploaded_file()\x0d\x0a是循环上传的。你打印下$_FILES这个超全局数组就明白了。下面我的测试代码上传图片的:\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a无标题

2023-09-23 17:33:21
php框架怎么加图片 php 图片上传预览功能怎么实现
php框架怎么加图片 php 图片上传预览功能怎么实现

PHP后台添加图片信息和文字信息同时上传啊,比如先inster文字信息进库,query成功之后,再上传图片。当然也可以先上传图片,再文字入库,文字入库不成功的话,再unlink(删除)掉图片。上传是没有先后次序的。所有数据一起被发往服务器。(你的在线编辑器不错,能发我一个吗?170525859163@.com)谢谢。有空我们还能多多交流。QQ就是前面那个数字了。顺便贴个上传代

2023-09-19 21:52:53
小程序php后端框架 使用微信小程序如何实现图片上传功能
小程序php后端框架 使用微信小程序如何实现图片上传功能

使用微信小程序如何实现图片上传功能这篇文章主要给大家介绍了关于微信小程序实现图片上传功能的相关内容,文中详细介绍了前端+PHP后端的示例代码,对大家的理解和学习具有一定的参考学习价值,需要的朋友们一起学习学习吧。前言几乎每个程序都需要用到图片。下面就来给大家介绍前端+PHP后端实现微信小程序实现图片上传功能,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。方法如

2023-09-23 16:13:57