or
kullanarak iki farklı koşulda çekmeyi deneyebilirsin. Örneğin;
$query = 'izmir limanı';
$query = $db->prepare('select * from tablo where liste like "%:query1%" or liste like "%:query2%"');
$query->execute([
'query1' => $query,
'query2' => str_replace(' ', '-', $query)
]);
ben şu şekilde deneyince bir hata almıyorum, ayrıca bir deneyip test etme şansın oldu mu?
<div id="list"></div>
<script>
const data = [
{id: 1},
{id: 2},
{id: 3},
{id: 4},
{id: 5}
]
let listDiv = document.getElementById('list'),
texts = ''
for (let item of data) {
texts += `<div onclick="adressec(${item.id})">${item.id} idli div</div>`
}
listDiv.innerHTML = texts;
function adressec(i) {
console.log('tıklanan değer =' + i);
}
</script>
senin istediğin mantık dışı bir şey. request atıyorsan response alırsın, bunun olayı bu zaten. yani hiçbir mantığı yok şu istediğin şeyin, hangi amaçla istediğini bile anlamadım, karşı taraftan response istemiyorsan request niye atıyorsun? ne request attığını görmek için formdan aldığın değerleri konsola bas geç o zaman, bazen gerçekten sorularınızı anlamak zor geliyor bana.
tarayıcılarda "developer tools" diye bir şey var. örneğin bir formu test edeceğinizde geliştirici aracını açın ve orada network sekmesini açıp bir kere işlem yapın. eğer javascript ile işlem yapıyorsanız zaten orada request'i göreceksiniz, tekrar kontrol etmek için ona sağ tıklayıp replay xhr
diyerek aynı bilgilerle aynı adrese tekrar işlem yaptırabilirsiniz.
bu gayet normal bir durum. sonuçta siz index.php
yi bu sefer POST
metoduyla çağırıyorsunuz. Dolayısı ile bir yönlendirme olmadığı müddetçe bu sayfa post olarak görüntülenecek ve yenilenince yeniden post işlemi yapmaya çalışacak.
neyi sorun ediyorsunuz tam olarak?
Sınıf içinde html içinde metodlar tanımlayabilirsin, ancak front-end ile back-end i karıştırmak çokta mantıklı değil, o yüzden bir template engine kullanmanı tavsiye edebilirim. blade, twig gibi.
function component sonradan geldi, dökümantasyonda bir farkı olmadığı yazıyordu, buna geçmek zorunda olmadığımızda yazıyordu , bir zorlama yok yani ama bence function component kullanımı çok daha kolay, ben şahsen function tercih edenlerdenim. Ve muhtemelen bu tarafa doğru evrilebilir sonuçta boşuna getirmiyorlar bu yenilikleri, deneme yanılmayla en doğru olanı bize sunacaklardır zamanla.
Asıl soru neden session
kullanmak istemiyorsun? Sunucu taraflı oluştuğu için session'lar başka birinin müdahale etme şansıda olmaz bu işlemi cookie ile yapmak istesen cookie değiştirilebilir dolayısı ile doğrulamanın pek bir mantığı yok.
İkinci sorum ise, ne için böyle bir şeye ihtiyacın var? Alternatif olarak bu bilgileri doğruladıktan sonra dbne kayıt edip daha sonra 3. sayfanda dbden doğrulanmış bilgileri alarak işlem yapabilir ve işin bittiğinde gerekirse bu geçici bilgileri tablondan temizleyebilirsin.
html2canvas kullanabilirsin bunun için.
https://html2canvas.hertzen.com/
elbette bazı kısıtlamalar var, çok modern css özellikleri çalışmayabilir, desteklenmeyen özelliklere buradan bakabilirsin
https://html2canvas.hertzen.com/features ( en aşağıda yer alıyor )
bununla ilgili 2 örnek yaptık youtube kanalımızda var onlarada bakabilirsin
https://www.youtube.com/watch?v=9Ji0OhwaEjs
https://www.youtube.com/watch?v=0_YRhgKvMDY (react örneği)
sayfaya dediğin genel olarak body'e bir div ortalamak istersen yapay ve dikay olarak.
html, body {
padding: 0;
margin: 0;
height: 100%;
}
body {
display: flex;
align-items: center;
justify-content: center;
}
demen yeterli olacaktır. Eğer bir div içinde başka bir divi ortalamak istiyorsan bilmen gereken kapsayıcı divinin genişlik ve yüksekliği olması gerek buna göre ortalaması gerek. Örneğin;
<div class="kapsayici-div">
<div class="ortalanaca-div">
ortalanan içerik
</div>
</div>
<style>
.kapsayici-div {
width: 100%;
height: 600px;
display: flex;
align-items: center;
justify-content: center;
}
.ortalanan-div {
background: #000;
color: #fff;
padding: 30px;
}
</style>