У меня есть php файл A.php
содержит форму с именем formA
.
formA
получает результат, а затем публикует и сохраняет в MYSQL методом php & SQL & traditional HTML form posting
.
В одном из полей в formA
я хочу опубликовать это значение $amount
в другом php-файле B.php
. Это потому, что в B.php
есть скрытая форма. Я пытался опубликовать это с помощью php-curl
метод для дальнейших действий.
В B.php
я пытался проверить, могу ли я успешно получить $amount
.
Оба print_r($_POST); print_r($_GET);
показывают Array ( ) Array ( )
, что означает, что не удалось получить amount
Вот мой код:
A.php:
if ($_SERVER["REQUEST_METHOD"] == "POST") {
// Validate amount
$input_amount = trim($_POST["amount"]);
if (empty($input_amount)) {
$amount_err = "Please enter the amount.";
} elseif (!ctype_digit($input_amount)) {
$amount_err = 'Please enter a positive integer value.';
} else {
$amount = $input_amount;
}
//storing to db
if (empty($CName_err) && empty($Address_err) && empty($amount_err) && empty($Phone_err)) {
// Prepare an insert statement
$pdo = Database::connect();
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = "INSERT INTO donation (CName, Address, Phone, Amount ,Ticket, Purpose) VALUES (?, ?, ?, ? ,?, ?)";
$q = $pdo->prepare($sql);
$q->execute(array($CName, $Address, $Phone, $amount ,$Ticket ,$Purpose));
Database::disconnect();
//curl part start: post the `amount`
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,"B.php");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS,
"amount=amount,input_amount=input_amount");
// receive server response ...
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$server_output = curl_exec ($ch);
curl_close ($ch);
header("Location: B.php");
}
}
?>
//Form A -the field that get the `amount` value
<div class="form-group <?php echo (!empty($amount_err)) ? 'has-error' : ''; ?>">
<label>* Donation amount</label>
<input list="amount" name="amount" multiple class="form-control">
<datalist id="amount" >
<option value="100">
<option value="300">
<option value="500">
<option value="1000">
</datalist>
<span class="help-block"><?php echo $amount_err; ?></span>
</div>
....other fields. ....
B.php:
<?php
print_r($_POST);
print_r($_GET);
$amount = null;
if ( !empty($_GET['amount'])) {
$amount = $_REQUEST['amount'];
}
...later action....
?>
Как решить эту проблему?