lostyazilim
tr.link

Kaç sütunun boş, kaç sütunun dolu olduğunu bulmak için bir fonksiyon!

18 Mesajlar 2.713 Okunma
acebozum
tr.link

BEYAZMASTER BEYAZMASTER YÜCE ALLAH'IN aciz 1 kulu Kullanıcı
  • Üyelik 04.02.2020
  • Yaş/Cinsiyet 43 / E
  • Meslek Yazılım...
  • Konum Diğer
  • Ad Soyad O** B**
  • Mesajlar 597
  • Beğeniler 154 / 153
  • Ticaret 0, (%0)
Merhaba üstad...

Vay be!
Böyle bir ihtiyacı karşılayacak bir kod olacağına dair pek bir umudum yoktu.
Php'de yok "yok" gibi...

Yeter ki üstadlar bir konuya el atsın, mutlaka çözüm buluyorlar...

Emeğinize sağlık emreyvz üstadım...

Geçen paylaştığınız dögüde yaptığım bir hatayı farketmeden önce böyle bir koda ihtiyaç hissedip bu konuyu açmıştım.

Hatam şuydu;

==null yerine =="null" yazmaktı.

Bundan dolayı boş sütunlar da döngüde gözüküyordu, hatamı farkedip düzeltince mesele çözüldü.

Yazdığınız bu niş kodu muhafaza edeceğim...

Çok teşekkür ederim...
VipTema emreyvz

kişi bu mesajı beğendi.

ÖNCE "İYİ,DOĞRU,GÜZEL BİR İNSAN" OLMAK (VEFA,TEVAZZU,NAİFLİK,SAYGI,...) GEREK!
Sonra wm oluruz.
wmaraci
reklam

VipTema VipTema Vip Tema Web Tasarım Kullanıcı
  • Üyelik 29.06.2011
  • Yaş/Cinsiyet 37 / E
  • Meslek Vip Tema Web Tasarım A.Ş.
  • Konum Tekirdağ
  • Ad Soyad Ö** I**
  • Mesajlar 1393
  • Beğeniler 704 / 703
  • Ticaret 21, (%100)
şu forumda adam gibi mantıklı sorular sorabilen ve cevabını alabilen, teşekkür etmesini bilen nadir uyelerdensin. Umarım php de iye yerlere gelirsin.
BEYAZMASTER

kişi bu mesajı beğendi.

BEYAZMASTER BEYAZMASTER YÜCE ALLAH'IN aciz 1 kulu Kullanıcı
  • Üyelik 04.02.2020
  • Yaş/Cinsiyet 43 / E
  • Meslek Yazılım...
  • Konum Diğer
  • Ad Soyad O** B**
  • Mesajlar 597
  • Beğeniler 154 / 153
  • Ticaret 0, (%0)

Okan_IŞIK adlı üyeden alıntı

şu forumda adam gibi mantıklı sorular sorabilen ve cevabını alabilen, teşekkür etmesini bilen nadir uyelerdensin. Umarım php de iye yerlere gelirsin.


Okan_IŞIK İncelikli bakışınız için, nazik düşünceleriniz, içten sözlerleriniz ve güzel temenniniz için teşekkür ederim üstadım.

Elimden geldiğince birşeyleri ifade edip gelişmeye çalışıyorum bu mecrada.
Fakat bu tek başına hiçbirşey ifade etmez.

Bilgisini paylaşma cömertliğini, erdemini gösteren üstadlar ile birlikte anlamlı...
Onlar olmasa forum yavan olur, özünü kaybeder...

emreyvz , Abdullahx , darkcoder , edcsmile antrode , webtegez , netman , forces , silenthilll , Storyman , zfczfc
ve şu an adını hatırlayamadığım tüm diğer üstadlar (kusuruma bakmasınlar...)



Türkçe karakter nedeni ile @ömergünay şeklinde alıntı yapamadım.

Hepsinden ALLAH RAZI OLSUN...
OmerGunay Abdullahx

kişi bu mesajı beğendi.

ÖNCE "İYİ,DOĞRU,GÜZEL BİR İNSAN" OLMAK (VEFA,TEVAZZU,NAİFLİK,SAYGI,...) GEREK!
Sonra wm oluruz.

BEYAZMASTER BEYAZMASTER YÜCE ALLAH'IN aciz 1 kulu Kullanıcı
  • Üyelik 04.02.2020
  • Yaş/Cinsiyet 43 / E
  • Meslek Yazılım...
  • Konum Diğer
  • Ad Soyad O** B**
  • Mesajlar 597
  • Beğeniler 154 / 153
  • Ticaret 0, (%0)

emreyvz adlı üyeden alıntı

Merhaba, kodda yer alan Database bilgileri, sayılacak tablonun adı ve tabloda yer alan tek satır verinin id'sini girmeyin unutmayın.



$dbhost = "localhost";
$dbuser = "KullaniciAdi";
$dbpass = "Sifre";
$dbdata = "DatabaseAdi";

$mysqli = new mysqli($dbhost,$dbuser ,$dbpass,$dbdata);
mysqli_set_charset($mysqli,"utf8");
if ($mysqli -> connect_errno) {
echo "Failed to connect to MySQL: " . $mysqli -> connect_error;
exit();
}

