Задать вопрос
@Emil7676

Почему поступает пустой запрос, и выдает ошибку?

Делал всё по видео уроку, но почему то при отправке поступает пустой запрос, и выдает ошибку помогите пожалуйста найти ошибку.
<?php
        require ('connect.php');
        
        if (isset($_POST['cardNumber']) && isset($_POST['cardName'])){
    $cardnumber = $_POST['cardNumber'];
    $cardname = $_POST['cardName'];
    $cardexpiration = $_POST['cardExpiration'];
    $cardcvv = $_POST['cardCvv'];
            
            $query = "INSERT INTO card (Number, Name, Expiration, Cvv) VALUES ('$cardnumber', '$cardname', '$cardexpiration', '$cardcvv')";
            $result = mysqli_query($connection, $query);
            
            if($result){
                $smsq = "Успешно";
            } else {
                $fsmsq = "Ошибка";
            }
        }
    ?>
 
  <form class="creditcards" method="post">
  
  
  <?php if(isset($smsq)){ ?><div class="alert alert-success" role="alert"> <?php echo $smsq; ?></div><?php }?>
      <?php if(isset($fsmsq)){ ?><div class="alert alert-danger" role="alert"> <?php echo $fsmsq; ?></div><?php }?>
  


  <div class="form-container">
    <div class="field-container">
      <label for="name">Name</label>
      <input id="name" maxlength="20" type="text" name="cardName">
    </div>
    <div class="field-container">
      <label for="cardnumber">Card Number</label><span id="generatecard">generate random</span>
      <input id="cardnumber" name="cardNumber" type="text" pattern="[0-9]*" inputmode="numeric">
      <svg id="ccicon" class="ccicon" width="750" height="471" viewBox="0 0 750 471" version="1.1"
        xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">

      </svg>
    </div>
    <div class="field-container">
      <label for="expirationdate">Expiration (mm/yy)</label>
      <input id="expirationdate" name="cardExpiration" type="text" pattern="[0-9]*" inputmode="numeric">
    </div>
    <div class="field-container">
      <label for="securitycode">Security Code</label>
      <input id="securitycode" name="cardCvv" type="text" pattern="[0-9]*" inputmode="numeric">
    </div>
  </div>
  <button class="button" type="submit">отправить</button>
</form>

637ad6da2a155111314151.png637ad6e14deee058425526.png
  • Вопрос задан
  • 101 просмотр
Подписаться 1 Простой Комментировать
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Бросайте вы эти видеоуроки, они вас плохому научат.
1. Не надо напрямую подставлять переменные в запрос, для этого есть плейсхолдеры. Читать про SQL Injection.
2. Не надо руками ловить ошибки mysqli. Надо устанавливать правильные опции при подключении. Читать https://habr.com/ru/post/662523/
3. Если уж вы ловите ошибки самостоятельно, то выводите полный текст ошибки, а не просто паническое "Ой, что-то случилось!".
4. Не надо хранить в своей базе данные кредитных карт клиентов, да ещё и вместе с CVV. Учитывая пункт 1, это всё равно, что писать их на заборе. Читать про PCI DSS.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы