DB'de araba sütunum var
arraydada araba[1] 2 3 vs arabalar var
bir kod yazmak istiyorum array'ın içindeki veriler db'de yoksa onları ekrana yazdırsın daha sonra onlarıda seçerek db'ye ekleyeğim amacım o
bu şekilde bir kontrolü nasıl yapabilirim ?
Db'den çektiklerim arrayın içindekilerden birine eşit mi değil mi kontrol ?
3
●244
- 15-12-2016, 18:20:101. Veritabanındaki arabaları ilk başta çek bir diziye al.
2. Araba dizisini foreach döngüsüne al
3. Bu döngünün içinde koşul ekle bu koşulda http://php.net/manual/tr/function.in-array.php kullanarak kontrolünü sağla
4. Sonuçları ekrana yazdır - 15-12-2016, 18:45:39Oda çok mantıklıymış çok teşekkür ederim
//$yaz elimde daha önce tanımlanmış array $sorgu4 = mysql_query("select * from arabalar"); while($sonuc4 = mysql_fetch_assoc($sorgu4)) { $dbveri = $sonuc4["araba"]; foreach ($yaz as $deger) { if($dbveri==$deger) { } else { $dbdeolmayanlinkler[] = $deger; } } }Bu şekilde çözdüm bu kodda bir sıkıntı var mı ?
Edit: benim kod sadece db'deki ilk veriyi yazmadı gerisini yazdı
--R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 18:45:39 -->-> Daha önceki mesaj 18:35:34 --
@Mikroscript çok teşekkür ederim dediğiniz gibi çözdüm
//$yaz önceden tanımlanmış arabalar array'im $sorgu4 = mysql_query("select araba from arabalar"); while($sonuc4 = mysql_fetch_assoc($sorgu4)) { $linkler[] = $sonuc4["araba"]; // dizi değişkene atadık. } foreach ($yaz as $deger) { if (!in_array($deger, $linkler)) { echo $deger; echo "<br>"; } }kodu işimi çözdü - 15-12-2016, 23:40:26Ben mantığı biraz daha geliştirip phpimizin build in fonksiyonu olan array_diff ile bunları almanı tavsiye ederim.
// $yaz elinde daha önce tanımlanmış array // $linkler veritabanından gelen array $olmayanlar = array_diff($yaz,$linkler); print_r($olmayanlar); // 2 dizinle olmayan değerleri karşılaştırır.
http://php.net/manual/tr/function.array-diff.php
Peki ya olanları birbiriyle eşleşenleri isteseydik ne olacaktı?
$olanlar = array_intersect($yaz,$linkler);
http://php.net/manual/tr/function.array-intersect.php
Kolay gelsin.
tahagg adlı üyeden alıntı: mesajı görüntüle