php + 七牛 = 本地存储 + 远端存储 + markdowneasy

吼吼,可以的哦。

其实,我们只是 php在放文件到本地之后,让后调用qshell去upload 到 七牛。

我们可能会遇到如下的问题

Open account file error, open /var/lib/nginx/.qshell/account.json: no such file or directory, please use `account` to set AccessKey and SecretKey first

这个就是 qshell在验证的时候,会在~/.qshell/下面保留验证信息,我们测试的时候使用root账户,所以 .qshell信息保留在/root/.qshell下面,但是 web server 使用的nginx, 家目录在 /var/lib/nginx/.qshell直接拷贝过去就好了。

  • 演示过程如下
    mark

  • 最终代码如下

<?php
date_default_timezone_set("Asia/Shanghai");
$mytime=date("YmdHis");
$myextension=end(explode(".",$_FILES["fileToUpload"]["name"]));

$target_dir = "uploads/";
//$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
$target_file = $target_dir . $mytime . "." . $myextension;

// echo $mytime . "<br>";
// echo $myextension . "<br>";
// echo $target_file . "<br>";

$uploadOk = 1;
$imageFileType = pathinfo($target_file,PATHINFO_EXTENSION);
// Check if image file is a actual image or fake image
if(isset($_POST["submit"])) {
    $check = getimagesize($_FILES["fileToUpload"]["tmp_name"]);
    if($check !== false) {
        echo "File is an image - " . $check["mime"] . ".";
        $uploadOk = 1;
    } else {
        echo "File is not an image.";
        $uploadOk = 0;
    }
}
// Check if file already exists
if (file_exists($target_file)) {
    echo "Sorry, file already exists.";
    $uploadOk = 0;
}
// Check file size
// if ($_FILES["fileToUpload"]["size"] > 500000) {
if ($_FILES["fileToUpload"]["size"] > 1025*1024*1024) {
    echo "Sorry, your file is too large.";
    $uploadOk = 0;
}
// Allow certain file formats
if($imageFileType != "jpg" && $imageFileType != "png" && $imageFileType != "jpeg"
&& $imageFileType != "gif" ) {
    echo "Sorry, only JPG, JPEG, PNG & GIF files are allowed.";
    $uploadOk = 0;
}
// Check if $uploadOk is set to 0 by an error
if ($uploadOk == 0) {
    echo "Sorry, your file was not uploaded.";
// if everything is ok, try to upload file
} else {
    if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) {
        echo "The file ". basename( $_FILES["fileToUpload"]["name"]). " has been uploaded." . "<br>";
        echo "You can use the following line to your blog markdown editor!" . "<br>";
        echo "![mark](http://soft.ops.ac.cn/php/" . $target_file . ")";
        echo "<br>";
        echo "Start Using qiniu qshell to upload the file";
        echo "<br>";
        #exec("./qshell_linux_amd64 fput zzlyzq010 uploads/alive.gif uploads/alive.gif");
        echo exec("./qshell_linux_amd64 fput zzlyzq010 " . $target_file . " " . $target_file);
        echo "<br>";
        echo "![mark](http://ojv12llai.bkt.clouddn.com/" . $target_file . ")";
        echo "<br>";
    } else {
        echo "Sorry, there was an error uploading your file.";
    }
}

?>

<!DOCTYPE html>
<html>
<body>

<form name="uploadform" action="up.php" method="post" enctype="multipart/form-data">
    Select image to upload:
    <input type="file" name="fileToUpload" id="fileToUpload">
    <input type="submit" value="Upload Image" name="submit">
</form>
</body>
</html>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值