abim excelde bulunan bilgileri mysql atmak için nasıl bir yol izlemeliyiz....
şöyle mesela bizde optik okuyucu var... onda okuttugumuz bilgileri.. internete koyup.. (mesela deneme sonuçlarını) öğrencilerin öğrenmelerini istiyorumm... bunun için ne yapmam lazım...
asıl istediğim optik okuyucudan mysql'e atmak.. ama o iş biraz zor gibi geldiğinden. .
excel den bilgileri mysqle nasıl atcaz.... benim aklımda olan...
bir tane gözat olcak... ordan excel dosyasını gözattan alcaz... alınca excelin sutunları ve satırları çıkcak... ordan her sutunu birtane mysql alanına eşliycez ve kaydedecek.. bilgigileri bu nasıl olcak.. bunu bir nebze phpmyadminde yapabiliyorz.. ama bu biraz profosyonel iş oldugu iöçin sıradan biri yapamaz bana kullanışlı bir php lazım...
optik okuyucudan direk mysqle atamazsın, onun icin, optik okuyucunun kendu okuma programını kullanarak, önce excel ya da csv formatına döndürmen lazım..
excel sart degil, ama csv lazım..
excel de olsa zaten, önce csv formatında kaydetmen gerekiyor,
csv yaptıktan sonra iki yöntem var,
1- phpmyadminden (versiyon 2.8 ve sonrası) import etmek, bu kolay direk ordan yeri var...
bunu yapmak icin, csv dosyasini, senin bilgilerine gore, alan isimlerini yazmak lazım, ad, soyad gibi,,
2- csv den import edecek programi, php ile kendin yazmak,
bu da asırı zor sayılmaz ama kolay da degil, soyleki,
programin, once dosyadan satir satir okuyacak, bu kolu, file() fonksiyonu ile okuyabilirsin, sonra her satirini, implode/ explode komutlari ile alanlarina ayiracaksin,
sonra da bu alanlari, mysqle kaydedeceksin... yaparsin sanirim...
evet abi ben programını yazdım... ama bi sorun var...
yatıgım su..
gözat yapıyorum... excelde csv olarak kaydedilmiş dosyayı alıyorumm... gönderdiğince exceli aynen texbox kutularına atıyor.. bunda sonrası ise databaseye kaydettmek..ama bir döngü kuramadım... name= kısmına nasıl bir değişken kurmam lazım.. kodlar şöle
Warning: fopen(): Unable to access C:\\Documents and Settings\\KITMIR\\Desktop\\Kitap1.csv in /home/ercanyektas/public_html/ercanekle.php on line 4
Warning: fopen(C:\\Documents and Settings\\KITMIR\\Desktop\\Kitap1.csv): failed to open stream: No such file or directory in /home/ercanyektas/public_html/ercanekle.php on line 4
internette, yazdığın program ordaki makinede calısıyor. orda da c:\ diye biyer yok... ondan dosyayı alamıyor...
orda calısması icin, dosyayı upload eden kod yazman lazım. dosyayı senin bilgisayardan almalı, internette kendine yazmalı...
dosya upload konularına bak..
bir de, sen, dosyayı okuduktan sonra, niye textbox icine yazıyorsun, yani niye forma yazıyorsun ?
direk dbye eklesene...
while (!feof($baglan)){
$satir=fgetcsv($baglan,filesize($dosya),";");
while (isset($satir[$k])){
// buraya sadece, satırı alanlarına ayrıstırıp dbye ekleyen kod yazılcak... böylece, programı cagırınca, tek seferde ekler dbye... öbür türlü.. her seferinde form cıkar, sen eklersin elle...
$k++;
}
diretk yazdırmamamın nedeni ön izleme olması bakımından... csv den alan bilgileri... textboxlara atıyorum.. orda önizleme bakıyo eğer yanlış bir kısım varsa düzenlemesi için... textboxta olunca kendi düzenler... orda sonununda kayit var.. kayit der sonuc biter... dosya upload bakamda.. normalde benim local hosta çalışıyor.. orda c ver... internete attıgımda... sonuçta benim c den atıyor değil mi?
csv yi mysql e atıyorum. türkçe karakter problemi var.
php kodlamam uft8
veri tabanı utf8
eğer csv yi uft8 yaparsam sıkıntı olumuyor.
. ama excelde bir dosyayı csv kaydet diyince. atmıyor. o csv yi sağ tık yapıp utf8 e çevir diyip. ondan sonra import etmek gerekiyor. buda basit kullanıcılar için zor bişi. yani adam excelden csv yapacak at. diyecek iş bitetcek.
php de bir dosyayı utf8 yapmak gibi bir kod varmı yardım ederseniz sevinirim
"php de bir dosyayı utf8 yapmak gibi bir kod varmı yardım ederseniz sevinirim"
Böyle bir kod var mı bilmilyorum,
Ama, excel csv yi csv olarak kaydedince, zaten utf8 olmalı. zaten text olarak kaydeder.
sen de bu dosyayı direk okuyabilmen lazım php ile.
denemeler yapmak lazım