Welcome, Guest. Please login or register.
Did you miss your activation email?
July 09, 2008, 09:13:09 am
42750 Posts in 8091 Topics by 17932 Members
Latest Member: codder
Turk-Php.Com Forum  |  Yardım Forumları  |  Veritabanı Yardım Forumu  |  Bir dizideki sözleri toplu olarak php ile MySQL'e nasıl aktarırım? « previous next »
Pages: [1] Print
Author Topic: Bir dizideki sözleri toplu olarak php ile MySQL'e nasıl aktarırım?  (Read 138 times)
sakincan
Yeni Kullanıcılar
*
Offline Offline

Posts: 6


View Profile
Bir dizideki sözleri toplu olarak php ile MySQL'e nasıl aktarırım?
« on: May 13, 2008, 03:52:01 am »

Merhaba,
Ben php öğrenmeye çalışıyorum. Elimde atasözleri var, binlerce. Bunları php'de bir dizi tanımlayıp o dizi aracılığıyla veritabanı hiç kullanmadan rastgele ekranda gösterebiliyorum. Hatta dosya kullanarak belli zamanlar içinde sadece o sözün gösterilmesini sağlayabiliyorum.
Bu sözleri, php kullanarak bir döngü içinde MySQL'e aktarmak istedim. Sözlerin tamamını bir türlü aktaramadım. Nerde hata yaptığımı bulamadım. Hatamı bulabilmek için;

Code:
if(!$sorgu){ print "Hatalı sorgu: ".mysql_errno()." <b><i>".mysql_error()."</i></b>";}


şeklinde bir kontrol yaparak hatanın nerede olduğunu çözmeye çalıştım.
Bu kontrolden bazı sözlerde "-Söz 250 karakter.Hatalı sorgu: 1406 Data too long for column 'soz' at row 1" hatası aldım.
Halbuki alanı çok uzun tuttum bu hatanın olduğu bazı sözlerden daha uzunlarının kaydedildiğini gözlemledim. Burada hatam nedir?

Bir başka durumu da sözlerin içinde kesme (apostrof) " ' " (tek tırnaklı) işaretinin olduğu yerlerde gördüm orada da

Söz ile birlikte yazıyorum. Aşağıdaki sonuç php ile ekranda gösterttiğim sonuçtur.

"26. Bir başka çağdan kalma adetlerinizde, alışkanlıklarınızda direnirseniz, cüzzamlılar, paryalar gibi tek başınıza kala kalırsınız. Benliğinize bağlı kalın ama, gelişmiş uluslar için gerekli olan şeyleri Batı 'dan almasını bilin. Yoksa, bilim ve yeni düşünceler sizi bir lokmada yiyip bitirebilirler.
-Söz 298 karakter.Hatalı sorgu: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'dan almasını bilin. Yoksa, bilim ve yeni düşünceler sizi bir lokmada yiyip bitir' at line 1
"

Burada da kesme işaretinin bulunduğu noktada hata veriyor. Bu hatayı engellemek için "\" karakterini kesme işaretinden önce kullandım. Bu hata çıkmaz oldu. Ama bu durumda da ekrana "\" işareti çıkıyor. Hata verilen bu söz veritabanına kaydeilmediği için orda nasıl olur bilmiyorum.

Aşağıda sözlerin 50 adetinin olduğu (fazla yer kaplamasın diye, zaten 50 sözde de aynı hataları veriyor.) kodlar var. Yardımlarınızı bekliyorum.

Code:
<?php

