Я получаю эту ошибку при попытке использовать функцию на моем SOAP-сервере. Я понятия не имею, что я делаю неправильно, и я просмотрел большинство постов, касающихся этой ошибки, но безуспешно. Я чрезвычайно новичок в PHP и SOAP, поэтому извините за то, как это может выглядеть
Это моя функция PHP и настройка сервера SOAP:
function getProductsByPrice($category, $price) {
$conn = mysqli_connect('localhost', 'root', '', 'my_guitar_shop1');
if (!$conn) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT * FROM products WHERE categoryID = '$category' AND
listPrice < '$price'";
$result = mysqli_query($conn, $sql);
$rows = array();
if (mysqli_num_rows($result) > 0) {
while ($r = mysqli_fetch_assoc($result)) {
array_push($rows, $r);
}
return json_encode($rows);
} else {
echo "No data";
}
}
ini_set("soap.wsdl_cache_enabled", "0");
$server = new SoapServer("http://localhost/SOAPserverTest/LOI.wsdl");
$server->addFunction(array("getProductsByPrice", "showProductDetails",
"showTable"));
$server->handle();
?>
И вот как яЯ использую метод
<?php
$category = 3;
$price = 400;
$client = new SoapClient("http://localhost/SOAPserverTest/LOI.wsdl");
$response1 = $client->getProductsByPrice($category, $price);
$result1 = json_encode($response1, TRUE);
print $result1;
?>
, когда я захожу на страницу клиента, я получаю эту ошибку:
Неустранимая ошибка: Uncaught Исключение SoapFault: [SOAP-ENV: Сервер] Слишком малоаргументы для функции getProductsByPrice (), 1 передано и ожидается ровно 2 в C: \ xampp \ htdocs \ finalSOAPClient \ model \ GetByPrice.php: 7 Трассировка стека: # 0 C: \ xampp \ htdocs \ finalSOAPClient \ model \ GetByPrice.php (7): SoapClient -> __ call ('getProductsByPr ...', Array) # 1 {main}, брошенный в C: \ xampp \ htdocs \ finalSOAPClient \ model \ GetByPrice.php в строке 7