PHP怎么把图片数据保存为jpg图片到服务器目录

现在用js获取到了图片数据,怎么把这数据传给PHP然后保存为图片形式到服务器目录里
2026年09月27日 03:17
有3个网友回答
网友(1):

  1. 第一步:通过$_FILES获取文件信息。

  2. 第二步:指定新文件名称以及路径,并赋值给一个变量。

  3. 第三步:通过move_uploaded_file上传文件。

  4. 第四步:上传成功后,将数值存入数据库服务器目录即可。

  • 代码如下

1.conn.php


$host="localhost"; //数据库服务器名称 
$user="root"; //用户名 
$pwd="1721"; //密码 
$conn=mysql_connect($host,$user,$pwd); 
mysql_query("SET 
character_set_connection=gb2312, 
character_set_results=gb2312, 
character_set_client=binary",$conn); 
 
if ($conn==FALSE) 
{ 
echo "
服务器连接失败!
请刷新后重试。
"; 
return true; 
} 
$databasename="database";//数据库名称 
 
do 
{ 
$con=mysql_select_db($databasename,$conn); 
}while(!$con); 
 
if ($con==FALSE) 
{ 
echo "
打开数据库失败!
请刷新后重试。
"; 
return true; 
} 
 
?>

2.upload.php


if ($_GET['action'] == "save"){ 
include_once('conn.php'); 
include_once('uploadclass.php'); 
$title=$_POST['title']; 
$pic=$uploadfile; 
if($title == "") 
echo""; 
$sql="insert into upload(title,pic) values('$title','$pic')"; 
$result=mysql_query($sql,$conn); 
//echo""; 
} 
?> 
 
 
文件上传实例 
 
 
 
 
 
  
 
 
 
 
标题: 
 
 
 
文件:  
 
 
 
  
 
 
 
 
 
 
 
 

3.uploadclass.php

$uploaddir = "upfiles/";//设置文件保存目录 注意包含/ 
$type=array("jpg","gif","bmp","jpeg","png");//设置允许上传文件的类型 
$patch="upload/";//程序所在路径 
 
//获取文件后缀名函数 
function fileext($filename) 
{ 
return substr(strrchr($filename, '.'), 1); 
} 
//生成随机文件名函数 
function random($length) 
{ 
$hash = 'CR-'; 
$chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz'; 
$max = strlen($chars) - 1; 
mt_srand((double)microtime() * 1000000); 
for($i = 0; $i < $length; $i++) 
{ 
$hash .= $chars[mt_rand(0, $max)]; 
} 
return $hash; 
} 
 
$a=strtolower(fileext($_FILES['file']['name'])); 
//判断文件类型 
if(!in_array(strtolower(fileext($_FILES['file']['name'])),$type)) 
{ 
$text=implode(",",$type); 
echo "您只能上传以下类型文件: ",$text,"
"; 
} 
//生成目标文件的文件名 
else{ 
$filename=explode(".",$_FILES['file']['name']); 
do 
{ 
$filename[0]=random(10); //设置随机数长度 
$name=implode(".",$filename); 
//$name1=$name.".Mcncc"; 
$uploadfile=$uploaddir.$name; 
} 
 
while(file_exists($uploadfile)); 
 
if (move_uploaded_file($_FILES['file']['tmp_name'],$uploadfile)) 
{ 
if(is_uploaded_file($_FILES['file']['tmp_name'])) 
{ 
 
echo "上传失败!"; 
} 
else 
{//输出图片预览 
echo "
您的文件已经上传完毕 上传图片预览: 

"; 
echo "
继续上传
"; 
} 
} 
 
} 
?>

网友(2):

楼主,你可以用 ajax 试一试
js 要 传送数据给 PHP 的话,就是 JS 要发送服务器请求,目前我所知道的方法是: post / get 通过 一个隐藏按钮,另一种是 ajax ,楼主可以尝试一下

网友(3):

这种代码,百度一下,网上大把的有。