Heim >Backend-Entwicklung >PHP-Tutorial >Warum verwendet PHP Curl zum Hochladen von Dateien und kann nach dem Löschen eines Satzes nicht ausgeführt werden?

Warum verwendet PHP Curl zum Hochladen von Dateien und kann nach dem Löschen eines Satzes nicht ausgeführt werden?

WBOY
WBOYOriginal
2016-08-18 09:16:291213Durchsuche

<code>   <?php
   function upload_file($url,$filename,$path){
        $data = array('pic'=>'@'.realpath($path).";filename=".$filename);
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_POST, true );
        curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
        curl_setopt($ch, CURLOPT_HEADER, false);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        $return_data = curl_exec($ch);
        curl_close($ch);
        $decode = json_decode($return_data);
        echo $decode->original_pic;      
   }

    if ($_POST) {
        $url = 'https://127.0.0.1/img.php';
        $tmpname = $_FILES['fname']['name'];
        $tmpfile = $_FILES['fname']['tmp_name'];
        upload_file($url,$tmpname,$tmpfile);
        exit;
    }
    echo '<form action="" enctype="multipart/form-data"  method="post">
    <input type="text" name="fname" />
  <input type="file" name="fname" />
  <input type="submit" value="Submit" />
</form>';
?>
</code>

Der Code ist wie oben. Warum kann ich nach dem Löschen von nicht posten?

Antwortinhalt:

<code>   <?php
   function upload_file($url,$filename,$path){
        $data = array('pic'=>'@'.realpath($path).";filename=".$filename);
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_POST, true );
        curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
        curl_setopt($ch, CURLOPT_HEADER, false);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        $return_data = curl_exec($ch);
        curl_close($ch);
        $decode = json_decode($return_data);
        echo $decode->original_pic;      
   }

    if ($_POST) {
        $url = 'https://127.0.0.1/img.php';
        $tmpname = $_FILES['fname']['name'];
        $tmpfile = $_FILES['fname']['tmp_name'];
        upload_file($url,$tmpname,$tmpfile);
        exit;
    }
    echo '<form action="" enctype="multipart/form-data"  method="post">
    <input type="text" name="fname" />
  <input type="file" name="fname" />
  <input type="submit" value="Submit" />
</form>';
?>
</code>

Der Code ist wie oben. Warum kann ich nach dem Löschen von nicht posten?

Gibt es eine Fehlermeldung? Posten Sie es und schauen Sie es sich an

. . . Es sollte ein Fehler auftreten. Gibt die Ausführung nichts zurück? Dann können wir nur unterbrechen und schauen, welcher Schritt das Problem verursacht

Die hochgeladenen Dateiinformationen sollten in $_FILES und nicht in $_POST gespeichert werden. Dann wird in Ihrem Beitrag nichts angezeigt.
Warum verwendet PHP Curl zum Hochladen von Dateien und kann nach dem Löschen eines Satzes nicht ausgeführt werden?
Keine Dokumentbeschreibung gefunden , können Sie einen Namen für die Übermittlung festlegen

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn