http://sqlfiddle.com/#!9/7766a9/1
Buradaki sql sorgusunudan gelen resimler adında geleni explode ile virgülden ayırarak array e dönüştürebilirsin.
<?php
$say = $db->query("SELECT `resimalbumu`.*, GROUP_CONCAT(`albumeresimekle`.`albumeresimekle_adi`) AS resimler FROM `resimalbumu` INNER JOIN `albumeresimekle` ON `albumeresimekle`.`albumeresimekle_sirasi` = `resimalbumu`.`resimalbumu_id` GROUP BY `albumeresimekle`.`albumeresimekle_sirasi` ORDER BY `albumeresimekle`.`albumeresimekle_sirasi` DESC LIMIT $goster, $limit");
$resimlerial = $say->fetchAll(PDO::FETCH_ASSOC);
foreach($resimlerial as $resim) {
?>
<?php echo $resim['albumeresimekle_baslik']; ?></div>
<?php
$resimler = explode(',', $resim["resimler"]);
foreach($resimler as $img){
?>
<img src="../../../upload/albumeresimekle/<?php echo $img; ?>">
<?php } ?>
<?php } ?>
bu şekilde yapmayı dene kendi kodlarına göre ayarlarsın.
Öncelikle bu şekilde kullanıcıdan aldığınız verileri kontrol etmeden direk db'ye kayıt ederseniz SQLInjection açığı kaçınılmaz :)
PDO kullanmanı tavsiye ederim ve $_POST'tan gelen veriyi kontrolden geçirmelisin.http://www.erbilen.net/pdo-kullanimi/
Posttan gelen veriyi kontrol ettikten sonra SELECT ile Posttan gelen TCno var mı diye kontrol ettirirsin.Yoksa Ekleme işlemini yaptırırsın.
Ek olarak PhpMyAdmin den TCno ya UNIQUE yani Benzersiz yaparsan kayıt ederken TCno varsa hata verir.
Pc ile mobil arasında fark olmasının sebebi default görünümü olduğu için.
Mobil deki default görünümü o şekilde ayarlamışlar.
select{
width:200px;
background:#38373c;
color:#fff;
padding:10px;
}
option{
padding:15px 10px;
}
option:hover{
background:#5f5d67;
cursor:pointer;
}
gibi görüntüsünü değiştirebilirsin.
ama sağdaki checkbox lar için javascript gerekir gibi
http://sqlfiddle.com/#!9/7766a9/1
şuradaki gibi bir sorgu işine yarayacaktır.
Alt + 94 yaparakta aynı işareti yapabilirsin.
if(isset($_SERVER['HTTP_X_REQUESTED_WITH']) && $_SERVER['HTTP_X_REQUESTED_WITH'] === 'XMLHttpRequest'){
echo 'bu bir ajax isteği';
}else{
echo 'bu bir ajax isteği değil';
}
my.cnf dosyasına
[mysqld]
default-time-zone=’Europe/Istanbul’
şunu girmen gerekiyormuş bunu denedin mi?
https://www.syslogs.org/mysql-server-time-zone-degisikligi/
buradaki konuya bakabilirsin.
[mysqld]
default-time-zone=’Europe/Istanbul’
<script>
$(".btn").click(function(){
let btn = $(this).children('i.fa-heart');
if(btn.hasClass("far")){
var durum = 1;
btn.removeClass("far").addClass("fas");
}else{
var durum = 0;
btn.removeClass("fas").addClass("far");
}
$.ajax({
url:"pages/begeni.php",
data:{"durum":durum,"yazi_sira":<?php echo $yazi_sira?>},
type:"POST",
success:function(m){
alert(m);
}
});
});
</script>
yazi_sira yı direk buraya girmeyi dene
Öncelikle kodlarını
```php
// Buraya
```
Bu şekilde girersen düzgün gözükecektir.
Bir sayfada id yi sadece 1 defa kullanmalısın.
sen foreach ile idsi yazi_sira olan birden çok input yazdırıyorsun bu kullanım yanlış.
id her zaman unique olması gerekir.
foreach($geziDondur as $key => $geziAnahtar){
<!-- gizli input için type'ını hidden yapman yeterli style ile uğraşmana gerek yok. -->
<input id="yazi_sira_<?php echo $key ?>" type="hidden" value="<?php echo $yazi_sira?>">
<script>
$(".btn").click(function(){
var yazi_sira = $("#yazi_sira_<?php echo $key ?>").val();
let btn = $(this).children('i.fa-heart');
if(btn.hasClass("far")){
var durum = 1;
btn.removeClass("far").addClass("fas");
}else{
var durum = 0;
btn.removeClass("fas").addClass("far");
}
$.ajax({
url:"pages/begeni.php",
data:{"durum":durum,"yazi_sira":yazi_sira},
type:"POST",
success:function(m){
alert(m);
}
});
});
</script>
bu şekilde yaparsan büyük ihtimal çözülecektir.