if 语句返回变量

我有一个表单,在表单内部,有与 imgur API 链接的图像上传,还有其他字段,如姓名、电子邮件等。我的问题是在 ajax 文件中上传的图像并使用 API 从 imgur 返回链接。并存储在变量中,然后插入我的数据库中。


变量: $url 在第一个 if 语句中工作,并从“myurl”更改为我从 imgur API 获取并成功插入的链接,但在第二个 if 语句中,$url 是“myurl”,没有任何更改,所以如何我在执行第一个 if 语句后更新我的 $url


 <?

    $url = 'myurl';

    


    

    

    if(isset($_FILES['file'])){

    


        $img=$_FILES['file'];

        $allowedTypes = array(IMAGETYPE_PNG, IMAGETYPE_JPEG);

        $detectedType = exif_imagetype($img['tmp_name']);

        if($img['name']=='' or !in_array($detectedType, $allowedTypes)){

            returnJSON(array('tp' => 'error', 't' => 'خطأ', 'm' => 'بجب أن يكون الملف صورة من صيغة PNG أو JPEG','b' => true));

        }else{

            $conn=$database->openConnection();

    

                 $filename = $img['tmp_name'];

                 $client_id="***********";//Your Client ID here

                 $handle = fopen($filename, "r");

                 $data = fread($handle, filesize($filename));

                 $pvars   = array('image' => base64_encode($data));

                 $timeout = 30;

                 $curl    = curl_init();

                 curl_setopt($curl, CURLOPT_URL, 'https://api.imgur.com/3/image.json');

                 curl_setopt($curl, CURLOPT_TIMEOUT, $timeout);

                 curl_setopt($curl, CURLOPT_HTTPHEADER, array('Authorization: Client-ID ' . $client_id));

                 curl_setopt($curl, CURLOPT_POST, 1);

                 curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);

                       

                    }

                

                 }

            

        }


扬帆大鱼
浏览 112回答 1
1回答

蝴蝶刀刀

您是否尝试过var_dump();或以其他方式在每一行中打印以检查您丢失的位置$url?如果你打印了$urlbeforeif($_SERVER['REQUEST_METHOD'] == "POST"){并且它仍然存在'myurl',那么我认为它在 first 中重新声明得太深了IF。
打开App,查看更多内容
随时随地看视频慕课网APP