• 02-01-2023, 15:20:16
    #1
    Fatal error: Uncaught PDOException: SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens in C:\xampp\htdocs\ucp2\basvuru.php:282 Stack trace: #0 C:\xampp\htdocs\ucp2\basvuru.php(282): PDOStatement->execute(Array) #1 {main} thrown in C:\xampp\htdocs\ucp2\basvuru.php on line 282
    Merhaba, böyle bir hata alıyorum fakat çözemedim. Yardımcı olabilir misiniz?
    Kullandığım kod:
    if(isset($_POST["submit"])){
      $account = $_POST['account']; // Hesap İsmi
      $name = $_POST['name']; // Karakter İsmi
      $email = $_POST['email'];
      $origin = $_POST['origin']; // Köken
      $gender = $_POST['gender']; // Cinsiyet
      $birthdate = $_POST['birthdate']; // Doğum Tarihi
    
     
      $sql  = "INSERT INTO basvurular VALUES('account=?', 'name=?', 'email=?', 'origin=?', 'gender=?', 'birthdate=?', '1')";
      $stmt = $db->prepare($sql);
      $stmt->execute(array(
          $account,
          $name,
          $email,
          $origin,
          $gender,
          $birthdate
      ));
      echo
      "
      <script> alert('Başvurunuz gönderildi, lütfen kontrol edenlerin bot olmadığını unutmayın ve sabırla bekleyin.'); </script>
      ";
    }
  • Kabul Edilen Cevap
    • INSERT INTO basvurular (account, name, email, origin, gender, birthdate)  VALUES(?,?,?,?,?,?)
  • 02-01-2023, 15:29:46
    #2
    sorgun yanlış
    $sql = "INSERT INTO basvurular (account, name, email, origin, gender, birthdate, status) VALUES (?, ?, ?, ?, ?, ?, ?)";
    $stmt = $db->prepare($sql); 
    $stmt->execute(array($account, $name, $email,  $origin,  $gender,  $birthdate,  1));
  • 02-01-2023, 15:35:32
    #3
    Bu cevap, konu sahibi tarafından kabul edilebilir bir cevap olarak işaretlendi.
    INSERT INTO basvurular (account, name, email, origin, gender, birthdate)  VALUES(?,?,?,?,?,?)
  • 02-01-2023, 15:49:43
    #4
    @mahelbir; Teşekkürler hocam sıkıntısız çalıştı.

    @chapters; Sizde sağolun hocam ilgilendiğiniz için.