İyinet'e Hoşgeldiniz!

Türkiye'nin En Eski Webmaster Forum'una Hemen Kayıt Olun!

Kayıt Ol!

mysqlden diziye aktarm

Php Master

0
İyinet Üyesi
Katılım
27 Haziran 2011
Mesajlar
442
Reaction score
7
Konum
Konya
selamlar mysqlden aldgm verileri bi diziye aktarmam lazm acil mobilden yazıorm k.bakmayn
 

Aydın Sistem

0
İyinet Üyesi
Katılım
29 Mayıs 2011
Mesajlar
0
Reaction score
1
Konum
Polonya
PHP Master adlı nicke göre garip bir soru olmuş, kodunuzu yazarsanız, kodunuza göre cevap vereyim.
 

RooTsGhosT

0
İyinet Üyesi
Onaylı Üye
Katılım
25 Kasım 2010
Mesajlar
98
Reaction score
0
Konum
İstedigi Yerden
Merhabalar Hocam Basit Bir Örnek Yazdım herhangibir sorunuz olursa yardımcı olmaya çalışırım

PHP:
$diziden_gelen="Hayatta;En;Zor;Şey;Özlemin;Özlemini;Çekmek";
$ayrac=";";
$diziye_aktar=explode($ayrac,$diziden_gelen);

echo $diziye_aktar[0];
 

Php Master

0
İyinet Üyesi
Katılım
27 Haziran 2011
Mesajlar
442
Reaction score
7
Konum
Konya
Hocam mysql ilan tablosndan baslik alanlarını diziye aktarmam lazm..
 

RooTsGhosT

0
İyinet Üyesi
Onaylı Üye
Katılım
25 Kasım 2010
Mesajlar
98
Reaction score
0
Konum
İstedigi Yerden
Pardon hocam mesajı tam okumadan yazmışım cevabı :)

PHP:
$sorgu = "sql";

$i=0;
while($sorgu=mysql_fetch_array($sorgu))
{
$dizi[$i]=sorgu["baslik"];
$i++;
}


Bu Kodu Bir Dene Denemeden direk kafamdan yazdım çalışmazsa tekrar yardımcı olmaya çalışırım :)
 

Php Master

0
İyinet Üyesi
Katılım
27 Haziran 2011
Mesajlar
442
Reaction score
7
Konum
Konya
Saol hocam tşk çalşır mantık lazmdı bana tşk ederm bu arada pixeler hocam google tarzı arama kutusu kodluyorm ajaxlı kafam çok karşk ondn takıldm :) hepinize tşklr
 

Aydın Sistem

0
İyinet Üyesi
Katılım
29 Mayıs 2011
Mesajlar
0
Reaction score
1
Konum
Polonya
@RootsGhosT;
Yaptığın kodlama elbette çalışır ancak kötü kodlama alışkanlığın olduğunu gördüm. Alanında uzman bir yazılımcı olmak istiyorsan öncelikle mutlaka kötü kodlama alışkanlıklarından kurtulman gerekiyor.

$dizi değişkenini (array) mutlaka döngüden önce ne tarz bir veri olduğunu tanımlamanı öneririm;

PHP:
$sorgu = "sql";

$i=0;
$dizi = array();
while($sorgu=mysql_fetch_array($sorgu))
{
$dizi[$i]=sorgu["baslik"];
$i++;
}

Ek olarak bu şekilde hazırlanacaksa, yine kötü kodlama alışkanlığına devam etmemek adına, gereksiz olacak her türlü değişken atamalarından uzak durulmalı;

PHP:
$sorgu = "sql";
$dizi = array();
while($sorgu=mysql_fetch_array($sorgu)) 
{
$dizi[]=sorgu["baslik"];
}

Kodun temizlenmiş hali olacaktır.

Elbette genel ek bilgi olarak milattan önce kalmış mysql_ fonksiyonlarının yerine en azından mysqli ya da PDO kullanılmasını öneririm.

Kodlama yaparken gereksiz yere değişken ataması yapma gibi kötü kodlama alışkanlıklarından mutlaka uzak durulmalıdır. Çok hitli, çok fonksiyonel bir site hazırlarken bu tarz ufak gözüken, kötü kodlama alışkanlıkları pahallıya mal olur.
 

Aydın Sistem

0
İyinet Üyesi
Katılım
29 Mayıs 2011
Mesajlar
0
Reaction score
1
Konum
Polonya
Kesinlikle PDO.
PDO ile ek olarak Prepared Statements ile SQL injectionlara kendi içerisine ek güvenlik önlemi alır. Bununla birlikte Named Placeholders kullanılarak query (sorgular) oldukça kolay hale getirilir. Özellikle yeni nesil kodlamalarda (OO PHP) kesinlikle PDO kullanılmasını öneririm. Named Placeholders ile aşırı kolaylık sağlar.

PDO'nun sürücüleri aşağıdaki gibidir;

PDO_DBLIB ( FreeTDS / Microsoft SQL Server / Sybase )
PDO_FIREBIRD ( Firebird/Interbase 6 )
PDO_IBM ( IBM DB2 )
PDO_INFORMIX ( IBM Informix Dynamic Server )
PDO_MYSQL ( MySQL 3.x/4.x/5.x )
PDO_OCI ( Oracle Call Interface )
PDO_ODBC ( ODBC v3 (IBM DB2, unixODBC and win32 ODBC) )
PDO_PGSQL ( PostgreSQL )
PDO_SQLITE ( SQLite 3 and SQLite 2 )
PDO_4D ( 4D )

