2017-03-27 9 views
-1

このHTML POSTフォームをPHP POST要求に変換する方法については、このHTMLフォームPOSTをPHP POSTリクエストに変換するにはどうすればよいですか?

<html> 
 
<body> 
 

 
<form action="/explore/marketplace" enctype="multipart/form-data" method="post">  <label> 
 
      Trade Zone: 
 
      <select class="form-control" id="TradeZone" name="TradeZone"><option value="">Select a tradezone</option> 
 
<option value="4">Nastya's Holdout</option> 
 
<option value="10">Dogg's Stockade</option> 
 
<option value="11">Precinct 13</option> 
 
<option value="12">Fort Pastor</option> 
 
<option value="13">Secronom Bunker</option> 
 
<option value="1">Northwest</option> 
 
<option value="2">North</option> 
 
<option value="3">Northeast</option> 
 
<option value="5">Central</option> 
 
<option value="6">East</option> 
 
<option value="7">Southwest</option> 
 
<option value="8">South</option> 
 
<option value="9">Southeast</option> 
 
</select> 
 
     </label> 
 
     <label> 
 
      Search Type: 
 
      <select class="form-control" id="Category" name="Category"><option value="">Search Type</option> 
 
<option value="0">Everything</option> 
 
<option value="1">Armour</option> 
 
<option value="2">Weapon - Melee</option> 
 
<option value="3">Weapon - Pistol</option> 
 
<option value="4">Weapon - Rifles</option> 
 
<option value="5">Weapon - Shotguns</option> 
 
<option value="6">Weapon - Light Machineguns</option> 
 
<option value="7">Weapon - Heavy Machineguns</option> 
 
<option value="8">Weapon - Grenade Launchers</option> 
 
<option value="9">Ammo - Handgun</option> 
 
<option value="10">Ammo - Rifle</option> 
 
<option value="11">Ammo - Shotgun</option> 
 
<option value="12">Ammo - Grenades</option> 
 
<option value="13">Item - Food</option> 
 
<option value="14">Item - Medical</option> 
 
<option value="15">Clothing - Basic</option> 
 
<option value="16">Clothing - Coats</option> 
 
<option value="17">Closthing - Headwear</option> 
 
<option value="18">Item - Barricading</option> 
 
<option value="19">Item - Misc</option> 
 
<option value="20">Services - Cooking</option> 
 
<option value="21">Services - Medical</option> 
 
<option value="22">Services - Repair</option> 
 
<option value="23">Credits</option> 
 
<option value="24">Implants</option> 
 
</select> 
 
     </label> 
 
     <label> 
 
      Search Keyword: 
 
      <input class="form-control" id="Search" name="Search" placeholder="search keywords" type="text" value=""> 
 
     </label> 
 
      <input type="submit" id="search-submit-button" class="button"> 
 
<input name="ufprt" type="hidden" value="4F5138FF1107EF6C64277EF7F9EEC0D07176D87DC93A8FCB3B878D92DC1F3EA1C6BE8BA285920F04DB8DF066111CA1603868EBEB4A7156CA7D358D46381602D323E5B914A0CC0E5CDCE56A09B448367CE5FD9EA91384F4DCE34EB5FC287953243065734F3D726505E320B4FF3D950DCBA598DE9DABF9083AE8C8093C94261BBAC668306158B68205D529652F68B6DC77"></form> 
 

 
</body> 
 
</html>

私はこれを試してみましたが、動作していないよう:

<?php 
 

 
$url = 'http://www.hollowprestige.com/explore/marketplace'; 
 
$data = array('TradeZone' => 12, 'Category' => 0, 'Search' => '5mm', 'ufprt' => '4F5138FF1107EF6C64277EF7F9EEC0D07176D87DC93A8FCB3B878D92DC1F3EA1C6BE8BA285920F04DB8DF066111CA1603868EBEB4A7156CA7D358D46381602D323E5B914A0CC0E5CDCE56A09B448367CE5FD9EA91384F4DCE34EB5FC287953243065734F3D726505E320B4FF3D950DCBA598DE9DABF9083AE8C8093C94261BBAC668306158B68205D529652F68B6DC77'); 
 

 
// use key 'http' even if you send the request to https://... 
 
$options = array(
 
    'http' => array(
 
     'header' => "Content-type: application/x-www-form-urlencoded\r\n", 
 
     'method' => 'POST', 
 
     'content' => http_build_query($data) 
 
    ) 
 
); 
 
$context = stream_context_create($options); 
 
$result = file_get_contents($url, false, $context); 
 
if ($result === FALSE) { /* Handle error */ } 
 

 
var_dump($result); 
 

 
?>

感謝:)

+2

あなたは何がうまくいかないと説明できますか?エラーはありますか? – apokryfos

+0

あなたの問題は何ですか? \ n "、"開始に一致しません。 – Jayanta

+1

'enctype =" multipart/form-data "と' 'header '=>"コンテンツタイプ:application/x-www-form-urlencoded \あなたが欲しいものを理解していない? – Quentin

答えて

-3

また、PHPページでは、送信されたものをチェックする必要があります:extract($ _ POST); print_r($ _ POST);

+0

それは意味をなさない$ _POST – Jayanta

0

Guzzleライブラリを使用することをお勧めします。そしてまた、あなたが使用している場合:多くのフレームワークは、今日は右のボックス(Laravel EX)のうち、がつがつ食うライブラリを与えるので、私はこのことを助言しています

$http = new \GuzzleHttp\Client; 
$response = $http->request('POST', 'your url here', [ 
      'headers' => [ 
       'content-type' => 'application/x-www-form-urlencoded' 
      ], 
      'form_params'=>$data 
     ]); 

:あなたはそれがルートにインストールしたら、あなたのようなものを使用することができますsymphonyは、生のPHPを持つよりも、最高の解決策です。

+0

私は今それを試してみます。 – Bacon

+0

どうすればいいのか教えてください – Learner

+0

エラーを確認するためにログを確認してください。どのフレームワークを使用しているのか分かりません。そのlaravelが次にチェックしたら:root_folder/storage/logs/laravel.log..find outs whats the error :) – Learner

関連する問題