PHP çok parçalı POST veri alma istekleri

3 Cevap php

Ben PHP aşağıdaki HTTP isteği almak istiyorum:

Content-type: multipart/form-data;boundary=main_boundary

--main_boundary
Content-type: text/xml
<?xml version='1.0'?>
<content>
Some content goes here
</content>

--main_boundary
Content-type: multipart/mixed;boundary=sub_boundary

  --sub_boundary
  Content-type: application/octet-stream

  File A contents

  --sub_boundary
  Content-type: application/octet-stream

  File B contents

  --sub_boundary

--main_boundary--

(Not: Ben sadece bu yazı için daha okunabilir hale getirmek için alt-parçaları girintili var.)

PHP çok akıcı değilim ve PHP kodu Çoklu form isteği bu tür almak için nasıl anlamaya bazı yardım / işaretçiler almak istiyorum. Bir keresinde formu ben standart bir HTML formu aldı ve sonra ben "$ HTTP_GET_VARS" dizisindeki indeks anahtar olarak kendi adını kullanarak form öğeleri erişebilir, ancak bu durumda hiçbir form elemanı adları vardır bazı kod yazılır ve var veri parçaları (yani alt parça = düzeyli array) doğrusal değildir.

Herhangi bir yardım için teşekkür ederiz!

/ Robert

3 Cevap

"$ HTTP_GET_VARS", "$ HTTP_POST_VARS", vb. , vb $ _GET, $ _POST, eski bir notasyonu kullanarak olmalıdır edilir

Hiçbir öğe adları varsa, ben içerik kalanı $ _POST görünecektir konusunda emin değilim, oysa şimdi, dosya içeriğini, $ _FILES küresel dizisine olmalıdır. always_populate_raw_post_data ayar php.ini de doğruysa neyse, veri $ HTTP_RAW_POST_DATA olmalıdır. Okurken aynı zamanda, bütün istek göstermek gerekir php://input.

Dikkat etmelisiniz:

"Php :/ / input ham POST veri okumak için izin verir. Bu $ HTTP_RAW_POST_DATA için daha az bellek yoğun bir alternatif olduğunu ve herhangi bir özel php.ini yönergesine ihtiyaç duymaz. php :/ / input enctype = "multipart / form-data" ile mevcut değildir

Php manuel ... php :/ / input mevcut değil gibi görünüyor bu yüzden

Henüz yorum yapamam ama bu pilsetnieks cevabı tamamlamak için intened edilir

Uploadeds dosyaları $ _file global değişken erişilebilir olacak, diğer parametreler $ _GET global değişken erişilebilir çukur olacaktır.