2017-06-09 16 views
0

こんにちは、私は自分のhtmlフォームからデータを取得できません。まず、htmlフォームからデータを正しく取得する方法を知る必要があります。第二に、なぜこれが機能していないのですか? "IBM Quote"をクリックすると、値 "IBM"を取得する必要があります。

<!DOCTYPE html> 
<html> 
<head> 
    <title>Stock Quote</title> 

</head> 
<body> 

<form action="soapTest.php" method="post"> 

    <button name="IBM" type="submit">IBM Quote</button> 

</form> 



</body> 
</html> 

PHPのコード

<?php 
$wsdl = "http://www.restfulwebservices.net/wcf/StockQuoteService.svc?wsdl"; 

$client = new SoapClient($wsdl); 
$stock = $_POST["button"]; 
print $stock; 
$parameters= array("request"=>$stock); 
$values = $client->GetStockQuote($parameters); 
$xml = $values->GetStockQuoteResult; 
$currentprice = $xml->Last; 
$volume=$xml->Volume; 
$percentageChange=$xml->PercentageChange; 


if($volume!=null) 
    print "<br />\n Volume: $volume"; 
else 
    print "Volume not set"; 

if($percentageChange!=null) 

    print "<br />\n PercentageChange: $percentageChange"; 
else 
    print "percentageChange not set"; 

?> 

出力:

Notice: Undefined index: button in /Applications/XAMPP/xamppfiles/htdocs/soapTest.php on line 6 

Fatal error: Uncaught SoapFault exception: [a:InternalServiceFault] Object reference not set to an instance of an object. in /Applications/XAMPP/xamppfiles/htdocs/soapTest.php:9 Stack trace: #0 /Applications/XAMPP/xamppfiles/htdocs/soapTest.php(9): SoapClient->__call('GetStockQuote', Array) #1 /Applications/XAMPP/xamppfiles/htdocs/soapTest.php(9): SoapClient->GetStockQuote(Array) #2 {main} thrown in /Applications/XAMPP/xamppfiles/htdocs/soapTest.php on line 9 
+0

入力名は「ボタン」ではなく「IBM」です。 –

+0

'$ stock = $ _POST ['IBM'];'あなたのために働くでしょう。 – Bhavin

答えて

1

"IBM"あなたのボタンの名前であるので、あなたはその名前でポスト値を呼び出す必要があります。

$stock = $_POST['IBM']; 

また、HTMLコードを変更し、ボタンに値IBMのボタンを付けることができます。

<button name="button" value="IBM" type="submit">IBM Quote</button> 
+0

2番目のものは動作していますが、最初のものは次のとおりです:注意:未定義のインデックス:/Applications/XAMPP/xamppfiles/htdocs/soapTest.phpの6行目 致命的なエラー:Uncaught SoapFault例外:[a:InternalServiceFault]オブジェクト参照が設定されていませんオブジェクトのインスタンスに渡します。 /Applications/XAMPP/xamppfiles/htdocs/soapTest.php:9スタックトレース:#0 /Applications/XAMPP/xamppfiles/htdocs/soapTest.php(9):SoapClient - > __ call( 'GetStockQuote'、Array)#1 /アプリケーション/ XAMPP/xamppfiles/htdocs/soapTest.php(9):SoapClient-> GetStockQuote(配列)#2 {main}スロー/Applications/XAMPP/xamppfiles/htdocs/soapTest.php –

関連する問題