lostyazilim

Selectboxa göre veri getirme

5 Mesajlar 752 Okunma
lstbozum
wmaraci reklam

Rakoto Rakoto WM Aracı Kullanıcı
  • Üyelik 06.11.2017
  • Yaş/Cinsiyet 30 / E
  • Meslek acemi yazılımcı
  • Konum Kocaeli
  • Ad Soyad S** S**
  • Mesajlar 163
  • Beğeniler 22 / 22
  • Ticaret 0, (%0)
Merhaba arkadaşlar
Biliyorum her tarafta olan bir konu hatta php bölümüne açtım.
Fakat bir kişi hariç yazan eden olmadı.
Şimdi benim https://ibb.co/dh8wnH şu şekilde verilerimin olduğu bir sayfa var birde https://ibb.co/hsu2SH diye farklı bir veri girişi yaptığım b sayfası var. ben şimdi bu b sayfasında ssa yı seçtiğim zaman a sayfasına göre karşılaştırma yaparak gostergeleri filtreleyip getiriyor ben buna göstergelere bağlı olarakta yine a tablosunda filtreleme yaparak ilgili değerler için hedefi getirsin istiyorum. hedef hücresinin select box olmasına gerek yok veri seçimi olmayacak doğrusu js ve jquery hakkında temel düzeydeyim alternatif bir çözümü yok sanırım
 

 

wmaraci
reklam

Rakoto Rakoto WM Aracı Kullanıcı
  • Üyelik 06.11.2017
  • Yaş/Cinsiyet 30 / E
  • Meslek acemi yazılımcı
  • Konum Kocaeli
  • Ad Soyad S** S**
  • Mesajlar 163
  • Beğeniler 22 / 22
  • Ticaret 0, (%0)
bu arada ilk kısmı bu şekilde filtreleyip getirtebildim
<script>
var $select1 = $( '#ssa' ),
$select2 = $( '#gos' ),
$options = $select2.find( 'option' );

$select1.on( 'change', function() {
$select2.html( $options.filter( '[value="' + this.value + '"]' ) );

} ).trigger( 'change' );


</script>
 

 

Flawless Flawless Üyeliği Durdurulmuş Banlı Kullanıcı
  • Üyelik 25.10.2013
  • Yaş/Cinsiyet 41 / E
  • Meslek Php Coder
  • Konum Antalya
  • Ad Soyad K** I**
  • Mesajlar 476
  • Beğeniler 22 / 87
  • Ticaret 7, (%100)
Üstadım, şimdi ilk select ssa olduguna göre ssa ya onchange ile bir fonksiyon atamalisin. Peki bu fonksiyon ne yapacak ajax ile x sayfasina ssa degerini post edecek ve x sayfasında bu post degerine gore sorgulatip dönen degerleri while ile option altında bastir fonksiyonunun success degerine de gos selectinin idsini girererk donen degerin orada cikmasini saglayabilirisin. Mobilim kod yazamadım ama mantığını anlatmaya çalıştım
 

 

Rakoto Rakoto WM Aracı Kullanıcı
  • Üyelik 06.11.2017
  • Yaş/Cinsiyet 30 / E
  • Meslek acemi yazılımcı
  • Konum Kocaeli
  • Ad Soyad S** S**
  • Mesajlar 163
  • Beğeniler 22 / 22
  • Ticaret 0, (%0)
b sayfasında yani ikinci sayfada yazılanlar farklı bir yere post ediliyor a sayfasından ise veri çekiliyor
Hocam birde konuya hakim olamadığım için
Ben basit bir eşleştirme yaptım o şekilde getirtiyorum
 

 

wmaraci
wmaraci

HapyMan HapyMan Full Stack Developer Kullanıcı
  • Üyelik 14.05.2016
  • Yaş/Cinsiyet 32 / E
  • Meslek What do you do exactly ?
  • Konum İstanbul Avrupa
  • Ad Soyad T** T**
  • Mesajlar 562
  • Beğeniler 171 / 208
  • Ticaret 0, (%0)
bu link üzerinden çalışan halini kontrol edebilirsin.

ayrıca buradan dosyaları indire bilirsin.

javascript kodu :


<script></script>
<script>
var filter = function (){

var url = "http://kodarsiv.com/surectakip/ajaxFilter.php";

function ajaxSender($data) {
$.post(url, $data, function (response) {
dataParser(response);
});
}

function dataParser(data) {
var obj = jQuery.parseJSON(data);
$("div.sonuc").find("ul").html("Sorumlu : " + obj[0]["sorumlu"] + " - hedef : "+ obj[0]["hedef"]);
console.log(obj);
}

return {
onChange : function () {
data = {};
$("select#surec").on("change", function () {
data["ssa"] = $(this).val();
ajaxSender(data);
});

$("select#gos").on("change", function () {
data["gos"] = $(this).val();
ajaxSender(data);
});
}
}
}();


$(document).ready(function () {
filter.onChange();
});
</script>


filtre kodu :

require_once __DIR__."/vendor/autoload.php";
use Illuminate\Database\Capsule\Manager as Capsule;

$capsule = new Capsule;

$capsule->addConnection([
'driver' => 'mysql',
'host' => 'localhost',
'database' => 'surecdb',
'username' => 'surecuser',
'password' => 'psword',
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
]);

use Illuminate\Events\Dispatcher;
use Illuminate\Container\Container;
$capsule->setEventDispatcher(new Dispatcher(new Container));

$capsule->setAsGlobal();

$capsule->bootEloquent();
$liste = Capsule::table('liste');

if ( isset($_POST["ssa"]) ) {
$liste->where("ssa", $_POST["ssa"]);
}

if( isset($_POST["ssa"]) && isset($_POST["gos"]) ) {
$liste->orWhere("gos", $_POST["gos"]);
}else if( !isset($_POST["ssa"]) && isset($_POST["gos"]) ) {
$liste->where("gos", $_POST["gos"]);
}

$data = $liste->get();

print_r(json_encode($data, true));

 

 

wmaraci
Konuyu toplam 1 kişi okuyor. (0 kullanıcı ve 1 misafir)
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al