Herkese merhabalar,
Elimdeki verileri for döngüsü içinde sayfada listeliyorum.
For döngüsünden çıkmadan bu verileri veritabanına da kaydetmek istiyorum.
Eğer veritabanında aynı kişiye ait bir veri varsa mevcut verinin güncellenen değerlerini düzenlemek eğer veritabanında o kişiye ait daha önceden veri yoksa da veritabanına yazdırmak istiyorum.
İlgili işlemle ilgili kodları yazdım, aşağıda görebilirsiniz.
While ile sorgu gerçekleştirip varsa düzenle yoksa yaz dediğimde işlem yapmıyor.
While döngüsünü silip yaz dediğimde yazıyor; ya damevcut değerler varsa sadece düzenle dediğimde düzenliyor. Nerede hata yaptığımı anlayamadım yardımcı olursanız sevinirim. Saygılar
for($i = 0; $i < count($atclist); $i++)
{
$atcLogin=$atclist[$i][37];
$atcID=$atclist[$i][1];
$atcName=$atclist[$i][2];
if (substr($atclist[$i][0],-4,4) == "ATIS" || substr($atclist[$i][0],-3,3) == "OBS") continue;
$tabloAdi="".date('Y').strtolower(date('F'));
$tabloYap="CREATE TABLE IF NOT EXISTS $tabloAdi (`onlineid` int(11) NOT NULL AUTO_INCREMENT,`onlinevatsimid` int(11) NOT NULL,`onlinename` varchar(50) NOT NULL,`onlinetime` int(11) NOT NULL,`onlinelogin` varchar(14) NOT NULL,PRIMARY KEY (`onlineid`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1";
if (date('j')=="1") mysql_query($tabloYap);
$tabloYaz="insert into $tabloAdi (onlinevatsimid,onlinename,onlinetime,onlinelogin) values ('$atcID','$atcName','$atcOnline','$atcLogin')";
$tabloDuzenle="update $tabloAdi set onlinetime='$atcOnline' where onlinevatsimid='$atcID' and onlinelogin='$atcLogin'";
$kontrol=mysql_query("SELECT * FROM $tabloAdi ORDER BY onlineid");
while ($atcKontrol=mysql_fetch_array($kontrol))
{
if ($atcKontrol[onlinevatsimid]==$atcID && $atcKontrol[onlinelogin]==$atcLogin) mysql_query($tabloDuzenle);
else mysql_query($tabloYaz);
}
Not: güvenlik sebebiyle veritabanı bağlantı satırı silinmiştir.