如何使用php封装类实现图片上传可直接引用

  次阅读 来源:互联网(转载协议) 2016-03-02 15:37 我要评论(0)

<?php

class image {

/**

*完成图片的上传

*

*@param array $file 待上传的文件信息的数组,用于5个元素的那个数组

*@return mixed 如果执行成功,返回上传了的文件名,否则返回false

*/

public function upload($file) {

if($file['error'] == 0) {

$allow_types = array('image/jpeg', 'image/pjpeg', 'image/png', 'image/gif');

if(in_array($file['type'], $allow_types)) {

$maxsize = 2000000;

if($file['size'] <= $maxsize) {

//上传

//需要将文件重命名,1,防止不规则的字符出现在文件名中,2,防止重名

//采用时间戳加随机数的形式

//后缀名如何获得?在原始文件名中获得后缀名

//在文件名中最后一个点截取到最后就是扩展名

//strrchr(在哪个字符串中查,查的字符串);

$new_filename = time() . mt_rand(10000, 99999) . strrchr($file['name'], '.');

//移动

//此函数返回移动成功还是失败

if(move_uploaded_file($file['tmp_name'],'images/'. $new_filename)) {

return $new_filename;

}

}

}

}

//只有一种情况返回文件名,其他全部返回false

return false;

}

}

?>

//-------------------------------------------------------------------------------------

<?php

header("content-type:text/html;charset=utf-8");

function __autoload($image){

require_once($image.'.class.php');

}

$image = new image();

$user = $_POST['user'];

$img = $_FILES['img'];

//var_dump($img);

$img = $image ->upload($img);

mysql_connect('localhost','root','123');

mysql_select_db('lyb');

mysql_query('set names utf8');

$q = "insert test_image(name,url) values('$user','$img')";

//var_dump($q);

$result = mysql_query($q);

if($result){

echo "添加成功.....<br /><br />";

}

else{

echo "添加失败。。。";

}

?>

//--------------------------------------------------------------------------------------

本站部分文章来源于网络以及网友投稿,本站只负责对文章进行整理、排版、编辑,是出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性。如果您有什么意见或建议,请联系QQ28-1688-302!

人工智能实验室
相关文章相关文章
  • 让AI触手可及  Qualcomm携手创通联达推出全新终端侧AI开发套件

    让AI触手可及 Qualcomm携手创通联达推出全新终端侧AI开发套件

  • 第一批国家重点研发计划公布,旷视科技开启“五年行动”

    第一批国家重点研发计划公布,旷视科技开启“五年行动”

  • 长虹新款智能语音空调,告诉你空调也能玩Siri

    长虹新款智能语音空调,告诉你空调也能玩Siri

  • 品友互动为Digital Travel APAC2018 唯一受邀中国AI企业

    品友互动为Digital Travel APAC2018 唯一受邀中国AI企业

网友点评网友点评
阅读推荐阅读推荐

据外媒报道,STEER打造了首款完全自动驾驶停车技术,旨在使常规车辆转变为无人驾驶车辆。STEER的首款技术应用是4级自动驾驶及网络安全停车...

近日,美国软性机器抓手制造商 Soft Robotics 宣布,获得 2000 万美元的融资,本轮投资者包括 Scale Venture Partners,Calibrate Ventures...

据外媒报道,加州车管局发布了《2017自动驾驶脱离报告(California Autonomous Vehicle Disengagement Reports)》,其中谈及了脱离的具体...

用人机语音交互,来解决智能家居适老的问题;通过家庭门禁与安防套件、空气净化套件、可燃气体与有害气体监控套件等相互联动,在不同生活情...