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
Freigeben: 2016-08-18 09:16:29
Original
1212 Leute haben es durchsucht

<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>
Nach dem Login kopieren
Nach dem Login kopieren

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>
Nach dem Login kopieren
Nach dem Login kopieren

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

Verwandte Etiketten:
php
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage