Formdan veriyi gönderiyorum, adını değiştiriyorum ve yeni adı bir değişkene atıyorum.
çalışan php kodlarım:
require_once 'excel/reader.php';
$Dturu=array("application/vnd.ms-excel","application/vnd.ms-excel");
$Duzanti=array("xls","xlsx");
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/";
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))
{
//Eğer Yükleme İşlemi başarılı ise olanlar
$data = new Spreadsheet_Excel_Reader();
$data->setOutputEncoding('ISO-8859-9');
$data->read($yeniAd);
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,$st,$row);
}
//SQL BAĞLANTI
function mysql_conn(){
$username = "xxx";
$password = "xxx";
$database = "xxx";
$hostname = "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;
}
//db ye giriş
function veriekle($st1,$st2,$st3,$st4,$row){
$query = "INSERT INTO TeSt (
`ID` ,
`1` ,
`2` ,
`3` ,
`4`
)
VALUES (
NULL , '$st1', '$st2', '$st3', '$st4'
);";
mysql_query($query,mysql_conn()) or print(mysql_error())."Satir : $row \n";
if($row == $data->sheets[0]['numRows'])
mysql_close(mysql_conn());
}
}
else
{
echo "Dosya yükleme işlemi başarısız oldu";
}
}
}
else
{
echo "Lütfen bir Dosya Seçiniz...";
}
}
?>şeklinde
Deprecated: Assigning the return value of new by reference is deprecated in /home/www/fotografdeposu.com/excel/reader.php on line 504
The filename a67a4442a8b07a6bd06042b369b2f968531.xls is not readable
böyle bir hata alıyorum ama neden alıyorum anlamadım.
yüklenen dosyayı sunucudan indirdiğimde excelde açılıyor. hazırladığım excel dosyası 2007 uyumlu xls
çıkamadım işin içerisinden