Kısacası sadece MYSQL'e bağlanmakla kalmaz. Exception handler'ı oldukça kolay hata yönetimi sağlar.

PDO hakkında yakında Sanal Kurs'a bir ders ekleyeceğim. Burada ders gibi uzun uzun anlatmanın çok bir anlamı yok. Ders olarak eklemem en güzeli olacaktır.

mysqli'den bahsetmeye gerek bile duymuyorum PDO varken....

Not: PHP PDO MANUAL : http://php.net/manual/en/book.pdo.php (İsteyenler, PHP Manual'ın karışık olduğunu düşünenler Sanal Kurs'da ekleyeceğim PDO dersini bekleyebilir)
 

Antika

0
İyinet Üyesi
Katılım
23 Aralık 2010
Mesajlar
451
Reaction score
18
Kesinlikle PDO.
PDO ile ek olarak Prepared Statements ile SQL injectionlara kendi içerisine ek güvenlik önlemi alır. Bununla birlikte Named Placeholders kullanılarak query (sorgular) oldukça kolay hale getirilir. Özellikle yeni nesil kodlamalarda (OO PHP) kesinlikle PDO kullanılmasını öneririm. Named Placeholders ile aşırı kolaylık sağlar.

PDO'nun sürücüleri aşağıdaki gibidir;

PDO_DBLIB ( FreeTDS / Microsoft SQL Server / Sybase )
PDO_FIREBIRD ( Firebird/Interbase 6 )
PDO_IBM ( IBM DB2 )
PDO_INFORMIX ( IBM Informix Dynamic Server )
PDO_MYSQL ( MySQL 3.x/4.x/5.x )
PDO_OCI ( Oracle Call Interface )
PDO_ODBC ( ODBC v3 (IBM DB2, unixODBC and win32 ODBC) )
PDO_PGSQL ( PostgreSQL )
PDO_SQLITE ( SQLite 3 and SQLite 2 )
PDO_4D ( 4D )

Kısacası sadece MYSQL'e bağlanmakla kalmaz. Exception handler'ı oldukça kolay hata yönetimi sağlar.

PDO hakkında yakında Sanal Kurs'a bir ders ekleyeceğim. Burada ders gibi uzun uzun anlatmanın çok bir anlamı yok. Ders olarak eklemem en güzeli olacaktır.

mysqli'den bahsetmeye gerek bile duymuyorum PDO varken....

yok zaten ders niteliğinde sormadım, pdo kullanıyorum bende performans konusunda kaygılarım vardı 2 si arasında her kafadan bir ses çıkıyor çünkü, sadece fikir edinmek istedim teşekkürler
 

Aydın Sistem

0
İyinet Üyesi
Katılım
29 Mayıs 2011
Mesajlar
0
Reaction score
1
Konum
Polonya
OO kodlama yaklaşık olarak %10 - %15 arası gibi sistemi yavaşlatabilir. Ancak bunun yanında sağladığı avantajlar çok büyüktür.

Aynı şekilde PDO'nun kendi içerisinde sql injectionlara karşı koruması olması, sorguları çok daha rahat kullanma ve exception handling ile çok rahat bir şekilde hata kontrolünü sağlaması büyük avantajlarındandır.

Bu tarz avantajlar programcıya çok daha rahat bir ortam ve daha fazla fonksiyonellik kazandırır.

Bütün bunlara ek olarak kullandığı ve desteklediği sürücüler sayesinde tek bir PDO sınıfıyla birden fazla çeşitli veritabanlarına bağlantıyı kolaylaştırır.

Doğal olarak bu tarz avantajları sistemi çok daha esnek hale getirir. Özellikle fonksiyonelliği yüksek olan bir sistem hazırlanacaksa, geniş, büyük sistemlerde genellikle veritabanlarıda parçalanır. Mysql Partitioning yanında benzeri parçalamalar, veritabanı sunucuları ile site sunucusunu ayırma gibi durumlar düşünüldüğünde PDO'nun avantajları katlanarak artar.

Bağlanılan veritabanına göre syntaxının değişmemeside programcı için büyük bir avantajdır.

Hız konusunda hiç bir sorun yaşamadım. Performansı son derece iyi. Kötü kodlama alışkanlıklarından uzak durulduğu sürece performan her zaman ihtiyaca göre optimize edilebilinir.
 

RooTsGhosT

0
İyinet Üyesi
Onaylı Üye
Katılım
25 Kasım 2010
Mesajlar
98
Reaction score
0
Konum
İstedigi Yerden
@Pixeler
Hocam Benim Php Bilgimde Milattan kalma zaten 2.5 senedir tek bir satır kod yazmamıştım şu ana kadar eski bilgilerimle arkadaşa yardımcı olmak için yazmıştı bunları,ayrıca verdiğin öneriler içinde teşekkür ederim :)
 

Türkiye’nin ilk webmaster forum sitesi iyinet.com'da forum üyeleri tarafından yapılan tüm paylaşımlardan; Türk Ceza Kanunu’nun 20. Maddesinin, 5651 Sayılı Kanununun 4. maddesinin 2. fıkrasına göre, paylaşım yapan üyeler sorumludur.

Backlink ve Tanıtım Yazısı için iletişime geçmek için Skype Adresimiz: .cid.1580508955483fe5

Üst