v2.5.2
Giriş yap

PDO insert işlemi

egemennk
768 defa görüntülendi ve 3 kişi tarafından değerlendirildi

Merhaba php ile basit bir insert sorgusu yazdım ama çalışmıyor (aynı sorgu ile başka insert işlemleri yapabiliyorum). Yardımlarınız için şimdiden teşekkürler

if ($password == $password_again) {
    $register_query = $db->prepare("INSERT INTO users SET firstname = :firstname, surname = :surname, username = :username, email = :email, password = :password, gender = :gender, region = :region, date_of_birth = :date_of_birth");
    $insert = $register_query->execute(array(
        "firstname" => $firstname,
        "surname" => $surname,
        "username" => $username,
        "email" => $email,
        "password" => $password,
        "gender" => $gender,
        "region" => $region,
        "date_of_birth" => $date_of_birth
    ));
    if ($insert) {
        header("location:../index.php");
    } else {
        header("location:?error=registration");
}
Cevap yaz
Cevaplar (6)
yavuzselimblog
1460 gün önce

Ve bir cevap daha vereyim

execute kısmındaki bölümlerin başına iki nokta üst üste koyarak yazmayı unutmuşsun yani

":region" => $region,
":date_of_birth" => $date_of_birth

başlarına bu şekilde iki nokta üst üste eklemelisin.

yavuzselimblog
1460 gün önce

Selamlar else kısmında bir parantez eksik yazmışsın sanırım ek olarak hata almak
istiyorsan şunu yapmalısın.

if ($insert->rowCount()) {

header("location:../index.php");

} else {

print($insert->errorInfo());
header("location:?error=registration");

}

Tekrar yanıtlamak istedim.

yavuzselimblog
1460 gün önce

Selamlar else kısmında bir parantez eksik yazmışsın sanırım ek olarak hata almak
istiyorsan şunu yapmalın.

if ($insert->rowCount()) {

    header("location:../index.php");
} else {
    print($insert->errorInfo());
    header("location:?error=registration");
}
pcmemo
1460 gün önce

Yukarıdaki hata mesajını yazarsan mutlaka bir hata alırsın.

header("location:?error=registration"); mı çalışıyor?

egemennk
1460 gün önce

hiç bir hata almıyorum kafayı yicem. Veritanıyla ilgili olabilir mi?

pcmemo
1460 gün önce

ne hata alıyorsun?

Hata almıyorsan alttaki kodu sayafın başına ekle, hatayı gör..

error_reporting(E_ALL);
ini_set("display_errors", 1);