0

VB.net プログラムからコンテンツをアップロードするサイトを設計しています。また、いずれかのページからコンテンツをアップロードできるように設定しました。

    <form enctype="multipart/form-data" action="upload.php" method="post">
        <input type="hidden" name="MAX_FILE_SIZE" value="1000000" />
        Choose a file to upload: <input name="uploaded_file" type="file" />
        <input type="submit" value="Upload" />
    </form> 

これと同じ方法を使用してアップロードする方法はありますが、私の VB.net プログラムを使用しますか? 私はVB.netを使用しているので、すべての.netの例と解決策が受け入れられます:)

編集:

これは、upload.php のコピーです。

<?php

        //Check that we have a file
        if((!empty($_FILES["uploaded_file"])) && ($_FILES['uploaded_file']['error'] == 0)) {
          //Check if the file is JPEG image and it's size is less than 350Kb
          $filename = basename($_FILES['uploaded_file']['name']);
          $ext = substr($filename, strrpos($filename, '.') + 1);
          if (($ext == "jpg") && ($_FILES["uploaded_file"]["type"] == "image/jpeg") && 
            ($_FILES["uploaded_file"]["size"] < 350000)) {
            //Determine the path to which we want to save this file
              $newname = dirname(__FILE__).'/uploads/'.$filename;
              //Check if the file with the same name is already exists on the server
              if (!file_exists($newname)) {
                //Attempt to move the uploaded file to it's new place
                if ((move_uploaded_file($_FILES['uploaded_file']['tmp_name'],$newname))) {
                   echo "It's done! The file has been saved as: ".$newname;
                } else {
                   echo "Error: A problem occurred during file upload!<br /><br /><a href='index.php'>Try Uploading Again</a>";
                }
              } else {
                 echo "Error: File ".$_FILES["uploaded_file"]["name"]." already exists!  That's our fault.  Please be patient while we fix it :)<br /><br /><a href='index.php'>Try Uploading Again</a>";
              }
          } else {
             echo "Error: Only .jpg images under 350Kb are accepted for upload<br /><br /><a href='index.php'>Try Uploading Something Smaller</a>";
          }
        } else {
         echo "Error: No file uploaded";
        }
        ?>
4

1 に答える 1

0

コメントで言われたように、あなたが必要System.Net.WebClientです。問題は、適切なヘッダーがないことが原因である可能性があります

.Headers.Add("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705;)")
.Headers.Add(System.Net.HttpRequestHeader.ContentType, "application/x-www-form-urlencoded")
.Headers.Add(System.Net.HttpRequestHeader.ContentLanguage, "en-gb")

または、Cookie を適切に処理しないことによって: It could Be Done!: WebClient: Handling Cookies

于 2012-05-17T07:07:42.123 に答える