如何使用curl上传远程文件



我想知道我在PHP:中的以下脚本中做错了

    <!DOCTYPE html>
<html>
<head>
    <title>TEST</title>
    <meta charset="utf-8">
</head>
<body>
<?php
    set_time_limit(0);
    $url = "http://www0.xup.in/exec/xupload.php?uid=&key=";
    $user_agent = "Mozilla/5.0 (Windows NT 6.1; rv:28.0) Gecko/20100101 Firefox/28.0";
    $referer = "http://www.xup.in/";
    if(isset($_FILES['f1'])){
        move_uploaded_file($_FILES['f1']['tmp_name'],"files/".$_FILES['f1']['name']);
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_USERAGENT, $user_agent);
        //curl_setopt($ch, CURLOPT_POST, 1);
        curl_setopt($ch, CURLOPT_REFERER, $referer);
        curl_setopt($ch, CURLOPT_POSTFIELDS, array("name"=>"F1","filename"=>"@"."files/".$_FILES['f1']['name']));
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
        $result = curl_exec($ch);
        curl_close($ch);
        //unlink("files/".$_FILES['file']['name']);
        echo $result;
    }else{
        echo '
            <form action="upload_curl.php" method="post" enctype="multipart/form-data">
                <label for="f1">Filename:</label>
                <input type="file" name="f1" id="f1"><br>
                <input type="submit" name="submit" value="Submit">
            </form>
        ';  
    }
?>
</body>
</html>

它花了更多的钱,我试着它在应该的时候没有给我任何结果,我只想用curl上传一张本地图片到该网站并显示结果,但它显示为空白,我不知道为什么,我认为我的逻辑很好,我希望有人能告诉我出了什么问题,提前向大家致以问候和感谢。

您从未设置要对其进行curl调用的URL,可以使用curl_setopt()进行设置,也可以将其作为第一个参数curl_init()传递。在您的情况下:curl_init($url);

最后,您应该检查curl_error($ch)是否存在错误并进行处理(此外,它可能有助于在开发代码时告诉您代码出了什么问题)。

相关内容

  • 没有找到相关文章

最新更新