在PHP中使用base64编码进行多文件上载
我想上传数据库中的图像,并使用base64编码/解码获取它们。但我不知道怎么做 HTML:在PHP中使用base64编码进行多文件上载,php,html,mysql,Php,Html,Mysql,我想上传数据库中的图像,并使用base64编码/解码获取它们。但我不知道怎么做 HTML: PHP: if(isset($\u POST['sbtn'])) { $countfiles=count($_FILES['s_o_img']['name']); 对于($i=0;$i请尝试这种方式 在文件获取内容上添加[$i] if(isset($_POST['sbtn'])) { $countfiles = count($_FILES['s_o_img']['name']); fo
PHP:
if(isset($\u POST['sbtn']))
{
$countfiles=count($_FILES['s_o_img']['name']);
对于($i=0;$i请尝试这种方式
在文件获取内容上添加[$i]
if(isset($_POST['sbtn']))
{
$countfiles = count($_FILES['s_o_img']['name']);
for($i=0;$i<$countfiles;$i++){ // add .length of $countfiles
$filename = $_FILES['s_o_img']['name'][$i];
move_uploaded_file($_FILES['s_o_img']['tmp_name'][$i],$filename);
$bin = file_get_contents($_FILES["s_o_img"]["name"][$i]); // add [$i] for valid index image
$hex_string = base64_encode($bin);
}
}
if(isset($\u POST['sbtn']))
{
$countfiles=count($_FILES['s_o_img']['name']);
对于($i=0;$i)
试试这个,就行了。数据库还是将文件存储在服务器上?。length
是javascript,而不是PHP。@ThierryLeroux同样的海豚。。。
if(isset($_POST['sbtn']))
{
$countfiles = count($_FILES['s_o_img']['name']);
for($i=0;$i<$countfiles;$i++){
$filename = $_FILES['s_o_img']['name'][$i];
move_uploaded_file($_FILES['s_o_img']['tmp_name'][$i],$filename);
$bin = file_get_contents($_FILES["s_o_img"]["name"]);
$hex_string = base64_encode($bin);
}
if(isset($_POST['sbtn']))
{
$countfiles = count($_FILES['s_o_img']['name']);
for($i=0;$i<$countfiles;$i++){ // add .length of $countfiles
$filename = $_FILES['s_o_img']['name'][$i];
move_uploaded_file($_FILES['s_o_img']['tmp_name'][$i],$filename);
$bin = file_get_contents($_FILES["s_o_img"]["name"][$i]); // add [$i] for valid index image
$hex_string = base64_encode($bin);
}
}
$images = array('zdcci389,3232cci389,42423fsfs2343'); //all base64 image strings
foreach($images as $image){
$binary = base64_decode($image);
$f = finfo_open();
$mime_type = finfo_buffer($f, $binary, FILEINFO_MIME_TYPE);
$expload_data = explode("/",$mime_type);
$expload_data = array_filter($expload_data);
$extension = "jpg";
if (!empty($expload_data)){
$extension_val = $expload_data[1];
if($extension_val!=""){
$extension = $extension_val;
}
}
$filename = uniqid().".".$extension;
$orignal_path = "uploads/".$filename;
file_put_contents($orignal_path, $binary);
}