$AtaturkSozu
[1]="Adalet gücü bağımsız olmayan bir milletin, devlet halinde varlığı kabul olunamaz.";
$AtaturkSozu[2]="Anaların bugünkü evlatlarına vereceği terbiye eski devirlerdeki gibi basit değildir. Bugünün anaları için gerekli vasıfları taşıyan evlat yetiştirmek, evlatlarını bugünkü hayat için faal bir uzuv haline koymak pek çok yüksek vasıflar taşımalarına bağlıdır. Onun için kadınlarımız, hattâ erkeklerimizden çok aydın, daha çok feyizli, daha fazla bilgili olmaya mecburdurlar; eğer hakikaten milletin anası olmak istiyorlarsa.";
$AtaturkSozu[3]="Arkadaşlar, efendiler ve ey millet, iyi biliniz ki, Türkiye Cumhuriyeti şeyhler, dervişler, müritler, meczuplar memleketi olamaz. En doğru, en hakiki tarikat, medeniyet tarikatıdır.";
$AtaturkSozu[4]="Asıl uğraşmaya mecbur olduğumuz şey, yüksek kültürde ve fazilette dünya birinciliğini tutmaktır.";
$AtaturkSozu[5]="Asla şüphem yoktur ki, Türklüğün unutulmuş büyük medeni özelliği ve büyük medeni kabiliyeti bundan sonraki gelişmesi ile geleceğin yüksek medeniyet ufkunda yeni bir güneş gibi doğacaktır. ";
$AtaturkSozu[6]="Bağımsızlık, uğruna ölmesini bilen toplumların hakkıdır.";
$AtaturkSozu[7]="Bağımsızlıktan yoksun bir ulus, uygar insanlık karşısında uşak olmaktan kurtulamaz.";
$AtaturkSozu[8]="Basın milletin müşterek sesidir. Başlı başına bir kuvvet, bir okul, bir öncüdür.";
$AtaturkSozu[9]="Basın, ulusun ortak sesidir. Bir güç, bir okul, bir yol göstericidir. ";
$AtaturkSozu[10]="Ben diktatör değilim. Benim kuvvetim olduğunu söylüyorlar. Evet bu doğrudur. Benim isteyip de yapamayacağım bir şey yoktur. Çünkü ben zoraki ve insafsızca hareket etmesini bilmem. Ben kalpleri kırarak değil kazanarak hükmetmek isterim. ";
$AtaturkSozu[11]="Ben düşündüklerimi, sevdiklerime olduğu gibi söylerim. Aynı zamanda lüzumlu olmayan bir sözü kalbimde taşımak iktidarında olmayan bir adamım. Çünkü ben bir halk adamıyım. Ben düşündüklerimi daima halkın huzurunda söylemeliyim. Yanlışım varsa, halk beni tekzip eder. Fakat şimdiye kadar bu açık konuşmada halkın beni tekzip ettiğini görmedim. ";
$AtaturkSozu[12]="Ben icap ettiği zaman en büyük hediyem olmak üzere, Türk Milletine canımı vereceğim. ";
$AtaturkSozu[13]="Ben sporcunun çevik ve namuslusunu severim. Spor, ahlaktır.";
$AtaturkSozu[14]="Ben toprak büyütme meraklısı değilim. Barış bozma alışkanlığım yoktur. Ancak sözleşmeye dayanan hakkimizin isteğicisiyim. Onu almazsam edemem. Büyük meclisin kürsüsünden milletime söz verdim. Hatay\'ı alacağım. Milletim benim dediğime inanır. Sözümü yerine getirmezsem milletimin huzuruna çıkamam. Yerimde kalamam. Ben şimdiye kadar yenilmedim, Yenilmem. Yenilirsem bir dakika yaşayamam. ";
$AtaturkSozu[15]="Ben Türk gençliğinin spor yaparak güçlü olmasını isterim.";
$AtaturkSozu[16]="Ben yaşayabilmek için, kesin olarak bağımsız bir ulusun evladı kalmalıyım. Bu yüzden ulusal bağımsızlık bence bir hayat sorunudur.";
$AtaturkSozu[17]="Beni görmek demek mutlaka yüzümü görmek demek değildir. Benim fikirlerimi, benim duygularımı anlıyorsanız ve hissediyorsanız bu yeterlidir.";
$AtaturkSozu[18]="Benim hayatta yegane fahrim, servetim Türklükten başka bir şey değildir.";
$AtaturkSozu[19]="Benim için ordumuzun kıymetini ifadede ölçü şudur: Türk ordusunun bir kıtası muadilinin behemehal mağlup eder, iki mislini durdurur ve tesbit eder. ";
$AtaturkSozu[20]="Benim naçiz vücudum elbet bir gün toprak olacaktır, ancak Türkiye Cumhuriyeti ilelebet payidar kalacaktır.";
$AtaturkSozu[21]="Benim Türk Milletine, Türk Cumhuriyetine ve Türklüğün istikbaline ait görevlerim bitmemiştir. Sizler, onları tamamlayacaksınız. Siz de sizden sonrakilere benim sözümü tekrar ediniz. ";
$AtaturkSozu[22]="Bilelim ki, milli benliğini bilmeyen milletler, başka milletlere yem olurlar.";
$AtaturkSozu[23]="Bilim ve fen nerede ise oradan alacağız ve ulusun her bireyinin kafasına koyacağız.";
$AtaturkSozu[24]="Bilim, gerçeği bilmektir.";
$AtaturkSozu[25]="Bir adam ki büyük olmaktan bahseder, benim hoşuma gitmez. Bir adam ki memleketi kurtarmak için evvela büyük olmak lazımdır, der ve bunun için mumune intihap eder, onun için olmayınca, memleketin kurtulamayacağı kanaatinde bulunur; bu, adam değildir. ";
$AtaturkSozu[26]="Bir başka çağdan kalma adetlerinizde, alışkanlıklarınızda direnirseniz, cüzzamlılar, paryalar gibi tek başınıza kala kalırsınız. Benliğinize bağlı kalın ama, gelişmiş uluslar için gerekli olan şeyleri Batı 'dan almasını bilin. Yoksa, bilim ve yeni düşünceler sizi bir lokmada yiyip bitirebilirler. ";
$AtaturkSozu[27]="Bir dinin tabiî olması için akla, fenne, ilme ve mantığa uygun olması lazımdır. ";
$AtaturkSozu[28]="Bir kere memlekette topraksız köylü bırakmamalıdır. Bir çiftçi ailesini geçindirebilen toprağın hiç bir sebep ve suretle bölünemez bir mahiyet alması, büyük çiftçi ve çiftlik sahiplerinin işletebilecekleri arazi genişliği arazinin bulunduğu memleket bölgelerinin nüfus yoğunluğuna ve toprak verim derecesine göre sınırlanması gerekir. ";
$AtaturkSozu[29]="Bir memleketin, bir memleket halkının düşmandan zarar görmesi acıdır. Fakat kendi ırkından büyük tanıdığı insanlardan vefasızlık, felaket görmesi daha acıdır. ";
$AtaturkSozu[30]="Bir millet eğitim ordusuna sahip olmadıkça, savaş meydanlarında ne kadar parlak zaferler elde ederse etsin, o zaferlerin kalıcı sonuçlar vermesi ancak eğitim ordusuyla mümkündür.";
$AtaturkSozu[31]="Bir millet ki resim yapmaz, bir millet ki heykel yapmaz, bir millet ki tekniğin gerektirdiği şeyleri yapmaz, itiraf etmeli ki o milletin ilerleme yolunda yeri yoktur. ";
$AtaturkSozu[32]="Bir millet sanattan ve sanatkardan mahrumsa, tam bir hayata sahip olamaz.";
$AtaturkSozu[33]="Bir millet, savaş meydanlarında ne kadar parlak zaferler elde ederse etsin, o zaferlerin yaşayacak sonuçlar vermesi ancak irfan ordusuyla kaimdir.";
$AtaturkSozu[34]="Bir millet, zenginliğiyle değil, ahlak değeriyle ölçülür.";
$AtaturkSozu[35]="Bir millete hizmet eden onun efendisi olur.";
$AtaturkSozu[36]="Bir milletin ahlak değeri, o milletin yükselmesini sağlar.";
$AtaturkSozu[37]="Bir milletin başarısı, mutlaka bütün milli güçlerin bir istikamette oluşmasıyla mümkündür. Bu nedenle bilelim ki, elde ettiğimiz başarı, milletin güç birliği etmesinden, ortak hareket etmesinden ileri gelmiştir. Eğer aynı başarı ve zaferleri gelecekte de tekrarlamak istiyorsak, ayni esasa dayanalım ve aynı şekilde yürüyelim.";
$AtaturkSozu[38]="Bir milletin kültür düzeyi üç safhada; devlet, düşünce ve ekonomideki çalışma ve başarılarının özüyle ölçülür.";
$AtaturkSozu[39]="Bir milletin sanat yeteneği güzel sanatlara verdiği değerle ölçülür.";
$AtaturkSozu[40]="Bir milletin yenileşmesinde ölçü, musikide değişikliği alabil mesi, kavrayabilmesidir.";
$AtaturkSozu[41]="Bir millette, özellikle bir milletin iş başında bulunan yöneticilerinde özel istek ve çıkar duygusu, vatanın yüce görevlerinin gerektirdiği duygulardan üstün olursa, memleketin yıkılıp kaybolması kaçınılmaz bir sondur.";
$AtaturkSozu[42]="Bir takım şeyhlerin, dedelerin, seyyitlerin, çelebilerin, babaların, emirlerin arkasından sürüklenen ve falcılara, büyücülere, üfürükçülere, muskacılara talih ve hayatlarını emanet eden insanlardan mürekkep bir kütleye, medeni bir bir millet nazariyle bakılabilir mi? ";
$AtaturkSozu[43]="Bir ulus, bir toplum yalnız bir kişinin çabası ile adımcık bile atamaz. ";
$AtaturkSozu[44]="Bir ulus, sımsıkı birbirine bağlı olmayı bildikçe yeryüzünde onu dağıtabilecek bir güç düşünülemez.";
$AtaturkSozu[45]="Birlik ve beraberlik; ölümden başka her şeyi yener.";
$AtaturkSozu[46]="Birtakım kuş beyinli kimselere kendinizi beğendirmek hevesine düşmeyiniz; bunun hiçbir kıymeti ve önemi yoktur.";
$AtaturkSozu[47]="Biz barış istiyoruz dediğimiz zaman tam bağımsızlık dediğimizi herkesin anlaması gerekir. ";
$AtaturkSozu[48]="Biz büyük bir inkılap yaptık. Memleketi bir çağdan alıp yeni bir çağa götürdük.";
$AtaturkSozu[49]="Biz cahil dediğimiz zaman, mektepte okumamış olanları kastetmiyoruz. Kastettiğimiz ilim, hakikati bilmektir. Yoksa okumuş olanlardan en büyük cahiller çıktığı gibi, hiç okumak bilmeyenlerden de hakikati gören gerçek alimler çıkabilir.";
$AtaturkSozu[50]="Biz doğrudan doğruya millet severiz ve Türk milliyetçisiyiz. Cumhuriyetimizin dayanağı Türk topluluğudur. ";

