В настоящее время я использую этот код:
<form enctype="multipart/form-data" method="post" action="upload_img.php"> Choose your file here: <input name="uploaded_file" type="file"/> <input type="submit" value="Upload It"/> </form> <? if( isset($_FILES['uploaded_file']) ) { $IMGUR_API_KEY = 'APIKEY'; $filename = $_FILES['uploaded_file']['tmp_name']; $handle = fopen($filename, "r"); $data = fread($handle, filesize($filename)); //$data is file data $pvars = array('image' => base64_encode($data), 'key' => $IMGUR_API_KEY); #$pvars = array('key' => $IMGUR_API_KEY); $timeout = 30; $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, 'http://api.imgur.com/2/upload.xml'); #curl_setopt($curl, CURLOPT_URL, 'http://api.imgur.com/2/gallery.xml'); curl_setopt($curl, CURLOPT_TIMEOUT, $timeout); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $pvars); $xml = curl_exec($curl); $xmlsimple = new SimpleXMLElement($xml); echo '<img height="180" src="'; echo $xmlsimple->links->original; echo '">'; curl_close ($curl); } ?>
Это работает отлично, но мне нужно использовать это как отдельную форму для вставки нескольких полей. В конце концов, все, что мне нужно сделать, это сделать запрос AJAX cURL для загрузки фотографии, а затем получить URL-адрес imgur.com прямому изображению. Как я могу сделать эту форму отправкой, которая делает это через AJAX, чтобы я мог оставаться на этой странице … Любая помощь была бы оценена, она не должна быть полностью написана, а искра идеи. Я понятия не имею, куда я иду с этим софаром.
Спасибо, HackyWackee