$bosKolonlar = 0;
$doluKolonlar = 0;
$query1 = mysqli_query($mysqli, "SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = N'TABLO_ADI_BURAYA_GELECEK'");
while ($fetch = mysqli_fetch_assoc($query1)) {
$query2 = mysqli_query($mysqli, "SELECT ". $fetch['COLUMN_NAME']. " FROM test WHERE id = 'TABLONUZDA YER ALAN TEK SATIR VERININ IDsi '");
if (empty(mysqli_fetch_assoc($query2)[$fetch['COLUMN_NAME']])){
$bosKolonlar += 1;
} else {
$doluKolonlar += 1;
}
}

echo "Dolu Kolon Sayısı: " . $doluKolonlar . "
";
echo "Boş Kolon Sayısı: " . $bosKolonlar . "
";

?>


Kolay gelsin.



Üstadım kod çok güzel çalışıyor.

Satırdaki tüm sütunları sayıyor.

Soruyu sorarken noksan ifade etmişim, şu detayı belirterek sormam gerekirdi;

Sadece belli sütunları (product1, product2, product3, ... gibi) sayması, bazı sütunları (firm_id, firm_name, ... gibi) saymaması için nasıl bir dokunuş yapmamız gerekir?

&

Ve bir de bu kodu bu haliyle yada küçük değişikliklerle başka hangi durumlarda çözümler üretmek için kullanabiliriz?

Biraz ufkumuzu açmaya yardım eder misiniz rica etsem?
 

 

ÖNCE "İYİ,DOĞRU,GÜZEL BİR İNSAN" OLMAK (VEFA,TEVAZZU,NAİFLİK,SAYGI,...) GEREK!
Sonra wm oluruz.
wmaraci
wmaraci

darkcoder darkcoder WM Aracı Kullanıcı
  • Üyelik 05.10.2020
  • Yaş/Cinsiyet 30 / E
  • Meslek Yazılım
  • Konum İstanbul Anadolu
  • Ad Soyad H** Y**
  • Mesajlar 161
  • Beğeniler 2 / 54
  • Ticaret 3, (%100)
Düzenledim. Bu kodu deneyebilir misiniz?


$id="Veritabanındaki satır idsi";
$dolu=0;
$bos=0;
$sor=$db->prepare("SELECT *FROM tablo_adi WHERE id=?");
$sor->execute(array("$id"));
$diz=$sor->fetch(PDO:: FETCH_ASSOC);
for ($i=1; $i <51 ; $i++) {
if($diz["product$i"]!=""){
$dolu++;
}else{
$bos++;
}
}

echo "Dolu sutun sayısı $dolu, Boş sutun sayısı $bos";
?>


BEYAZMASTER

kişi bu mesajı beğendi.

BEYAZMASTER BEYAZMASTER YÜCE ALLAH'IN aciz 1 kulu Kullanıcı
  • Üyelik 04.02.2020
  • Yaş/Cinsiyet 43 / E
  • Meslek Yazılım...
  • Konum Diğer
  • Ad Soyad O** B**
  • Mesajlar 597
  • Beğeniler 154 / 153
  • Ticaret 0, (%0)
darkcoder Üstadım ilk paylaştığınız kodu denedim uzun süre ===> satırları 0 ve 1 (yanlış) olarak çıkardı.

Tam bunu belirtmek için geribildirim yapacaktım editlediğiniz hali gördüm, onu denedim syntax hatası verdi.
$i+ + ==> $i++ yapınca hata ortadan kalktı.

Süper çalışan ve çok minimal bir kod.
Çok şaşırtıcı...
Php yi gittikçe seviyorum ve içimden siz php üstadlarına "Helal olsun" diyorum...

Zihninize, elinize sağlık.
Şu an bu kodu kullanmamı gerektiren bir durum yok ama mantığı yol gösterici olacak her daim...

ÇOK ÇOK TEŞEKKÜR EDİYORUM...
 

 

ÖNCE "İYİ,DOĞRU,GÜZEL BİR İNSAN" OLMAK (VEFA,TEVAZZU,NAİFLİK,SAYGI,...) GEREK!
Sonra wm oluruz.

darkcoder darkcoder WM Aracı Kullanıcı
  • Üyelik 05.10.2020
  • Yaş/Cinsiyet 30 / E
  • Meslek Yazılım
  • Konum İstanbul Anadolu
  • Ad Soyad H** Y**
  • Mesajlar 161
  • Beğeniler 2 / 54
  • Ticaret 3, (%100)
$i+ + olayı gözümden kaçmış :) Kod üzerinde değişikliği bende yaptım.
İyi çalışmalar
 

 

BEYAZMASTER BEYAZMASTER YÜCE ALLAH'IN aciz 1 kulu Kullanıcı
  • Üyelik 04.02.2020
  • Yaş/Cinsiyet 43 / E
  • Meslek Yazılım...
  • Konum Diğer
  • Ad Soyad O** B**
  • Mesajlar 597
  • Beğeniler 154 / 153
  • Ticaret 0, (%0)

darkcoder
Muhakkak üstadım, zaten minicik birşey.
Ben kodu kullanmak isteyenler olursa, takılmasınlar ve onlara ipucu olsun diye paylaştım.

Tekraren emeğinize sağlık, tekrar teşekkürler ve iyi çalışmalar...

Mesaj 1 defa düzenlendi. Son düzenleyen: BEYAZMASTER (22.03.2023 16:04)

 

 

ÖNCE "İYİ,DOĞRU,GÜZEL BİR İNSAN" OLMAK (VEFA,TEVAZZU,NAİFLİK,SAYGI,...) GEREK!
Sonra wm oluruz.
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al