$sayi count($AtaturkSozu);
$veriyolu mysql_connect("localhost","root","toor");
$vt "atasozu";


if(!
mysql_select_db($vt,$veriyolu)){
mysql_query("create database atasozu;");
mysql_select_db($vt,$veriyolu);
}
else{
mysql_select_db($vt,$veriyolu);
}

$tabloolustur mysql_query("CREATE TABLE ataturk(no int(5) NOT NULL AUTO_INCREMENT, soz varchar(2000), aciklama varchar(100), PRIMARY KEY (no));");
if(!
$tabloolustur){
print "hata var";
}


print 
$sayi."<br>";
for(
$kontrolsayisi 1$kontrolsayisi <= $sayi$kontrolsayisi++){
$sorgu mysql_query("INSERT INTO ataturk(no, soz, aciklama ) VALUES(null, '$AtaturkSozu[$kontrolsayisi]', '')");
print $kontrolsayisi.". "$AtaturkSozu[$kontrolsayisi]."<br>-Söz ".strlen($AtaturkSozu[$kontrolsayisi])." karakter.";
if(!$sorgu){ print "Hatalı sorgu: ".mysql_errno()." <b><i>".mysql_error()."</i></b>";}
print "<br><br>";
}

mysql_close($veriyolu);


?>

« Last Edit: May 13, 2008, 03:54:22 am by sakincan » Logged
Pages: [1] Print 
« previous next »
Jump to: