lostyazilim
tr.link

[ÇÖZÜLDÜ] INSERT olmuyor! Kaç saattir uğraşıyorum.

21 Mesajlar 2.685 Okunma
lstbozum
tr.link

TazZ TazZ www.ahmetcetintas.com Kullanıcı
  • Üyelik 19.10.2012
  • Yaş/Cinsiyet 37 / E
  • Meslek Grafiker Yazılımcı
  • Konum Aydın
  • Ad Soyad A** Ç**
  • Mesajlar 795
  • Beğeniler 324 / 323
  • Ticaret 19, (%100)

ecarpar adlı üyeden alıntı

$pageId = $form['pageId'];
$pageView = $form['pageView'];
Boş geliyor şu an ,database tarafında ID yi autoIncremet olarak seçtinmi?
akılma gelenleri sıralıyorum bu arada Id yi içeri senin yollamana gerek yok
VALUES (NULL , "$pageTitle", "$pageUrlSeo", "$pageDate", "$pageContent", "$pageView")";
şeklinde değiştirilebilir,

ama hataları neden verdiğini bilemiyorum kodları include "../functions/connect.php"; nin içeriğini paylaşman münkünmü ? Kullanıcı adı şifre felan sil o kısımları ama



//PDO DATABASE CONNECT
try{
$db = new PDO("mysql:host=localhost;dbname=xxx;charset=utf8","root","");
} catch ( PDOException $e ){
print $e->getMessage();
}
burada sorun yok çok işlem yapıyorum normalde. Ama yine de göndereyim dedim.
 

 

wmaraci
reklam

ecarpar ecarpar WM Aracı Kullanıcı
  • Üyelik 18.04.2014
  • Yaş/Cinsiyet 43 / E
  • Meslek bilişim ve e-ticaret uzmanı
  • Konum İstanbul Anadolu
  • Ad Soyad E** C**
  • Mesajlar 317
  • Beğeniler 23 / 90
  • Ticaret 0, (%0)
Tamamdır PDO tercih etmişsin o sebeple önceki kodlarım çalışmayabilir yada hata verebilirler..
Denedim ekleme işlemini yaptı burası, birde sen dene bakalım ne olacak sonuç.

