• 28-12-2019, 20:18:08
    #1
    Postman'dan post yapıyorum ama nedense bir hata da yok ama boş alan bırakmayınıza düşüyor çözemedim bir türlü yardımcı olabilecek var mı?

    if($_SERVER['REQUEST_METHOD'] == "POST") {
    
    // verilerimizi post yöntemi ile alalım.
        $kadi = addslashes($_POST["kadi"]);
        $ad = addslashes($_POST["ad"]);
        $soyad = addslashes($_POST["soyad"]);
        $password = addslashes($_POST["password"]);
        $mail = addslashes($_POST["mail"]);
        $telefon = addslashes($_POST["telefon"]);
    
    // Kontrollerimizi yapalım.
    // gelen kullanıcı adı veya e-mail veri tabanında kayıtlı mı kontrol edelim.
        $uyeler = $db->query("SELECT * from kullanici WHERE kadi='$kadi' OR mail='$mail'");
    
        if(empty($kadi) || empty($ad) || empty($soyad) || empty($password) || empty($mail) || empty($telefon)) {
            $_code = 400;
            $jsonArray["hata"] = TRUE; // bir hata olduğu bildirilsin.
    $jsonArray["hataMesaj"] = "Boş Alan Bırakmayınız."; // Hatanın neden kaynaklı olduğu belirtilsin.
    }
    else if(!filter_var($mail,FILTER_VALIDATE_EMAIL)) {
        $_code = 400;
    $jsonArray["hata"] = TRUE; // bir hata olduğu bildirilsin.
    $jsonArray["hataMesaj"] = "Geçersiz E-mail Adresi"; // Hatanın neden kaynaklı olduğu belirtilsin.
    }else if($kadi != kadi($kadi)){ // kadi fonksiyonunu db.php dosyası içerisinden bakabilirsiniz.
        $_code = 400;
    $jsonArray["hata"] = TRUE; // bir hata olduğu bildirilsin.
    $jsonArray["hataMesaj"] = "Geçersiz Kullanıcı Adı"; // Hatanın neden kaynaklı olduğu belirtilsin.
    }else if($uyeler->rowCount() !=0) {
        $_code = 400;
    $jsonArray["hata"] = TRUE; // bir hata olduğu bildirilsin.
    $jsonArray["hataMesaj"] = "Kullanıcı Adı Veya E-mail Alınmış.";
    }else {
        $ex = $db->prepare("INSERT INTO kullanici set
            kadi= :kadi,
            ad= :ad,
            soyad= :soyad,
            password= :password,
            mail= :mail,
            telefon= :telefon
            ");
        $ekle = $ex->execute(array(
            "kadi" => $kadi,
            "ad" => $ad,
            "soyad" => $soyad,
            "password" => $password,
            "mail" => $mail,
            "telefon" => $telefon
        ));
        if($ekle) {
            $_code = 201;
            $jsonArray["mesaj"] = "Ekleme Başarılı.";
        }else {
            $_code = 400;
            $jsonArray["hata"] = TRUE; // bir hata olduğu bildirilsin.
            $jsonArray["hataMesaj"] = "Sistem Hatası.";
        }
    }
    }
    post man de şimdi de 500 e düşüyor
  • 28-12-2019, 20:23:05
    #2
    postlanan veriler bu alana eksiksiz geldiğini test ettinizmi? form elemanlarında harf hatası vs durumu olmasın
  • 28-12-2019, 20:23:31
    #3
    $uyeler sorgusunda önce tüm verileri echo ile yazdırın. Hangisinde sorun olduğu ortaya çıkar.
  • 28-12-2019, 20:45:40
    #4
    emirkrgz adlı üyeden alıntı: mesajı görüntüle
    Postman'dan post yapıyorum ama nedense bir hata da yok ama boş alan bırakmayınıza düşüyor çözemedim bir türlü yardımcı olabilecek var mı?

    if($_SERVER['REQUEST_METHOD'] == "POST") {
    
    // verilerimizi post yöntemi ile alalım.
    $kadi = addslashes($_POST["kadi"]);
    $ad = addslashes($_POST["ad"]);
    $soyad = addslashes($_POST["soyad"]);
    $password = addslashes($_POST["password"]);
    $mail = addslashes($_POST["mail"]);
    $telefon = addslashes($_POST["telefon"]);
    
    // Kontrollerimizi yapalım.
    // gelen kullanıcı adı veya e-mail veri tabanında kayıtlı mı kontrol edelim.
    $uyeler = $db->query("SELECT * from kullanici WHERE kadi='$kadi' OR mail='$mail'");
    
    if(empty($kadi) || empty($ad) || empty($soyad) || empty($password) || empty($mail) || empty($telefon)) {
    $_code = 400;
    $jsonArray["hata"] = TRUE; // bir hata olduğu bildirilsin.
    $jsonArray["hataMesaj"] = "Boş Alan Bırakmayınız."; // Hatanın neden kaynaklı olduğu belirtilsin.
    }
    else if(!filter_var($mail,FILTER_VALIDATE_EMAIL)) {
    $_code = 400;
    $jsonArray["hata"] = TRUE; // bir hata olduğu bildirilsin.
    $jsonArray["hataMesaj"] = "Geçersiz E-mail Adresi"; // Hatanın neden kaynaklı olduğu belirtilsin.
    }else if($kadi != kadi($kadi)){ // kadi fonksiyonunu db.php dosyası içerisinden bakabilirsiniz.
    $_code = 400;
    $jsonArray["hata"] = TRUE; // bir hata olduğu bildirilsin.
    $jsonArray["hataMesaj"] = "Geçersiz Kullanıcı Adı"; // Hatanın neden kaynaklı olduğu belirtilsin.
    }else if($uyeler->rowCount() !=0) {
    $_code = 400;
    $jsonArray["hata"] = TRUE; // bir hata olduğu bildirilsin.
    $jsonArray["hataMesaj"] = "Kullanıcı Adı Veya E-mail Alınmış.";
    }else {
    $ex = $db->prepare("INSERT INTO kullanici set
    kadi= :kadi,
    ad= :ad,
    soyad= :soyad,
    password= :password,
    mail= :mail,
    telefon= :telefon
    ");
    $ekle = $ex->execute(array(
    "kadi" => $kadi,
    "ad" => $ad,
    "soyad" => $soyad,
    "password" => $password,
    "mail" => $mail,
    "telefon" => $telefon
    ));
    if($ekle) {
    $_code = 201;
    $jsonArray["mesaj"] = "Ekleme Başarılı.";
    }else {
    $_code = 400;
    $jsonArray["hata"] = TRUE; // bir hata olduğu bildirilsin.
    $jsonArray["hataMesaj"] = "Sistem Hatası.";
    }
    }
    }
    post man de şimdi de 500 e düşüyor
    <?php
    if ($_SERVER['REQUEST_METHOD'] == "POST") {
    try {
     $kadi = addslashes($_POST["kadi"]);
     $ad = addslashes($_POST["ad"]);
     $soyad = addslashes($_POST["soyad"]);
     $password = addslashes($_POST["password"]);
     $mail = addslashes($_POST["mail"]);
     $telefon = addslashes($_POST["telefon"]);
     $uyeler = $db->query("SELECT * from kullanici WHERE kadi='$kadi' OR mail='$mail'");
    if (empty($kadi) || empty($ad) || empty($soyad) || empty($password) || empty($mail) || empty($telefon)) {
     $_code = 400;
     $jsonArray["hata"] = true;
     $jsonArray["hataMesaj"] = "Boş Alan Bırakmayınız.";
    } else if (!filter_var($mail, FILTER_VALIDATE_EMAIL)) {
     $_code = 400;
     $jsonArray["hata"] = true;
     $jsonArray["hataMesaj"] = "Geçersiz E-mail Adresi";
    } else if ($kadi != kadi($kadi)) {
     $_code = 400;
     $jsonArray["hata"] = true;
     $jsonArray["hataMesaj"] = "Geçersiz Kullanıcı Adı";
    } else if ($uyeler->rowCount() != 0) {
     $_code = 400;
     $jsonArray["hata"] = true;
     $jsonArray["hataMesaj"] = "Kullanıcı Adı Veya E-mail Alınmış.";
    } else {
     $ex = $db->prepare("INSERT INTO kullanici set kadi= :kadi, ad= :ad, soyad= :soyad, password= :password, mail= :mail, telefon= :telefon ");
     $ekle = $ex->execute(array("kadi" => $kadi, "ad" => $ad, "soyad" => $soyad, "password" => $password, "mail" => $mail, "telefon" => $telefon));
    if ($ekle) {
     $_code = 201;
     $jsonArray["mesaj"] = "Ekleme Başarılı.";
    } else {
    }
    }
    } catch (Exception $e) {
        $_code = 500;
        $jsonArray["hata"] = true;
        $jsonArray["hataMesaj"] = $e->getMessage();
      }
    }
    Try catch error handling fonksiyonlarından yaralanman gerekir. Konu yukarıda ki kod ile değiştirirsen hatanı yakalayabilirsin. Yakaladığın hata mesajını paylaşırsan yardımcı olabiliriz.
  • 29-12-2019, 03:11:32
    #5
    Kimlik doğrulama veya yönetimden onay bekliyor.
    üye sorgusunu neden if blogları öncesinde yapıyorsun? önce boş olup olmadıklarını kontrol ettin tamam en son else geldikten sonra yeniden if yap ve üye sorgusunu yap yoksa else ile eklet bu kullanımın hatalı başta
    yani demek istediğim boş gönderide sorgu hatası oluşuyor bu durumda
  • 29-12-2019, 13:04:45
    #6
    var_dump($_POST); ile ne geliyor ne gidiyor bir bak istersen.
  • 29-12-2019, 15:26:35
    #7
    @CoLLeR; @Ekimnet; cevaplar için teşekkürler biraz daha sadeleştiricem ama şunu da sormak istiyorum bana gelen resim postunu alıcam ama mobilden gelen veriyi normalde insanlar nasıl alıyor sunucuya resim verilerini
  • 29-12-2019, 15:30:07
    #8
    @emirkrgz; php file upload araştır hocam.

    $_FILES olarak alacaksın.
  • 29-12-2019, 15:34:14
    #9
    dosya yolunu alıyorum okey onla ama onu bana upload ederken nasıl edicek peki