Как select заменить на input если в базе одна запись?
В форму подставляю select для выбора, но не всегда в базе несколько записей. Получается, если одна запись, то все равно появляется select.
Мой код:
//MySqli Select Query
$results = $mysqli->query("SELECT CASE WHEN pin_code.code IS NULL THEN 'trush' WHEN destroy_date < UNIX_TIMESTAMP(NOW()) THEN '0' ELSE '1' END AS status FROM (SELECT '$pin_code' code) src LEFT JOIN pin_code USING (code)");
if($row = $results->fetch_assoc()) {
if($row["status"] == '0'){
//MySqli Select Query
$results = $mysqli->query("SELECT id, item_name, amount, currency_code, custom, payment_service, business, stripe_pkey, status FROM subscription WHERE status = '1'");
$services = [];
while($row = $results->fetch_assoc()) {
if ($row["payment_service"] == 'PayPal'){
$paypal_item_number = $row["id"];
$paypal_amount = $row["amount"];
$paypal_curr_code = $row["currency_code"];
$services[$row["id"]] = $row;
$money[] = <<<HTML
<option value="$paypal_item_number">$paypal_curr_code $paypal_amount</option>
HTML;
}
}
// Include paypal form
include __DIR__ . '/forms/paypal.php';
}
}
Форма:
<form action="<?php echo PAYPAL_URL; ?>" method="post">
<input name="cmd" value="_xclick" type="hidden">
<input name="no_shipping" value="1" type="hidden">
<input name="item_number" value="1" type="hidden">
<select id="PayPalAmount" required class="form-control">
<option value="">Choose Payment Service</option>
<?php
foreach( $money as $key => $value ) {
print $value;
}
?>
</select>
<div class="col-sm" id="select"></div>
<input name="return" value="https://<?php echo $_SERVER['HTTP_HOST']; ?>" type="hidden">
<input name="cancel_return" value="https://<?php echo $_SERVER['HTTP_HOST']; ?>" type="hidden">
<!-- Where to send the paypal IPN to. -->
<input name="notify_url" value="https://<?php echo $_SERVER['HTTP_HOST']; ?>" type="hidden">
<button type="submit" name="submit" id="PayPalButton">
Buy Now With PayPal
</button>
</form>
Пробовал использовать is_array но ничего не получилось.
Как избавиться от select если запись одна?
Спасибо.
Ответы (1 шт):
Автор решения: Алексей Шиманский
→ Ссылка
<input name="cmd" value="_xclick" type="hidden">
<input name="no_shipping" value="1" type="hidden">
<input name="item_number" value="1" type="hidden">
<?php if (count($money) > 1): ?>
<select id="PayPalAmount" required class="form-control">
<option value="">Choose Payment Service</option>
<?php foreach( $money as $key => $value ): ?>
print $value;
<option value="<?= $key; ?>"><?= $value; ?></option>
<?php endforeach; ?>
</select>
<?php else: ?>
<input type="text" name="id" value="<?= $money; ?>" />
<?php endif; ?>
Не знаю, вместо $money в конце возможно должно быть $money['XXXX'] ?