Rumah >pembangunan bahagian belakang >tutorial php >Bagaimanakah saya boleh menghantar data melalui POST ke tapak web luaran menggunakan PHP?
Mengubah hala dan Menghantar Data melalui POST dalam PHP
Dalam PHP, anda mungkin menghadapi situasi di mana anda perlu mengubah hala pengguna ke luaran laman web dan hantar data ke tapak web tersebut melalui POST. Tidak seperti bentuk HTML, PHP tidak menyokong tingkah laku ini secara asli.
GET lwn. POST
Dalam pembangunan web, terdapat dua kaedah utama untuk menghantar data daripada sumber ke destinasi:
PHP menyediakan kaedah mudah untuk menghantar data melalui GET menggunakan fungsi pengepala. Contohnya:
<code class="php">header('Location: http://www.provider.com/process.jsp?id=12345&name=John');</code>
POST dengan PHP
Walau bagaimanapun, PHP tidak boleh menghantar data terus melalui POST tanpa bergantung pada perpustakaan luaran atau manipulasi penyemak imbas. Satu pendekatan yang mungkin adalah menggunakan perpustakaan cURL untuk membuat permintaan POST. Walau bagaimanapun, ini memerlukan kod PHP untuk bertindak sebagai pelanggan, yang tidak selalunya diingini.
Penyelesaian alternatif melibatkan penjanaan borang HTML secara dinamik menggunakan PHP, mengisinya dengan data yang diperlukan dan menyerahkannya melalui JavaScript. Pendekatan ini membolehkan anda memanfaatkan POST tanpa mengendalikan permintaan secara langsung dalam PHP. Kod berikut menggambarkan konsep ini:
<code class="php">// Generate HTML form with hidden fields $html = '<form action="http://www.provider.com/process.jsp" method="post">'; $html .= '<input type="hidden" name="id" value="12345">'; $html .= '<input type="hidden" name="name" value="John">'; $html .= '<script>document.onload = function() { document.forms[0].submit(); }</script>';</code>
Kod ini mencipta borang HTML yang akan menyerahkan dirinya sendiri secara automatik ke URL yang ditentukan apabila halaman dimuatkan. Walaupun kaedah ini bergantung pada sokongan penyemak imbas, kaedah ini membolehkan penghantaran data POST daripada PHP.
Atas ialah kandungan terperinci Bagaimanakah saya boleh menghantar data melalui POST ke tapak web luaran menggunakan PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!