evet bu bilgileri iceren bir qr kodu olusturabilirsin, ornegin:
https://chart.googleapis.com/chart?chs=500x500&cht=qr&chl=adsoyad\niban%20numarasi\naciklama
Ancak bu qr'i okutup banka uygulamalarina otomatik tamamlama yaptiramazsin, banka uygulamalarinin boyle bir ozelligi olmali ve hangi formatta kabul edildigi tespit edilmeli, ben henuz boyle bir ozelligi olan banka gormedim yani muhtemelen istedigini yapamayabilirsin :)
bunu yapmanin farkli yollari var, eger begenme-begenmeme durumlari senin icin onemliyse ve ileride kullanicilarina buna gore icerik vs. gostereceksen kesinlikle 3. bir tabloda her bir begeni ya da begenmeme durumunu yorum ve uye idsi ile tutman gerekiyor.
alternatif olarak cookie'de tutup sadece yorumlar tablosundan +1, -1 yapabilirsin ama bu da cok guvenli olmuyor, cookie yi kaldirip birden fazla kez islem yapabilirler, cok onemli degilse cookie'de, degerler guvenilir olsun oynanmasin, herkes bir kere bu islemi yapsin dersen de db de tutman gerekiyor.
gecenlerde aklimdaydi, en kisa zamanda bir tane olusturacagim :)
şu eklentiyi kullaabilirsin:
https://react-scroll-parallax.damnthat.tv/
bir örnekte yaptım senin için:
https://stackblitz.com/edit/react-ho8yhq?file=src/App.js
sanırım datatable kullanıyorsun, backendi onun verdiği gibi olmak zorunda değil datatable örneğinde server-side isteklere bakmıştık, belki videoo işine yarayabilir cevap bulma konusunda:
https://www.youtube.com/watch?v=ctLmh82d5Lg
php tarafından html döndürüp onu javascript ile basmak en doğrusu. örneğin comment.php
diye bir dosyan olsun.
<div class="comment">
<div class="user"><?=$comment['username']?></div>
<div class="comment">
<?=$comment['content']?>
</div>
</div>
bu senin hem normalde sayfadaki yorumları gösterdiğin şablonun hem de ajax ile yeni bir yorum eklendiğinde döndürüp göstereceğin şablonun olacak.
php tarafına ajax ile istek attın, yorumunu veritabanına ekledin diyelim. Basit bir şekilde şöyle simüle edip htmli geriye döndürebilirsin:
$username = 'test'
$content = 'yorum mesaji'
// db insert islemleri
// buralari sen halladers'n
$comment = [
'username' => $username,
'content' => $content
];
ob_start();
require __DIR__ . '/comment.php';
$output = ob_get_clean();
echo json_encode([
'comment_html' => $output,
'message' => 'yorum basariyla eklendi'
]);
yukarıdaki gibi bir ajax php kodun olacak. sonuç olarak buraya istek atınca gelen datayı alıp basacaksın.
function addComment() {
const username = document.getElementById('username'),
content = document.getElementById('content')
const formData = new FormData()
formData.append('username', username)
formData.append('content', content)
fetch('/ajax.php', {
method: 'post',
body: formData
})
.then(res => res.json())
.then(res => {
console.log(res.comment_html) // gonderdigin html kodu
// bunu artik append ile nereye eklemek istiyorsan eklersin
})
}
elbette örneği kendine göre uyarlayıp düzenlemen gereken yerleri kendine göre düzenlemelisin.
bu dedigin olay data yuklenene kadar gosterilen loading componentleri, sorun su ki php sayfalarda sayfa yuklenmeden zaten daha hicbir data basamiyorsun ekrana, yani bunu php ile yapmanin bir mantigi yok cunku yolu yok.
eger php'yi sadece api olarak kullandigin bir projen olursa ve front-end tarafini bagimsiz olarak javascript ile gelistirirsen o zaman bunu kullanmak icin bir sebebin olabilir, onun icinde bir cok hazir kutuphane var kolayca loaderlari olusturabilecegin
ben de farkli bir ornek vereyim:
console.log(
firstArray.reduce((acc, curr) => [...acc, ...secondArray.reduce((a, c) => [...a, [curr, c]] ,[])] ,[])
)
tarihleri tuttugun kolon adinin tarih
oldugunu varsayarsak soyle bir sql kodu isini gorecektir:
select * from tablo_adi
where TIMESTAMPDIFF(SECOND, tarih, now()) > 30;
ya da soyle bir sey kullanabilirsin:
select * from tablo_adi
where tarih > (now() - INTERVAL 30 SECOND);
sanirim su ust taraf seni zorlayan, soyle bir ornek yaptim isine yarayabilir: