Загрузка файла в photobucket

#php #xml #photobucket

#php #xml #photobucket

Вопрос:

Я хочу загрузить файл через photobucket API с использованием Php, но возникает ошибка с отметкой времени.. Это мой код

 <?php

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
session_start();
require_once('PBAPI.php');
require_once ('./helper/xmltoarray.php');
require_once ('./helper/curl.php');
require_once('OAuth/Request.php');
require_once('OAuth/Consumer.php');
require_once('OAuth/Signature/hmac_sha1.php');
if ($_FILES["file"]["error"] > 0) {
    echo '<p class="error">Error' . $_FILES["file"]["error"] . '</p>';
    exit;
}
//else {
//
//}
//if ((($_FILES["file"]["type"] == "image/gif")
//        || ($_FILES["file"]["type"] == "image/jpeg")
//        || ($_FILES["file"]["type"] == "image/pjpeg"))
//        amp;amp; ($_FILES["file"]["size"] < 25000)) {
//    if ($_FILES["file"]["error"] > 0) {
//        echo "Error: " . $_FILES["file"]["error"] . "<br />";
//    }
else {
    echo "Upload: " . $_FILES["file"]["name"] . "<br />";
    echo "Type: " . $_FILES["file"]["type"] . "<br />";
    echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
    echo "Stored in: " . $_FILES["file"]["tmp_name"];
    if (!move_uploaded_file($_FILES["file"]["tmp_name"], "upload/" . $_FILES["file"]["name"])) {

        echo '<p class="error">Some Error is occured in Uploading the file</p>';
        exit;
    }
    try {
        $path = dirname(__FILE__) . '\upload\'. $_FILES["file"]["name"];
        echo $path;
        $key = 'xxxxxxxx';
        $sec = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx';
        $api = new PBAPI($key, $sec);
        $api->setOAuthToken($_SESSION['oauth_token'], $_SESSION['oauth_secret']);
        $api->setResponseParser('simplexml');
        $response = $api->album('temp')->upload(array('type' => 'image', 'uploadfile' => '@'.$path, 'title' => 'my upload'))->post();
        var_dump($response);
        // $data = $response['content']['result']['primary']['media'];
    } catch (PBAPI_Exception_Response $e) {
        //echo "RESPONSE $e";
    } catch (PBAPI_Exception $e) {
        //echo "EX $e";
    }
}
?>
  

ответ приведен ниже. я не знаю, почему он выдает эту ошибку.В коде все в порядке

 <response>
    <status>Exception</status>
    <message>Authentication failed timestamp invalid -1319642824</message>
    <code>7</code>
    <format>xml</format>
    <method>POST</method>
    <timestamp>1319642824</timestamp>
</response>
<!-- den3ws194 @ Wed, 26 Oct 2011 09:27:04 -0600 -->
  

пожалуйста, любой, кто может сказать мне, в чем может быть проблема..

Комментарии:

1. Обратите внимание, что ваш скрипт слепо использует предоставленное пользователем имя файла для сохранения загрузки. Это имя может быть ЛЮБЫМ и включать информацию о пути. Ваш скрипт позволяет удаленному пользователю записывать любой файл на сервере, к которому имеет доступ процесс веб-сервера.

2. Часто задаваемые вопросы по API Photobucket — по-видимому, это довольно распространенный вопрос для них.

3. @GigaWatt Я видел это, но ни одна из упомянутых проблем не присутствует в моем коде