php封装类实现的图片上传可直接引用
作者:yuhemecy_883 | 来源:互联网 | 2013-06-25 20:30
<?phpclassimage{/***完成图片的上传**@paramarray$file待上传的文件信息的数组,用于5个元素的那个数组*@returnmixed如果执行成功,php封装类实现的图片上传可直接引用,返回上传了的文件名,否则返回false
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;
}
}
?>
//-------------------------------------------------------------------------------------
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 "添加成功..... ";
}
else{
echo "添加失败。。。";
}
?>
//--------------------------------------------------------------------------------------
姓名:
图片:
推荐阅读
本文详细介绍了优化DB2数据库性能的多种方法,涵盖统计信息更新、缓冲池调整、日志缓冲区配置、应用程序堆大小设置、排序堆参数调整、代理程序管理、锁机制优化、活动应用程序限制、页清除程序配置、I/O服务器数量设定以及编入组提交数调整等方面。通过这些技术手段,可以显著提升数据库的运行效率和响应速度。 ...
[详细]
蜡笔小新 2024-12-22 16:20:33
本文介绍了一种使用Selenium和ChromeDriver结合Python代码,轻松实现对豆瓣网站进行完整页面截图的方法。该方法不仅简单易行,而且解决了新版Selenium不再支持PhantomJS的问题。 ...
[详细]
蜡笔小新 2024-12-22 15:17:55
本文记录了在安装CPU版本的TensorFlow过程中遇到的依赖问题及解决方案,特别是numpy版本不匹配和动态链接库(DLL)错误。通过详细的步骤说明和专业建议,帮助读者顺利安装并使用TensorFlow。 ...
[详细]
蜡笔小新 2024-12-22 13:22:19
本文详细介绍了在XAMPP环境中如何修改Apache和MySQL的默认端口号,并确保WordPress能够正常访问。同时,提供了针对Go语言社区和Golang开发者的相关建议。 ...
[详细]
蜡笔小新 2024-12-22 13:14:54
本文旨在纠正关于 MySQL 中 IN 语句是否使用索引的常见误解。许多人认为 IN 语句的索引使用与字符串长度有关,实际上,影响因素更为复杂,包括数据分布和 MySQL 版本等因素。 ...
[详细]
蜡笔小新 2024-12-22 12:34:36
在众多管理系统中,如菜单、分类和部门等模块,通常需要处理层级结构。为了高效管理和展示这些层级数据,本文将介绍如何使用 PHP 实现多级树形结构,并提供代码示例以帮助开发者轻松实现无限分级。 ...
[详细]
蜡笔小新 2024-12-22 12:29:28
This article explains how to check if a given string consists solely of English characters, including letters and numbers. It provides a practical PHP function for this purpose. ...
[详细]
蜡笔小新 2024-12-22 12:20:17
工作后体重逐渐增加,尽管尚未达到令人担忧的程度,但对于热爱运动的人来说,这一变化难以接受。经过长时间的考虑,我决定重新制定减重计划,以恢复最佳的身体状态。 ...
[详细]
蜡笔小新 2024-12-22 12:12:19
本文探讨如何配置 Nginx 以将传入请求反向代理到运行在本地绑定端口上的 Docker 容器,并解决常见的路径重定向问题。 ...
[详细]
蜡笔小新 2024-12-22 12:12:04
12月16日JavaScript变量、函数、流程、循环等***线上九期班 ...
[详细]
蜡笔小新 2024-12-22 12:11:30
本文探讨了卫青与汉武帝之间的特殊关系,以及卫青去世后其家族的命运。卫青不仅是汉武帝的重要将领,还通过婚姻关系成为皇亲国戚。然而,卫青去世后,其家族并未立即遭到灭顶之灾,而是逐渐因政治风波受到牵连。 ...
[详细]
蜡笔小新 2024-12-22 11:59:28
本文将详细介绍如何使用Adobe After Effects (AE) 制作一个裂变式加载动画。通过简单的步骤,您可以轻松创建出引人注目的转圈式加载效果。 ...
[详细]
蜡笔小新 2024-12-22 11:22:22
本文详细介绍了如何在PHP中进行数组删除、清空等操作,并提供了在Visual Studio Code中创建PHP文件的步骤。 ...
[详细]
蜡笔小新 2024-12-22 11:04:28
对于后端开发者而言,编写和维护API文档既繁琐又不可或缺。本文将介绍一款全新的API文档工具,帮助团队更高效地协作,简化API文档生成流程。 ...
[详细]
蜡笔小新 2024-12-22 11:02:41
探讨如何在自定义组件中实现多个输入框与父组件数据的动态双向绑定,确保组件内部多个值的变化能实时反映到父组件的数据中。 ...
[详细]
蜡笔小新 2024-12-22 10:57:03
yuhemecy_883
这个家伙很懒,什么也没留下!