Bu arada bunu geliştirmek de gerekiyor. Mesela ben sadece dosyanın boyutunu ve uzantısını kontrol ettiriyorum. Bu konuda geliştirme yapmak isteyen varsa ve paylaşırsa güzel olur

Aynı şekilde
Deprecated: Assigning the return value of new by reference is deprecated in
hatasını ben hatayı göstertmemekle buldum ama daha doğru bir çözümü olan varsa geliştirmeye yardımcı olur.
Keyifli kullanımlar dilerim
<?php
// Hata göstermesini engelliyorum
error_reporting(E_ALL);
ini_set("display_errors", false);
ini_set("display_startup_errors", false);
ini_set("html_errors", false);
// Classı çağırıyorum
require_once 'excel/reader.php';
// Yüklenecek dosyayı belirliyoruz ve yeni isim veriyoruz
$Dturu=array("application/vnd.ms-excel");
$Duzanti=array("xls");
if(isset($_POST['gonder']))
{
$kaynak =$_FILES['excel']['tmp_name'];
$excel =$_FILES['excel']['name'];
$boyut =$_FILES['excel']['size'];
$turu =$_FILES['excel']['type'];
$uzanti =substr($excel,strpos($excel,'.')+1);
$yeniAd =substr(uniqid(md5(rand())),0,35).'.'.$uzanti;
$hedef ="dosyalar/"; //farklı bir klasöre yüklemek herzaman iyidir.
// Kontrol mekanizmaları iş başında
if($kaynak)
{
if(!in_array($turu,$Dturu) && !in_array($uzanti,$Duzanti))
{
echo "Lütfen Bir Excel Dosyası Seçiniz";
}
else if($boyut>1024*1024*1024)
{
echo "Dosyanızın Boyutu 1MB yüksek Olmamalı";
}
else
{
if(move_uploaded_file($kaynak,$hedef.$yeniAd))
{
// Kontrolü geçebildiysek gümbürtü kopmaya başlıyor //
$data = new Spreadsheet_Excel_Reader(); //classımızı oluşturuyoruz.
$data->setOutputEncoding('ISO-8859-9');
$data->read("dosyalar/".$yeniAd); //Okunacak dosyamızı tanımlıyoruz.
//SQL BAĞLANTI
function mysql_conn(){
$username = "oguzhan_test";//"root";
$password = "123456";
$database = "oguzhan_test";
$hostname = "localhost"; //"localhost";
$db = mysql_connect($hostname,$username,$password) or die ("MYSQL BAĞLANTI HATASI");
mysql_select_db($database,$db) or die("MYSQL VERİTABANI HATASI");
return $db;
}
// Veri Ekleme fonksiyonu
function veriekle($st1,$st2,$st3,$st4,$row){
//ID otomatik artacağı için null diyo
$query = "INSERT INTO TeSt (
`ID` ,
`1` ,
`2` ,
`3` ,
`4`
)
VALUES (
NULL , '$st1', '$st2', '$st3', '$st4'
);";
//verileri ekle eğer hata olursa satır numarasını belirterek ekrana yazdır.
mysql_query($query,mysql_conn()) or print(mysql_error())."Satir : $row \n";
}
for ($row = 2; $row <= $data->sheets[0]['numRows']; $row++)
{
$st1 = mb_convert_encoding( $data->sheets[0]['cells'][$row][1],"UTF-8","ISO-8859-9");
$st2 = mb_convert_encoding( $data->sheets[0]['cells'][$row][2],"UTF-8","ISO-8859-9");
$st3 = mb_convert_encoding( $data->sheets[0]['cells'][$row][3],"UTF-8","ISO-8859-9");
$st4 = mb_convert_encoding( $data->sheets[0]['cells'][$row][4],"UTF-8","ISO-8859-9");
veriekle($st1,$st2,$st3,$st4,$row);
echo "...".($row-1)." eklendi<br>";
}
echo "bitti gitti geçmiş olsun";
}
else
{
echo "Dosya yükleme işlemi başarısız oldu";
}
}
}
else
{
echo "Lütfen bir Dosya Seçiniz...";
}
}
?>