Как сохранить результат процедуры MYSQL, чтобы я мог использовать его в другой процедуре с использованием переполнения стека

У меня самые трудные времена в моей жизни, пытаясь понять, как заставить этот код работать. По сути, у меня есть html-скрипт для получения значений от пользователя, и я беру эти значения и сохраняю их в базе данных. У меня есть процедуры для сохранения, и эта работа … У меня проблема с извлечением значений из процедуры для последующего использования:

$addressID = "CALL get_addressID('".$_POST['street_address']."', '".$_POST['city']."', '".$_POST['state']."', '".$_POST['zip']."', '".$_POST['country']."')";
$creditID = "CALL get_creditID('".$_POST["name_on_card"]."', '".$_POST["card_num"]."','".$_POST["exp_date"]."','".$_POST["sec_code"]."', '".$_POST["billing_st_address"]."', '".$_POST["billing_city"]."', '".$_POST["billing_state"]."','".$_POST["billing_zip"]."','".$_POST["billing_country"]."')";
$obj = mysqli_query($conn, $creditID);
$SSS = mysqli_query($conn, $addressID);
(line 100) $sql = "CALL add_customer('".$_POST["first_name"]."', '".$_POST["last_name"]."', '".$obj."', '".$SSS."', '".$_POST["email"]."')";
if ($conn->query($sql) === TRUE) {
echo "User data info stored successfully\n";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}

Я хотел бы иметь возможность использовать $ obj и $ SSS для этой части, чтобы я мог создать пользователя с ними. Я получаю следующую ошибку: «Исправляемая фатальная ошибка: объект класса mysqli_result не может быть преобразован в строку в C: \ wamp64 \ www \ project \ CustomerAttempt.php в строке 100»

Процедуры, которые я выполняю, следующие:

SELECT address_id FROM address where street_address = st_address and City =
Fcity AND state = Fstate and postal_code = fzip and country = fcountry

а также:

SELECT card_ID from credit_card WHERE Cardholders_Name = name_on_card AND Card_number = card_num AND Expiration_date = exp_date AND Security_code = sec_code AND Billing_Street_Address = billing_st_address AND Billing_City = billing_city_f AND Billing_State = billing_state_f AND Billing_Postal_Code = billing_zip AND Billing_Country = billing_country_f

Я понятия не имею, что делать, и я новичок в php и mysql. Любая помощь будет оценена.

Я подключен к моей базе данных с mysqli_connect, используя $ conn в качестве переменной для этого.

0

Решение

Ну, ваше понимание mysqli_query совсем немного. Это то, что в документации php указано, что mysqli_query вернется.

«Возвращает FALSE при ошибке. Для успешных запросов SELECT, SHOW, DESCRIBE или EXPLAIN mysqli_query () вернет объект mysqli_result. Для других успешных запросов mysqli_query () вернет TRUE».

Другими словами, ваш
$obj = mysqli_query($conn, $creditID); line вернет объект результата mysql, а не строку, которую вы можете добавить. Чтобы получить строку для этого, вы можете использовать
$object = $obj->fetch_object();
$string = $object->columnName;

columnName должно быть именем столбца, в котором хранится значение, которое вы хотите извлечь.

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector