if (durum1) { } else if (durum2) { } else {
//iki durumu da karşılamazsa burası çalışır.
}
süreden kaynaklı bir şey ise time out düzenlemesi yapılmalı deniliyor. istersen bunu kontrol et.
sayfadan ayrılınca session destroy mu yoksa unset mi kullanıyorsun? buna da bakman lazımmış.
senin için bulabildiğim şeyler bunlar.
Session ve yönlendirmene & geri dönüşe ait kodları burda yazarsan nerede hata olduğunu gören çıkarabilir.
div çoğaltınca ekrana html içeriği basıyor ama çoğaltılan div deki inputları array içine almiyor.
print_r ($_Post["adi"]);
sonuç: array ([0]=>ali) yer alıyor.
$adi = isset($_POST['adi']) ? $_POST['adi'] : "" ;
$soyadi = isset($_POST['soyadi']) ? $_POST['soyadi'] : "" ;
$yazar_sira = isset($_POST['yazar_sira']) ? $_POST['yazar_sira'] : "" ;
foreach($adi as $key=>$value){
$m_yazar_ekle = $db->SorguCalistir(
"INSERT INTO yazarlar",
"SET adi=?,soyadi=?,yazar_sira=?",
array($adi[$key],$soyadi[$key],$yazar_sira[$key])
);
}
HTML Yapımda şu şekilde
...
<input type="text" class="form-control" placeholder="Yazarın adı…" name="adi[]">
<input type="text" class="form-control" placeholder="Yazarın soyadı…" name="soyadi[]">
...
<button type="button" class="btn btn-info btn-circle" style="float:right;" onclick="yeniekle()">
<i class="fa fa-plus"></i>
</button>
inputları ekleyeceğim yazar sayısına göre javascript ile çoğaltıyorum.
function yeniekle() {
let writersLength = $(".writers").length;
let icerik = `
<input type="text" class="form-control " placeholder=" Yazarın adı…" name="adi[]">
...
@abdullahx son yorumuzdan yola çıkarak şöyle bir değişiklik yoluna gittim ama yine başarı elde edemedim.
0 numaralı indise istek atıyor ama array daki diğer indisleri görmüyor.
@abdullahx hocam zamanınınız ve emeğiniz için teşekkürler.
yayın başlığı, kategorisi gibi inputların olduğu alanın yanında
yazar bilgilerini de aynı sayfadan detaylı olarak bir defadan göndermek adına ikinci bir yazar ve çoğaltılan yazar bilgileri inputlarım var.
hem yayınlar tablosuna hem de yazarlar tablosuna formdan seçili bilgileri gönderiyorum.
Mantığını çözmek adına basit bir kesiminin kodunu paylaştım. Kodun daha fazlasını paylaşamıyorum.
O yüzden ajax post ile çözmek benim için daha karışık hal alacak.
bu şekilde for loop 20 ye kadar input arıyor (adi20, soyadi20) hata döndürüyor tanımsızlar diye.
pdo da benzer bir örnek bulamadım. bu yukardakini de mysql ile yazılmış bir örnekten almıştım. Ama çalışmıor
mantığını da oturtamadım sanırım.
Sum kısmını aşağıdaki mantıkta yazıp dener misin? yalnız kontrol et hatalı yazmış olabilirim.
sum case yapısı kullanılacak sanırım. doğru olmadıysa ona göre arama yap doğru uygulamayı bulursun sanırım.
SUM(CASE
WHEN payment_method == 'N' THEN payment_amount
ELSE 0 END) AS payment_sum_N,
SUM (CASE
WHEN payment_method == 'K' THEN payment_amount
ELSE 0
END) AS payment_sum_K
ne ararsa arasın sadece ilk 2 kelimesini mi almasını mı istiyorsun?
o zaman explode ile aranan cümleyi kelimelere ayıracaksın. Dizi içine aldığın kelimelerden 0. ve 1. indisinden kelimelere göre sonuç çekeceksin.
İstediğin böyle bir şey ise bu yönde araştırma yap.
yok belirli kelimeleri arama sorgusundan ayıklamak istiyorsan daha önce verdiğim fonksiyona ekleme yaparak kullanman şart.
Anca bu kadar yardım edebilirim. kolay gelsin.
@emmir2, yok öylede olmadı. Script örneğinide konuya ekledim.
Sadece name alanında değil sanırım for döngümde de sıkıntı var. iyice kafam karıştı.
Daha önceki konundaki (https://prototurk.com/cevap/9022) sana yazdığım çözüm olan kodu düzenle.
Koddaki array 'in içine lazım oldukça engellemek istediğin kelimeleri ekleyerek çoğalt, hepsi o.