[]

PHP For Döngüsü

Soru:

$a = mysql_fetch_array($x); (buradan tek bir sonuç geliyor. 7 ya da 8 ya da 9 gibi bişey)

$sayi = $a["sayi"];

for($deneme = $sayi; $deneme <= $sayi +1; $i++)

blablablabla


gibi bir şey yapmak istiyorum ama sonuç vermiyor. Unsupported operand types diyor.

baya baya yanlış yapıyorum galiba. Bunun yerine neyi tavsiye edersiniz?

$sayi'dan gelen sayı ve ondan 1 büyük olan sayıyla bir döngü çevirmem gerekiyor. Yani döngünüm içindeki işlemler bir $sayi'ya göre, bir de $sayi+1'e göre işleticem formülümü. Ne tavsiye edersiniz?

 
mysql_connect("localhost", "root", "parola") or die(mysql_error());
mysql_select_db("benimdb") or die(mysql_error());
$result = mysql_query("SELECT bunugetir FROM listem") or die(mysql_error());
while($row = mysql_fetch_array( $result )) {

echo $row['bunugetir'];
}
  • artisnot  (19.03.12 22:43:28 ~ 22:45:40) 
kanka benim salaklığım sanırım ama sorduğum soruyla bağ göremedim yav cevapta.

ben diyorum ki, for döngüsü gibi bir döngüde önce $a ile ardından $a+1 ile döngü içindeki formülüme işlem yaptırmak istiyorum. ancak for döngüsünde ($deneme = $sayi; $deneme <= $sayi +1; $i++) gibi bir şey yazdığımda saçmaladığımı söylüyor sistem.

bunun bir alternatifi var mı dedim ama, senin cevabını pek anlayamadım açıkçası :S benden kaynaklı sorun ona eminim de.
  • tchuck  (19.03.12 22:52:17) 
burada döngüye gerek var mı çözemedim. soruyu çözemedim genel olarak aslında :) ama
while ($degisken=mysql_feth_assoc($x)) şeklinde bir kontrol oluşturup bunun altına
$sayi=$degisken["sayi"];
$sayi2=$sayi+1;

deyip işlemleri sayi ve sayi2 değişkeni üzerinden de yapabilirsiniz. ayrıca döngünüzde döngü değişkeni olarak $deneme kullanmış olmanıza rağmen $i yi arttırıyorsunuz. içeride $deneme'yi arttırmazsanız bu sonsuz döngü olabilir. yıllardır for döngüsü kullanmadığım için karıştırıyor da olabilirim. while candır! :)
  • teletabi  (19.03.12 22:53:59) 
$i'yi neden artırıyorsunuz? $deneme olmasın o?


  • yvandal  (19.03.12 22:55:10) 
@yvandal

kanka onu şimdi elle yazdım yav. burada yazdığımda hata olmuş da, normalde öyle bir hata yok.
  • tchuck  (19.03.12 22:57:25) 
@teletabi

kanka şöyle bir durum var:

for ($i = $sayi; $i <= $sayi +1; $sayi++)

{

mysql_query(bişiler bişiler $i);

}

gibi bir şey yapcıam. o yüzden bu döngüyü kullanmaya çalışıyorum
  • tchuck  (19.03.12 22:59:13) 
"unsupported operand types" diziyi artırmaya çalışmak gibi hatalarda veriyor genelde. for'un içinde neler var? $a ile bişiler yaptınız mı?


  • yvandal  (19.03.12 23:02:11) 
demeye calistigim fetch_array in while icinde gelen sonucla istedigin gibi calisabilirsin
sen $a ile komple data arrrayini degiskene aliyorsun icinden sana ilk sonuc geliyor tabi. sakatlik orda.
bu arada tam olarak ne yapmaya calistigini anlamadim onu da itiraf edeyim.
  • artisnot  (19.03.12 23:09:39 ~ 23:11:35) 
@artisnot
zaten tek sonuç geliyormuş, orada neden sakatlık olsun ki?

  • yvandal  (19.03.12 23:11:36) 
@yvandal
arrayi explode etmiyor split etmiyor arrayla ne yapiyor anlamadim
array diyelim ki 1-2-3-4-5-6-7-8 dondursun burda sadece 1 gelecek. sakatlik bu.
$sayi = $a["sayi"]; burda arraydan strval mi cekmek istiyor int mi.
bir de arraydan bildigin bir sayiyi cekeceksen arraya ne gerek var ata $sayi = 7 gitsin.
  • artisnot  (19.03.12 23:19:11 ~ 23:21:29) 
sanırım ne yapılmak istendiğini çözdüm. eğer problemi doğru anlayabildiysem şöyle bir dizi kod işinizi görecektir diye düşünüyorum;

while($degisken=mysql_feth_array($x))
{
$sayi1=$degisken["sayi];
$sayi2=sayi1++;
$sorgu="mysql_query_sorunuz".$sayi1."boyle ekleyebilirsiniz".$sayi2;
...
...
}
buradaki sayılar da fetch_array komutundan false dönene kadar sayi1 ve sayi2 değişkenlerinizi değiştirecektir. siz de hem gelen sayı hem de gelen sayının bir fazlasi ile istediğiniz işlemleri yapabileceksiniz. yanlış anladıysam soruyu yine artık bırakıyorum ehehe
  • teletabi  (19.03.12 23:27:02) 
1
buraya yazılanların hakları Sir Anthony Hopkins'e aittir.
yazan eden compumaster, ilgilenen eden fader
modere edenler angelus, Artibir, aychovsky, baba jo, basond, compumaster, deckard, duyulmasi gerektigi kadar, fader, fraise, groove salad, kahvegibi, kaymaktutmayansicaksut, kibritsuyu, monstro, pandispanya, robin, ron dennis
bu sitede yazılanların hiçbiri doğru değildir. site içeriği küçükler için sakıncalı olabilir. yazılardan yazarları sorumludur. kaynak göstermeden alıntılanamaz. devlet tarafından atanmış bir kurumun internet üzerinde kimin hangi bilgiye ulaşıp ulaşamayacağına karar vermesi insan haklarına aykırıdır. web siteleri kullanıcıların istekleri doğrultusunda bağlandıkları yerlerdir. kullanıcılar isterlerse bir web sitesine bağlanmayabilirler. bu güçleri ve imkanları mevcuttur. bir kullanıcı bir siteye bağlanmak istiyorsa bu onun tercihi ve hakkıdır. bağlanmak istemiyorsa bu yine onun tercihi ve hakkıdır. halkın kendisine hizmet etmesi için görevlendirdiği kurumlar hadlerini aşıp halka neye ulaşıp ulaşmayacağını bilmeyen cahil cühela muamelesi edemezler. ebeveynlerin çocuklarını sakıncalı içeriklerden koruması için çok sayıda bedava ve ücretli yazılım mevcuttur. bu yazılımlar bir web tarayıcısını kullanmaktan daha karmaşık teknik bilgi gerektirmemektedir. devletin milletini küçük düşürmesi ve ebleh yerine koyması yasaktır. Skimlinks ile linkler üzerinden yönlendirme payı alınmaktadır.