Selamunaleyküm arkadaşlar. Php ile Excel dosyasını okutup veritabanına eklemek istiyordum. Yerel makinede sıkıntı yok kullandığım Excel sınıfı çalışıyor lakin hosta atınca aşağıdaki gibi hata veriyordu.

Bu hatanın nedeni 64 bit sistemlerden kaynaklanıyor. Çözümü için aşağıdaki yöntemi yapmanız gerekmektedir.
ÇÖZÜM:
Öncelikle oleread.inc dosyasını bir metin düzenleyici ile açınız.
Belirtilen satıra gidiniz orada function GetInt4d($data, $pos) { ... } sınıfını bulalım ve içini aşağıdaki kodla değiştirelim.
function GetInt4d($data, $pos) {
// x64
if (PHP_INT_SIZE == 8) {
$_or_24 = ord($data[$pos+3]);
if ($_or_24>=128)
$_ord_24 = -abs((256-$_or_24) << 24);
else
$_ord_24 = ($_or_24&127) << 24;
return ord($data[$pos]) | (ord($data[$pos+1]) << 8) | (ord($data[$pos+2]) << 16) | $_ord_24;
}
else {
// x86
return ord($data[$pos]) | (ord($data[$pos+1]) << 8) | (ord($data[$pos+2]) << 16) | (ord($data[$pos+3]) << 24);
}
}
Kaydedip hosttaki dosyayı değiştirelim.
Hepsi bu kadar. Allah'a emanet olunuz...
Mustafa KARSLI