php上传图片函数
❶ php上传图片后怎么将它显示出来,用哪个函数 麻烦帮我写一下 我将图片存在upload里面
在PHP脚本文件拿扒态加入:
echo '<img src="'.$file_photo.'" width="1200" height="1600" />';
//$file_photo=你想要显示此亩出来的图片文件地消源址!
❷ php5.2.5版本的$_FILES函数的用法
你图片大小是多大的,php默认设置的上传大小最多为2M,如果想要更多你需要到php.ini中设置
❸ php 实现上传图片至服务器的函数
<form method=post action="upload.php" ENCTYPE="multipart/form-data">
<input type="file" name="upload_file">
<input type="submit" name="submit" value="上传文件">
用PHP上传时,需要对内容作详细的检查,例如是否容许读写文件,文件格式、文件大小是否在你指定的大小内等。
<?
$file_size_max = 1000000;
// 限制文件上传最大容量(bytes)
$store_dir = "/public/www/upload/";
// 上传文件的储存位置
$accept_overwrite = true;
//允许读写文件
// 检查文件大小
if ($upload_file_size > $file_size_max) {
echo "对不起,你的文件容量大于规定";
exit;
}
// 检查读写文件
if (file_exists($store_dir . $upload_file_name) &&&& !$accept_overwrite) {
echo "文件已存在,不能再复制";
exit;
}
//复制文件到指定目录
if (! @ ($upload_file,$store_dir . $upload_file_name)) {
echo "复制文件失败";
exit;
}
echo "上传文件完成";
?>
❹ php 编写 实现上传图片至服务器的函数
php上传图片客户端和服务器端实现方法分享给大家供大家参考。具体如下:
前台表单代码
<form name="form1" method="post" action="admin_upfile.php" enctype="multipart/form-data">
<input type="file" name="pic">
<input type="submit" name="Submit" value="开始上传" class="button">
</form>
后端php代码
<?php
//这里上传 $upsize判断上传文件的大小
$uppath = "/attached/"; //文件上传路径
//转换根目录的路径
if (strpos($uppath, "/") == 0)
{
$i = 0;
$thpath = $_SERVER["SCRIPT_NAME"];
$thpath = substr($thpath, 1, strlen($thpath));
while (strripos($thpath, "/") !== false)
{
$thpath = substr($thpath, strpos($thpath, "/") + 1, strlen($thpath));
$i = ++$i;
}
$pp = "";
for ($j = 0; $j < $i; ++$j)
{
$pp .= "../";
}
$uppaths = $pp . substr($uppath, 1, strlen($thpath));
}
$filename = date("y-m-d");
if (is_dir($uppaths . $filename) != TRUE)
mkdir($uppaths . $filename, 0777);
$f = $_FILES['pic'];
if ($f["type"] != "image/gif" && $f["type"] != "image/pjpeg" && $f["type"] != "image/jpeg" && $f["type"] != "image/x-png")
{
echo "<script>alert('只能上传图片格式的文件');window.close()</script>";
return false;
}
//获得文件扩展名
$temp_arr = explode(".", $f["name"]);
$file_ext = array_pop($temp_arr);
$file_ext = trim($file_ext);
$file_ext = strtolower($file_ext);
//新文件名
$new_file_name = md5(date("YmdHis")) . '.' . $file_ext;
echo $dest = $uppaths . $filename . "/" . date("ymdhis") . "_" .
$new_file_name; //设置文件名为日期加上文件名避免重复 上传目录
echo $dest1 = $uppath . $filename . "/" . date("ymdhis") . "_" .
$new_file_name; //设置文件名为日期加上文件名避免重复
$r = move_uploaded_file($f['tmp_name'], $dest);
?>
❺ php上传图片函数
if(!empty($uploadfile)){
$sql="insert into `tablename`(`pathname`) values('培蚂袭配兄$uploadfile')"物纯;
mysql_query($sql);
}
❻ php函数move_uploaded_file批量上传问题
个人认为,不建议这样写上传代码
<?php
$Files=$_FILES['attachment'];
foreach($Filesas$file){//遍历取得的数组
if(!empty($file['name'])){//如果文件名不为空,也就是跳过没选择文件的上传
//这这里处理你是上传
move_uploaded_file($file['tmp_name'],'你要保存的文件名称和路径');
}
}
php中,对数组的操作,用foreach循环最方便和合适,for循环显然没有那个方便
❼ php文件上传,如何实现独立的图片服务器的,该move_uploaded_file()函数能实现吗
可以的。图片也是文件的一种形式,主要上传的时候注意限制文件的后缀为.jpg,.png等等,并使用move_uploaded_file把图片转蔽早移到服务器中一个特定的文件夹中。为了方便集中管理这些图片,可以建立一个数据库,用一个数据表记录该图片的路径、名余消称、上传日期、格式等等信息。访问图像的时候,就可以根据图片的路径竖并知获得了。
❽ php 在多个上传图片时 怎么获取 要上传的图片宽高
分两个部分,一个是“多个图片”,一个是获取图片的宽、高。
第一个用循环做到,也就是用for、foreach之类的东西遍历你从页面中得到的图片数组
下一步用getimagesize()函数获得图片的信息。
此函数在php手册里有解释:图像生成与处理→GD→GD and image函数里。
此函数返回的结果如下:
返回一个具有四个单元的数组。索引 0 包含图像宽度的像素值,索引 1 包含图像高度的像素值。索引 2 是图像类型的标记:1 = GIF,2 = JPG,3 = PNG,4 = SWF,5 = PSD,6 = BMP,7 = TIFF(intel byte order),8 = TIFF(motorola byte order),9 = JPC,10 = JP2,11 = JPX,12 = JB2,13 = SWC,14 = IFF,15 = WBMP,16 = XBM。这些标记与 PHP 4.3.0 新加的 IMAGETYPE 常量对应。索引 3 是文本字符串,内容为“height="yyy" width="xxx"”,可直接用于 IMG 标记。
❾ PHP上传图片函数源码(重金悬赏)
<?
//$_FILES['myFile']['tmp_name'] 储存的临时文件名,一般是系统默认
//is_uploaded_file()判断上传是否有内容
if(is_uploaded_file($_FILES['banner']['tmp_name'])){
//$_FILES["banner"]把上传的内容存到一个数组中,并复制给$upfile
$upfile = $_FILES["banner"];
//可以通过print_r($upfile);查看数据的详细内容
$name = $upfile["name"];
$type = $upfile["type"];
$size = $upfile["size"];
$tmp_name = $upfile["tmp_name"];
$error = $upfile["error"];
//switch循环用来为变量$ok赋值,如果图片的格式$type(实际上就是文件的扩展名)满足格式要求(循环里的case就是用来控制格式),那么$ok = 1,以便下边程序进行判断
switch($type){
case 'image/pjpeg': $ok = 1 ;
break;
case 'image/jpeg': $ok = 1 ;
break;
case 'image/gif': $ok = 1 ;
break;
case 'image/png': $ok = 1 ;
break;
}
if($ok&&$error=='0'){
//move_uploaded_file(临时文件,目标位置和文件名)
move_uploaded_file($tmp_name,'../up/'.$name);
echo "恭喜!上传成功";
}
if(!$ok){
echo "抱歉!文件格式不正确";
}
}
?>
<form action="" method="post" name="upform" enctype="multipart/form-data">
上传文件:
<input type="file" name="banner" size="60" class="t_input" />
<input type="submit" name="submit" value="上传"/>
</form>
/*FORM标签enctype属性
表单中enctype="multipart/form-data"的意思,是设置表单的MIME编码。默认情况,这个编码格式是application/x-www-form-urlencoded,不能用于文件上传;只有使用了multipart/form-data,才能完整的传递文件数据
*/
❿ 如何使用php中ftp函数上传文件以及解决上传文件失败的方法
因为系统重构实现均衡负载,网站程序与文件服务器不在一台机子上。于是,程序在上传文件的同时就要将文件上传到文件服务器上。
这里涉及到windows主机上传到linux主机,linux主机上传到linux主机。这两个之间呢,只是稍微的有点区别,因为windows的路径可以兼容linux路径,但是linux的路径不兼容windows主机'\\'的写法。所以,在写路径的时候稍加注意即可。
下面,就列举上面两种情况php中使用ftp函数上传文件的具体实现代码。
一、 ftp上传图片参数说明。
$source:本机图片完整的路径。(/a/b/c.jpg)
$des :上传目标linux主机完整的路径。
$ftp_server:ftp地址
$ftp_user_name:ftp用户名
$ftp_user_pass: ftp密码
$port:端口
二、如何使用php中ftp函数上传文件的方法
例如:
本地地址为:/a/b/c.jpg
目标地址为:/d/a/b/c.jpg
2.1、linux主机上传linux主机。
function ftpSendFile($source,$des,$ftp_server,$ftp_user_name,$ftp_user_pass,$port)
{
// 此步骤是在于上传目录与本机的目录不一致转换使用
$des = "/d" . $des;
$conn_id = ftp_connect($ftp_server, $port) or die("Couldn't connect to $ftp_server");
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
ftp_pasv($conn_id, TRUE);
$ftp_folder = dirname($des);
$dir = explode("/", $ftp_folder);
$path = "";
for ($i = 0; $i < count($dir); $i++) {
$path .= "/" . $dir[$i];
if (!ftp_chdir($conn_id, $path)) {
$result = ftp_mkdir($conn_id, $path);
}
}
if (ftp_put($conn_id, $des, $source, FTP_BINARY)) {
return 1;
} else {
return 0;
}
ftp_close($conn_id);
}
2、windows主机上传linux主机。
function sendPic($source,$des,$ftp_server,$ftp_user_name,$ftp_user_pass,$port)
{
$des = "/d" . $des;
$conn_id = ftp_connect($ftp_server, $port) or die("Couldn't connect to $ftp_server");
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
ftp_pasv($conn_id, TRUE);
$ftp_folder = dirname(str_ireplace('\\', '/', $des));
$dir = explode("/", $ftp_folder);
$path = "";
for ($i = 0; $i < count($dir); $i++) {
$path .= "/" . $dir[$i];
if (!ftp_chdir($conn_id, $path)) {
$result = ftp_mkdir($conn_id, $path);
}
}
if (ftp_put($conn_id, str_ireplace('\\', '/', $des), $source, FTP_BINARY)) {
return 1;
} else {
return 0;
}
ftp_close($conn_id);
}
上面的两种使用php中ftp函数上传文件的方法基本可以满足正常的使用。