//Bu kısım doğru çalışıyormu ? o kodları istersen include etmeden buradan bir ekle o şekilde dene. connect.php gelmiyor olabilirmi ?
include "../functions/connect.php";
$form = $_POST;
$pageId = $form['pageId'];
// $pageId = $form['pageId']; nin Auto İncremet olarak oluşturulduğunu fazediyorum benzersiz bir sıra numarası oluşturulması açısından
$pageTitle = $form['pageTitle'];
$pageUrlSeo = $form['pageUrlSeo'];
$pageDate = $form['pageDate'];
$pageContent = $form['pageContent'];
$pageView = $form['pageView'];
//ben set ile ekledim .. kaldırıp deneyebilirsin SET zorunlu değildir normal İNSERT sorgusunda.
$query = $db->prepare("INSERT INTO pages SET
pageTitle= ?,
pageUrlSeo= ?,
pageDate= ?,
pageContent= ?,
pageView= ?
");
$insert = $query->execute(array(
"$pageTitle", "$pageUrlSeo", "$pageDate","$pageContent","$pageView"
));

if ( $insert ){
$last_id = $db->lastInsertId();
//bakalım bi eklerse Yönlendirme kodlarını bu kısma eklemen gerekli..
print "insert işlemi başarılı!";
}

 

 

TazZ TazZ www.ahmetcetintas.com Kullanıcı
  • Üyelik 19.10.2012
  • Yaş/Cinsiyet 37 / E
  • Meslek Grafiker Yazılımcı
  • Konum Aydın
  • Ad Soyad A** Ç**
  • Mesajlar 795
  • Beğeniler 324 / 323
  • Ticaret 19, (%100)

ecarpar adlı üyeden alıntı

Tamamdır PDO tercih etmişsin o sebeple önceki kodlarım çalışmayabilir yada hata verebilirler..
Denedim ekleme işlemini yaptı burası, birde sen dene bakalım ne olacak sonuç.

//Bu kısım doğru çalışıyormu ? o kodları istersen include etmeden buradan bir ekle o şekilde dene. connect.php gelmiyor olabilirmi ?
include "../functions/connect.php";
$form = $_POST;
$pageId = $form['pageId'];
// $pageId = $form['pageId']; nin Auto İncremet olarak oluşturulduğunu fazediyorum benzersiz bir sıra numarası oluşturulması açısından
$pageTitle = $form['pageTitle'];
$pageUrlSeo = $form['pageUrlSeo'];
$pageDate = $form['pageDate'];
$pageContent = $form['pageContent'];
$pageView = $form['pageView'];
//ben set ile ekledim .. kaldırıp deneyebilirsin SET zorunlu değildir normal İNSERT sorgusunda.
$query = $db->prepare("INSERT INTO pages SET
pageTitle= ?,
pageUrlSeo= ?,
pageDate= ?,
pageContent= ?,
pageView= ?
");
$insert = $query->execute(array(
"$pageTitle", "$pageUrlSeo", "$pageDate","$pageContent","$pageView"
));

if ( $insert ){
$last_id = $db->lastInsertId();
//bakalım bi eklerse Yönlendirme kodlarını bu kısma eklemen gerekli..
print "insert işlemi başarılı!";
}



yine çalışmadı. Normalde 10 dk tamamlanacak işlem için kaç saatim gitti ve hala bir sonuç alamadım. Aynı yapıyla şöyle update işlemi alıyorum başarılı
include "../functions/connect.php";
$form = $_POST;
$pageId = $form['pageId'];
$pageTitle = $form['pageTitle'];
$pageUrlSeo = $form['pageUrlSeo'];
$pageDate = $form['pageDate'];
$pageContent = $form['pageContent'];

$sql = "UPDATE pages SET pageId = :pageId, pageTitle = :pageTitle, pageUrlSeo = :pageUrlSeo, pageDate = :pageDate, pageContent = :pageContent WHERE pageId = :pageId";

$stmt = $db->prepare($sql);
$stmt->bindParam(':pageId', $_POST['pageId'], PDO::PARAM_INT);
$stmt->bindParam(':pageTitle', $_POST['pageTitle'], PDO::PARAM_STR);
$stmt->bindParam(':pageUrlSeo', $_POST['pageUrlSeo'], PDO::PARAM_STR);
$stmt->bindParam(':pageDate', $_POST['pageDate'], PDO::PARAM_STR);
$stmt->bindParam(':pageContent', $_POST['pageContent'], PDO::PARAM_STR);

$stmt->execute();
//header("Location: editpage.php?id=".$pageId."");
 

 

HapyMan HapyMan Full Stack Developer Kullanıcı
  • Üyelik 14.05.2016
  • Yaş/Cinsiyet 32 / E
  • Meslek What do you do exactly ?
  • Konum İstanbul Avrupa
  • Ad Soyad T** T**
  • Mesajlar 561
  • Beğeniler 171 / 208
  • Ticaret 0, (%0)
sorun çözülmediyse eğer kendinize göre değiştirip şunu bi denermisiniz ?


$data = array(
'Baslik' => $_POST['Baslik'],
'Baslangic' => $_POST['Baslangic'],
'Bitis' => $_POST['Bitis'],
'Aciklama' => $_POST['Aciklama'],
'Icerik' => $_POST['IcerikText'],
'Yer' => $_POST['Yer'],
'Statu' => $_POST['Statu'],
'Silindi' => '0',
'Sira' => '0',
);

$query = $vt->prepare("INSERT INTO EtkinlikTakvimi SET
Baslik =:Baslik,
Baslangic = :Baslangic,
Bitis = :Bitis,
Aciklama = :Aciklama,
Icerik = :Icerik,
Yer = :Yer,
Statu = :Statu,
Silindi = :Silindi,
Sira = :Sira");

$insert = $query->execute($data);
if ( $insert ){
echo 'basarili';
}


buda sayfayı çalıştırdığım ajax dosyam :


$("#EtkinlikEkle").submit(function(){
var dataArr = {
'Baslik' : $("input[name=Baslik]").val(),
'Baslangic' : $("input[name=BaslangicTarihi]").val(),
'Bitis' : $("input[name=BitisTarihi]").val(),
'Aciklama' : $("textarea[name=Aciklama]").val(),
'IcerikText' : $("textarea[name=IcerikText]").val(),
'Yer' : $("input[name=Yer]").val(),
'Statu' : $("select[name=Statu]").val()
}
$.ajax({
url: 'ajax/EtkinlikYonetimi/NewData.php',
type: 'POST',
data: {'Baslik': dataArr.Baslik, 'Baslangic' : dataArr.Baslangic, 'Bitis' : dataArr.Bitis, 'Aciklama' : dataArr.Aciklama,'IcerikText' : dataArr.Yer,'Yer' : dataArr.IcerikText,'Statu' : dataArr.Statu},
})
.done(function(data) {
if(data == 'basarili'){
//güvenlik güvenliktir adlı çalışmam >>
$('form').find('button').attr("disabled","disabled");
$('form').submit(function(){
return false
});
// Buda Ekrana Tatlı Bi Alert veriyor ve sayfayı Başa Gönderiyor :)))))) >>
swal("Etkinlik Başarılı Bir Şekilde Eklenmiştir.");
setTimeout(function(){
location.href = 'EtkinlikYonetimi.php';
},2000);
}else{
swal("Ekleme Sırasında Bir Hata Oluştu.");
console.log(data);
}
})
.fail(function() {
console.log("error !");
})
.always(function() {
});


return false;
});
 

 

wmaraci
wmaraci

TazZ TazZ www.ahmetcetintas.com Kullanıcı
  • Üyelik 19.10.2012
  • Yaş/Cinsiyet 37 / E
  • Meslek Grafiker Yazılımcı
  • Konum Aydın
  • Ad Soyad A** Ç**
  • Mesajlar 795
  • Beğeniler 324 / 323
  • Ticaret 19, (%100)

HapyMan adlı üyeden alıntı

sorun çözülmediyse eğer kendinize göre değiştirip şunu bi denermisiniz ?


$data = array(
'Baslik' => $_POST['Baslik'],
'Baslangic' => $_POST['Baslangic'],
'Bitis' => $_POST['Bitis'],
'Aciklama' => $_POST['Aciklama'],
'Icerik' => $_POST['IcerikText'],
'Yer' => $_POST['Yer'],
'Statu' => $_POST['Statu'],
'Silindi' => '0',
'Sira' => '0',
);

$query = $vt->prepare("INSERT INTO EtkinlikTakvimi SET
Baslik =:Baslik,
Baslangic = :Baslangic,
Bitis = :Bitis,
Aciklama = :Aciklama,
Icerik = :Icerik,
Yer = :Yer,
Statu = :Statu,
Silindi = :Silindi,
Sira = :Sira");

$insert = $query->execute($data);
if ( $insert ){
echo 'basarili';
}


buda sayfayı çalıştırdığım ajax dosyam :


$("#EtkinlikEkle").submit(function(){
var dataArr = {
'Baslik' : $("input[name=Baslik]").val(),
'Baslangic' : $("input[name=BaslangicTarihi]").val(),
'Bitis' : $("input[name=BitisTarihi]").val(),
'Aciklama' : $("textarea[name=Aciklama]").val(),
'IcerikText' : $("textarea[name=IcerikText]").val(),
'Yer' : $("input[name=Yer]").val(),
'Statu' : $("select[name=Statu]").val()
}
$.ajax({
url: 'ajax/EtkinlikYonetimi/NewData.php',
type: 'POST',
data: {'Baslik': dataArr.Baslik, 'Baslangic' : dataArr.Baslangic, 'Bitis' : dataArr.Bitis, 'Aciklama' : dataArr.Aciklama,'IcerikText' : dataArr.Yer,'Yer' : dataArr.IcerikText,'Statu' : dataArr.Statu},
})
.done(function(data) {
if(data == 'basarili'){
//güvenlik güvenliktir adlı çalışmam >>
$('form').find('button').attr("disabled","disabled");
$('form').submit(function(){
return false
});
// Buda Ekrana Tatlı Bi Alert veriyor ve sayfayı Başa Gönderiyor :)))))) >>
swal("Etkinlik Başarılı Bir Şekilde Eklenmiştir.");
setTimeout(function(){
location.href = 'EtkinlikYonetimi.php';
},2000);
}else{
swal("Ekleme Sırasında Bir Hata Oluştu.");
console.log(data);
}
})
.fail(function() {
console.log("error !");
})
.always(function() {
});


return false;
});


olmadı
 

 

HapyMan HapyMan Full Stack Developer Kullanıcı
  • Üyelik 14.05.2016
  • Yaş/Cinsiyet 32 / E
  • Meslek What do you do exactly ?
  • Konum İstanbul Avrupa
  • Ad Soyad T** T**
  • Mesajlar 561
  • Beğeniler 171 / 208
  • Ticaret 0, (%0)
hocam db dosyasını çağırmaktan yana bir sıkıntınız olabilir çünkü sizin kodlarınızı hiç bir değişiklik yapmadan denedim çalışıyor


try{
$db = new PDO("mysql:host=localhost;dbname=xxx;charset=utf8","root","");
} catch ( PDOException $e ){
print $e->getMessage();
}
if($_POST){
$form = $_POST;
$pageId = $form['pageId'];
$pageTitle = $form['pageTitle'];
$pageUrlSeo = $form['pageUrlSeo'];
$pageDate = $form['pageDate'];
$pageContent = $form['pageContent'];
$pageView = $form['pageView'];

$sql = "INSERT INTO pages (pageId, pageTitle, pageUrlSeo, pageDate, pageContent, pageView) VALUES (:pageId, :pageTitle, :pageUrlSeo, :pageDate, :pageContent, :pageView)";

$stmt = $db->prepare($sql);
$stmt->execute( array(':pageId'=>$pageId, ':pageTitle'=>$pageTitle, ':pageUrlSeo'=>$pageUrlSeo, ':pageDate'=>$pageDate, ':pageContent'=>$pageContent, ':pageView'=>$pageView));
header("Location: index.php");
}
?>










Başlık Giriniz






Seoya uygun bağlantı adresiniz burada gösterlir. Yeniden düzenleyebilirsiniz.






Tarih belirtebilirsiniz.






Sayfanızda göstermek istediğiniz içeriğinizi buraya yazabilirsiniz.










eklenen içerikler !



    query("SELECT * FROM pages", PDO::FETCH_ASSOC);
    if ( $query->rowCount() ){
    foreach( $query as $row ){ ?>










 

 

TazZ TazZ www.ahmetcetintas.com Kullanıcı
  • Üyelik 19.10.2012
  • Yaş/Cinsiyet 37 / E
  • Meslek Grafiker Yazılımcı
  • Konum Aydın
  • Ad Soyad A** Ç**
  • Mesajlar 795
  • Beğeniler 324 / 323
  • Ticaret 19, (%100)

HapyMan adlı üyeden alıntı

hocam db dosyasını çağırmaktan yana bir sıkıntınız olabilir çünkü sizin kodlarınızı hiç bir değişiklik yapmadan denedim çalışıyor


Veritabanı bağlantısında sorun yok. Aynı dizindeki update işlemi db aynı şekilde çağırarak başarılı bir şekilde yapıyorum
 

 

oguzhaner oguzhaner WM Aracı Kullanıcı
  • Üyelik 13.12.2013
  • Yaş/Cinsiyet 30 / E
  • Meslek Web/Desktop Coder
  • Konum İstanbul Avrupa
  • Ad Soyad O** E**
  • Mesajlar 210
  • Beğeniler 20 / 20
  • Ticaret 3, (%100)
Post işlemini "IF" fonksiyonuyla deneyebilir misin? yani


if($_POS['form'] {
"Burada komutlar"
}
 

 

TazZ TazZ www.ahmetcetintas.com Kullanıcı
  • Üyelik 19.10.2012
  • Yaş/Cinsiyet 37 / E
  • Meslek Grafiker Yazılımcı
  • Konum Aydın
  • Ad Soyad A** Ç**
  • Mesajlar 795
  • Beğeniler 324 / 323
  • Ticaret 19, (%100)
projeden ayırdığım form ile şöyle insert alabiliyorum. Ancak projeye uyguladığımda yine alamıyorum. Sanırım ecarpar 'ın bahsettiği gibi tablonun istediğinden farklı veriler gönderiyorum ancak görünürde de bir yanlışlık yok gibi bir bakar mısınız?



index.php







indexinsert.php
try{
$db = new PDO("mysql:host=localhost;dbname=xxx;charset=utf8","root","");
} catch ( PDOException $e ){
print $e->getMessage();
}
$name=$_POST['name'];
$test=$_POST['test'];

$sql = "INSERT INTO `testdemo`(`id`, `name`, `test`) VALUES (?,?,?)";

$sth = $db->prepare($sql);

$sth->execute(array(NULL,$name,$test));

$temp = $sth->fetch(PDO::FETCH_ASSOC);


Ek Olarak:

adnan358 adlı üyeden alıntı

Bir exception alabilir misin kardeşim ?


werfection adlı üyeden alıntı

$form'u print_r ile ekrana bas tüm değerler geldiğinden emin ol. Daha sonra pageId kısmı var burası auto increment özelliği olmadığından emin ol. Eğer yine olmazsa. Tüm tablodaki sütunlara boş özelliği getir. Boş geçilebilsin ve veri tabanına veri kaydedebiliyorsa kod bloğu çalışıyor gelen veride sıkıntın var demektir


ecarpar adlı üyeden alıntı

$pageId = $form['pageId'];
$pageView = $form['pageView'];
Boş geliyor şu an ,database tarafında ID yi autoIncremet olarak seçtinmi?
akılma gelenleri sıralıyorum bu arada Id yi içeri senin yollamana gerek yok
VALUES (NULL , "$pageTitle", "$pageUrlSeo", "$pageDate", "$pageContent", "$pageView")";
şeklinde değiştirilebilir,

ama hataları neden verdiğini bilemiyorum kodları include "../functions/connect.php"; nin içeriğini paylaşman münkünmü ? Kullanıcı adı şifre felan sil o kısımları ama


oguzhaner adlı üyeden alıntı

Post işlemini "IF" fonksiyonuyla deneyebilir misin? yani


if($_POS['form'] {
"Burada komutlar"
}


sorunu çözdüm arkadaşlar. Sorun datepickerdaymış. formatı yanlış gönderdiği için insert işlemi olmuyormuş. Düzelttim her şey yolunda. Herkese cevaplar için teşekkür ederim.
ecarpar

kişi bu mesajı beğendi.

ecarpar ecarpar WM Aracı Kullanıcı
  • Üyelik 18.04.2014
  • Yaş/Cinsiyet 43 / E
  • Meslek bilişim ve e-ticaret uzmanı
  • Konum İstanbul Anadolu
  • Ad Soyad E** C**
  • Mesajlar 317
  • Beğeniler 23 / 90
  • Ticaret 0, (%0)
ama dedim ben sana taa en başta :) Örneğin : varchar 5 yapmışsındır tablonu 10 luk veri gidiyordur database i kontrol et diye..
Neyse geçmiş olsun kulağına küpe olur bir daha çalışan kodla uğraşmaz sorunu başka yerlerde ararsın işte tecrübe oldu senin içinde.
 

 

Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al