Array Problemi
-
lazz bunu yazdı
eger yanlıs anlamadıysam bu sekılde ıstedıgın yapabılırsın.bir dene istersen
$query = $db->query("SELECT * FROM submenu WHERE sublink IS NOT null", PDO::FETCH_ASSOC); if ($query->rowCount()){ foreach( $query as $row ){ $deger[] = $row['sublink']; } }
echo $deger[0];
Fatal error: Uncaught Error: [] operator not supported for strings
___________________________
@Themayk hocam senin kod da bende çalışmadı
Warning: Invalid argument supplied for foreach() in C:\wamp64\www\xxx\index.php ....
Notice: Undefined offset: 0 in C:\wamp64\www\xxx\index.php on line ...
Acaba benim sorguda mı bir sıkıntı var. SQL yapısı şu şekilde :
veritabanı -> submenu -------> Burada her bir satırda menü isimleri ve linkleri ekliid -- sublink -- subname -- value
1 --- demo.php -- deneme --- 1
2 --- index.php --- ana sayfa --- 0
3 --- help.php --- destek --- 1
ben sadece sublink üzerindeki php sayfalarının isimlerini çekmek istiyorum. verdiğim kod çok güzel çekiyor.
fakat şu şekilde > demo.phpindex.phphelp.php
benim istediğim şey ise bunu bir diziye aktarıp $dizi[1]; ile index.php yi çekmek istiyorum. sorguda mı kodda mı nerede hata var bulamadım
-
myblackworldweb bunu yazdılazz bunu yazdı
eger yanlıs anlamadıysam bu sekılde ıstedıgın yapabılırsın.bir dene istersen
$query = $db->query("SELECT * FROM submenu WHERE sublink IS NOT null", PDO::FETCH_ASSOC); if ($query->rowCount()){ foreach( $query as $row ){ $deger[] = $row['sublink']; } }
echo $deger[0];
Fatal error: Uncaught Error: [] operator not supported for strings
___________________________
@Themayk hocam senin kod da bende çalışmadı
Warning: Invalid argument supplied for foreach() in C:\wamp64\www\xxx\index.php ....
Notice: Undefined offset: 0 in C:\wamp64\www\xxx\index.php on line ...
Acaba benim sorguda mı bir sıkıntı var. SQL yapısı şu şekilde :
veritabanı -> submenu -------> Burada her bir satırda menü isimleri ve linkleri ekliid -- sublink -- subname -- value
1 --- demo.php -- deneme --- 1
2 --- index.php --- ana sayfa --- 0
3 --- help.php --- destek --- 1
ben sadece sublink üzerindeki php sayfalarının isimlerini çekmek istiyorum. verdiğim kod çok güzel çekiyor.
fakat şu şekilde > demo.phpindex.phphelp.php
benim istediğim şey ise bunu bir diziye aktarıp $dizi[1]; ile index.php yi çekmek istiyorum. sorguda mı kodda mı nerede hata var bulamadım
Yazdigim gibi select ustune once dizi olusturdunuz mu ?, sonra gelen forech dongusunde diziye ekleme yapmalisin, aldigin hata tanimlanmayan dizi hatası.
Ayrica kodu tam mi yazdin bilmiyorum ama orada fazladan süslü parantez var.
TheMayk tarafından 16/Şub/20 01:10 tarihinde düzenlenmiştir -
bu tarz cekmiomu yani istediğin sıradakini cekmek istiyorsan bu sekilde cekebilirsin?
<?php try { $db=new PDO("mysql:host=localhost;dbname=***",'****','*****' ); $db->query("SET CHARACTER SET utf8"); //echo "bagla"; } catch (PDOExpception $e) {echo $e->getMessage();} $query = $db->query("SELECT * FROM submenu WHERE sublink IS NOT null", PDO::FETCH_ASSOC); if ($query->rowCount()){foreach( $query as $row ){$deger[] = $row['sublink'];}} echo $deger[4]; echo $deger[3]; echo $deger[2]; ?>
-
$db=new PDO("mysql:host=$host;dbname=$dbname",$user,$pass); $query=$db->prepare("SELECT * FROM submenu WHERE sublink IS NOT null"); $query->execute(); $sonuc=$query->fetchAll(PDO::FETCH_ASSOC); foreach($sonuc as $satir){ $deger = $satir['sublink']; print_r ($deger); }
Böyle Denermisin
-
wert bunu yazdı
$db = new PDO("mysql:host=$host;dbname=$dbname",$user,$pass); $query = $db->prepare("SELECT * FROM submenu WHERE sublink IS NOT null"); $query->execute(); $sonuc = $query->fetchAll(PDO::FETCH_ASSOC); print_r($sonuc);
echo $sonuc[0];Böyle denemelisin.
-
Üstten bakaracak cevap veriyorum :)
sorgu çalışıyor bilgi aktarıyorsa.
veriyi(değişkeni) include yaptığın sayfalarda include den önce çekiyorsun.
veya sorgudan önce veriyi çekiyorsun.
bu yazdığın kodu en üste yazıp ondan sonra kullanırmısın?
-
wert bunu yazdı
$db=new PDO("mysql:host=$host;dbname=$dbname",$user,$pass); $query=$db->prepare("SELECT * FROM submenu WHERE sublink IS NOT null"); $query->execute(); $sonuc=$query->fetchAll(PDO::FETCH_ASSOC); foreach($sonuc as $satir){ $deger = $satir['sublink']; print_r ($deger); }
Böyle Denermisin
hocam bu şekilde çekiyor..
index.phpwert.phpmyblackworldweb.phpdeneme.php
fakat spesifik olarak wert.php yazdırmasını istersem echo $deger[1]; ile yazdırabilmem lazım. fakat onu yazdırmıyor.
explode ile php yerlerinden parçalayayım diyorum. onda da hata veriyor. string değişken ile alakalı bir sorun gibi
-
end bunu yazdıwert bunu yazdı
$db = new PDO("mysql:host=$host;dbname=$dbname",$user,$pass); $query = $db->prepare("SELECT * FROM submenu WHERE sublink IS NOT null"); $query->execute(); $sonuc = $query->fetchAll(PDO::FETCH_ASSOC); print_r($sonuc);
echo $sonuc[0];Böyle denemelisin.
$db = new PDO("mysql:host=$host;dbname=$dbname",$user,$pass); $query = $db->prepare("SELECT * FROM submenu WHERE sublink IS NOT null"); $query->execute(); $sonuc = $query->fetchAll(PDO::FETCH_ASSOC); print_r($sonuc); echo $sonuc[0]["sublink"];
-
end bunu yazdıend bunu yazdıwert bunu yazdı
$db = new PDO("mysql:host=$host;dbname=$dbname",$user,$pass); $query = $db->prepare("SELECT * FROM submenu WHERE sublink IS NOT null"); $query->execute(); $sonuc = $query->fetchAll(PDO::FETCH_ASSOC); print_r($sonuc);
echo $sonuc[0];Böyle denemelisin.
$db = new PDO("mysql:host=$host;dbname=$dbname",$user,$pass); $query = $db->prepare("SELECT * FROM submenu WHERE sublink IS NOT null"); $query->execute(); $sonuc = $query->fetchAll(PDO::FETCH_ASSOC); print_r($sonuc); echo $sonuc[0]["sublink"];
Yeminle geldin nick ini koydun gitttin.
END :D:D:D
hepi topu buymuş : $sonuc[0]["sublink"];
teşekkür ederim hocam..
Destek veren herkese teşekkürler arkadaşlar.. :)
-
$db=new PDO("mysql:host=$host;dbname=$dbname",$user,$pass); $query=$db->prepare("SELECT * FROM submenu WHERE id=1 and sublink IS NOT null"); $query->execute(); $sonuc=$query->fetch(PDO::FETCH_ASSOC); print_r ($sonuc);
çağıracağın satırın idsini biliyor isen yada daha genel tabirle tek satır işlem yapacaksan yukarıdakini kullanabilirsin
$sonuc = $query->fetch(PDO::FETCH_ASSOC);
bu satırda fetchall değilde fetch fonksiyonu kullandım şöyle
kafanda şöyle kodlayabilirsin fetchall tablo çağırır fetch satır çağırır