Oracle bir. Php sayfaya dosya gönderebilir

2 Cevap php

Benim web sitesinde Müşterilerimizin siparişlerini göndermek hangi bir. Php komut dosyası var.

  $destname = CreateUniqueOrderFileName();
  if (is_uploaded_file($_FILES['file']['tmp_name'])) {
    if (move_uploaded_file($_FILES['file']['tmp_name'], $destname))         
      echo "OK";
    else 
      echo "ERROR: move";                  
  }

Yani benim müşterileri için C # bir uygulama yazdı ve ben bir emir yüklersen böyle bir şey yapın:

var client = new WebClient();
byte[] response = client.UploadFile("http://mywebsite/order.php", "POST", orderFile);

But now I have a customer who uses Oracle and wants to post an order using PL/SQL. I try to tell him he has to do a file uploaded via HTTP POST and use multipart/form-data but he does not understand me. Maybe I'm using the wrong vocabulary or not using standards.

Yani birisi PL / SQL bir. Php komut dosyası veya bir Oracle istemcisi ile bir. Php web sayfasına bir dosya yükleyerek daha fazla bilgi bulmak için bir öneri için bir dosya göndermek için nasıl bir örnek var.

2 Cevap

Biz RFC2388 göre Content-Type multipart / form-data kullanarak bir POST isteği yapmak için bir yol bulabiliriz. Yani böyle bir şey için. Php komut dosyası değişti.

   $fp = fopen('php://input','r');
   $content = stream_get_contents($fp);
   $destname = CreateUniqueOrderFileName();
   $isWritten = @file_put_contents($destname, $content); 
   if($isWritten===false)
   {
     echo "ERROR: could not write file: ".$destname;    
     return;    			
   }

HTTP POST yapmak için UTL_HTTP lib kullanarak sipariş göndermek mümkün bu biz kullanma.

Ben bir HTTP POST yapmak için PL / SQL paket UTL_HTTP kullanabilirsiniz düşünüyorum

http://awads.net/wp/2005/11/30/http-post-from-inside-oracle/

Başka bir seçenek Java saklı yordam kullanmak olabilir