v2.5.2
Giriş yap

php yardım (Başlık bulamadım)

emmir2
293 defa görüntülendi

İl ve ilçe seçtirip kayıt ettiriyorum ilçe kısmı checkbox için de çoklu seçim yapabiliyor
buraya kadar bir sorunum yok
örnek : https://codepen.io/ebykdrms/pen/vYdvJvm

üye ili değiştirip her ilin ilçesinden veri ekleyebiliyor
bunu engellemem gerekiyor il değiştiricekse eski verileri sildirmeliyim

yani kısaca il değiştirip yeni ilçe ekleyecekse eski ilçe verilerini sildirmek istiyorum

Yada ek olarak siz ne yapardınız fikir de verebilirsiniz

 $i = 0;
    if(isset($_POST['ilce'])){
        foreach ($_POST['ilce'] as $as) {
            $islem = $db->prepare("INSERT INTO ilceler SET emlakci_id = ?, ilce = ?");
            $islem = $islem->execute(array($emlakci['id'],$_POST['ilce'][$i]));
     $i++;
          }
    }
   $ii = 0;
     if(isset($_POST['premium_ilce'])){
        foreach ($_POST['premium_ilce'] as $as) {
            $islem = $db->prepare("INSERT INTO ilceler SET emlakci_id =?, premium_ilce = ?");
            $islem = $islem->execute(array($emlakci['id'],$_POST['premium_ilce'][$ii]));
      $ii++;
}
<div class="setting__row">
<div class="field">
<div class="field__label"><?=$dil['19']?></div>
<div class="field__wrap" id="wrapper">
<select class="field__input" id="Iller" name="sehir" style="margin-bottom: 4px;">
<option value="0" disabled selected><?=$dil['20']?>...</option>
</select>
<div>

</div>
</div>
</div>
<div class="field">
<div class="field__label"><?=$dil['34']?></div>
<div class="field__wrap">
<div class="create__list">
<?php
$aStat = $db->query("SELECT * FROM ilceler WHERE emlakci_id = '{$emlakci['id']}'", PDO::FETCH_ASSOC);
if($aStat->rowCount()){
foreach( $aStat as $c ){ ?>
<?php if (!empty($c['ilce'])){ ?>
<label class="checkbox">
<span class="checkbox__inner">
<span class="checkbox__tick"></span>
<span class="checkbox__text">
<?=$c['ilce']?>
</span>
</span>
</label>
<?php }}} ?>   
</div>
</div>
</div>

</div> 
<?php if ($emlakci['premium_1'] == 1) { ?>
<div class="setting__row">
<div class="field">
<div class="field__label"><?=$dil['35']?></div>
<div class="field__wrap" id="premium">
<select class="field__input" name="premium_sehir" style="margin-bottom: 4px;">
<option value="0" disabled selected><?=$dil['20']?>...</option>
</select>
<div>

</div>
</div>
</div>
<div class="field">
<div class="field__label"><?=$dil['34']?></div>
<div class="field__wrap">
<div class="create__list">
<?php
$aStat = $db->query("SELECT * FROM ilceler WHERE emlakci_id = '{$emlakci['id']}'", PDO::FETCH_ASSOC);
if($aStat->rowCount()){
foreach( $aStat as $c ){ ?>
<?php if (!empty($c['premium_ilce'])){ ?>
<label class="checkbox">
<span class="checkbox__inner">
<span class="checkbox__tick"></span>
<span class="checkbox__text">
<?=$c['premium_ilce']?>
</span>
</span>
</label>
<?php }}} ?>   
</div>
</div>
</div>

</div> 
<?php  } ?>
emmir2
679 gün önce

Sorunu şu şekil de çözdümm kontrol ettim emlakçı tablosun daki şehirle post verisin deki şehir uyuşuyomu diye
eğer uyuşuyor ise veriyi ekle eğer uyuşmuyorsa ilceler kısmını sıfırla yeni veriyi ekle olarak yaptımm

if(isset($_POST['ilce'])){
                              foreach ($_POST['ilce'] as $as) {
                                $query = $db->prepare("SELECT * FROM emlakci where id=:id AND sehir !=:sehir LIMIT 1");
                                $ss = $query->execute(array(":id"=>$_SESSION['kullanici']['id'],":sehir"=>post('sehir')));
                                $ss = $query->fetch(PDO::FETCH_ASSOC);

                                if ($ss) {
                                   $islem = $db->prepare("INSERT INTO ilceler SET emlakci_id = ?, ilce = ?");
                                  $islem = $islem->execute(array($emlakci['id'],$_POST['ilce'][$i]));
                                  
                                }else{
                                    $delete = $db->exec("DELETE FROM ilceler WHERE emlakci_id = '{$_SESSION['kullanici']['id']}'");
                                  if ($delete) {
                                     $islem = $db->prepare("INSERT INTO ilceler SET emlakci_id = ?, ilce = ?");
                                  $islem = $islem->execute(array($emlakci['id'],$_POST['ilce'][$i]));
                                  }
                                }

                              $i++;
                              }
                          }