phpden sonra mysql işine girdim ancak basit bir yerde takıldım. şimdi 3 tane değişken var .1.si 1 den başlayarak her yenilemede 1 artacak sonsuza kadar, 2. si 1 den başlayıp 5 e kadar gelince tekrar 1 olacak 3. ise 1 den başlayacak ve 2. değişken her 5 olmasında 1 artacak.
zor mu? beni aştı da.
php mysql veri yazma sorunu
9
●1.068
- 06-09-2010, 03:53:05performans çok da önemli değil.Hkan adlı üyeden alıntı: mesajı görüntüle
istediğim çok zor bişey olmasa gerek. öncelikle değişkenler a, b, c olsun. php sayfalarında olması gereken
a, 1 başlayıp 1er 1er artacak den artacak (1.php de 1, 2.phpde 2 şeklinde)
b 1den başlayıp 5 e sayacak 5ten sonra tekrar 1 olacak sanırım for ile çok basit olur bunu yapmak,
c ise b ye bağlı olarak b nin her 5 olmasında 1 artacak.bunları da mysql yazacak bir kod lazım: - 06-09-2010, 05:25:21
$q = mysql_query("SELECT `a`, `b` FROM `tablo` ORDER BY `a` DESC LIMIT 0,1") or die(mysql_error()); $row = mysql_fetch_assoc($q); foreach($row as $k => v) { $$k = $v; } $a = !empty($a) ? $a : 1; // Boşsa 1 olsun $b = !empty($b) ? $b : 1; // Boşsa 1 olsun $c = !empty($c) ? $c : 1; // Boşsa 1 olsun $yeni_a = $a + 1; // a'nın yeni değeri a + 1 $yeni_b = ($b < 5) ? $b + 1 : 1; // b'nin yeni değeri 5'ten küçükse b + 1, değilse 1 $yeni_c = ($b == 5) ? $c + 1 : $c; // c'nin yeni değeri b 5'ten küçükse c + 1, değilse kendisi $q = mysql_query("INSERT INTo `tablo` (`a`, `b`, `c`) VALUES ('$yeni_a', '$yeni_b', '$yeni_c')") or die(mysql_error()); - 06-09-2010, 14:15:01ilgin için teşekkür ediyorum. hemen deniyorum. +repHkan adlı üyeden alıntı: mesajı görüntüle
//edit: çalıştı. gerçekten çok teşekkür ediyorum büyük bir dertten kurtuldum..
ancak kodda bir hata var. c değeri 1 den 2 oluyor da 2 den hemen sonra geri 1 oluyor. onu da b her 5 olduğunda 1 artması lazım - 07-09-2010, 23:29:57sorun günceldir arkadaşlar.
$q = mysql_query("SELECT `a`, `b` FROM `tablo` ORDER BY `a` DESC LIMIT 0,1") or die(mysql_error()); $row = mysql_fetch_assoc($q); foreach($row as $k => v) { $$k = $v; } $a = !empty($a) ? $a : 1; // Boşsa 1 olsun $b = !empty($b) ? $b : 1; // Boşsa 1 olsun $c = !empty($c) ? $c : 1; // Boşsa 1 olsun $yeni_a = $a + 1; // a'nın yeni değeri a + 1 $yeni_b = ($b < 5) ? $b + 1 : 1; // b'nin yeni değeri 5'ten küçükse b + 1, değilse 1 $yeni_c = ($b == 5) ? $c + 1 : $c; // c'nin yeni değeri b 5'ten küçükse c + 1, değilse kendisi $q = mysql_query("INSERT INTo `tablo` (`a`, `b`, `c`) VALUES ('$yeni_a', '$yeni_b', '$yeni_c')") or die(mysql_error());kodundaki c değeri b nin her artmasında rtmıyor 1den 2 oluyor sonra tekrar 1 oluyor. bunun 1-2-3... şeklinde artması gerekiyor - 10-09-2010, 22:45:55Hkan adlı üyeden alıntı: mesajı görüntüle
yok hocam ya maalesef yine olmadı. çok ilginç.