Задать вопрос
@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
  • Вопрос задан
  • 103 просмотра
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Бросайте вы эти видеоуроки, они вас плохому научат.
1. Не надо напрямую подставлять переменные в запрос, для этого есть плейсхолдеры. Читать про SQL Injection.
2. Не надо руками ловить ошибки mysqli. Надо устанавливать правильные опции при подключении. Читать https://habr.com/ru/post/662523/
3. Если уж вы ловите ошибки самостоятельно, то выводите полный текст ошибки, а не просто паническое "Ой, что-то случилось!".
4. Не надо хранить в своей базе данные кредитных карт клиентов, да ещё и вместе с CVV. Учитывая пункт 1, это всё равно, что писать их на заборе. Читать про PCI DSS.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