Új hozzászólás Aktív témák
-
trisztan94
őstag
válasz
Tele von Zsinór #15275 üzenetére
Nagyon jó a post, köszönöm!
Más:
HTML5-ös ajax fájlfeltöltéssel bénázom nagyon (ez lehet inkább jQuery topikba kellene, de nagyon úgy érzem PHP oldalon van a probléma)
Tehát egy SO-n 50+ upvote-olt válasz volt, többen is írták, hogy működik..
Van ez a formom:
<form name="form-uploadXLS" id="form-uploadXLS" method="post" action="php/uploadXLS.php" enctype="multipart/form-data" >
<hr />
<div class="form-group">
<div class="col-md-12">
<input type="file" name="xls" class="xls" />
</div>
</div>
<input type="submit" value="Feltöltés" class="btn-uploadXLS" />
</form>Az lenne a lényeg, hogy csak .xls vagy .xlsx fájlt lehessen feltölteni, de az most teljesen mindegy.
Itt a jQuery kód ami lekezelné:$('#form-uploadXLS').on('submit', function (event) {
console.log("submitted");
event.preventDefault();
var formData = new FormData($('#form-uploadXLS')[0]);
$.ajax({
url: 'php/uploadXLS.php',
type: 'POST',
success: function(data) {
console.log("success");
console.log(data);
},
error: function(msg) {
console.log("error");
console.log(msg);
},
data: formData,
cache: false,
contentType: false,
processData: false
}, 'json');
});És itt a mögötte lévő PHP:
if(isset($_FILES["xls"]) && $_FILES["xls"]["error"]== UPLOAD_ERR_OK)
{
############ Edit settings ##############
$UploadDirectory = $_SERVER['SERVER_NAME'].dirname($_SERVER["REQUEST_URI"]) . '/xls/';
##########################################
/*
Note : You will run into errors or blank page if "memory_limit" or "upload_max_filesize" is set to low in "php.ini".
Open "php.ini" file, and search for "memory_limit" or "upload_max_filesize" limit
and set them adequately, also check "post_max_size".
*/
//check if this is an ajax request
if (!isset($_SERVER['HTTP_X_REQUESTED_WITH'])){
die();
}
//allowed file type Server side check
switch(strtolower($_FILES['xls']['type']))
{
//allowed file types
case 'application/vnd.ms-excel':
break;
default:
die('Nem támogatott fájlformátum!'); //output error
}
$File_Name = strtolower($_FILES['xls']['name']);
$File_Ext = substr($File_Name, strrpos($File_Name, '.')); //get file extention
$Random_Number = rand(0, 9999999999); //Random number to be added to name.
$NewFileName = $Random_Number.$File_Ext; //new file name
if(move_uploaded_file($_FILES['xls']['tmp_name'], $UploadDirectory.$NewFileName ))
{
// do other stuff
die('Sikeres feltöltés!');
}else{
die('Hiba történt a feltöltés során!');
}
}
else
{
die('wtf');
}(Ezt is SO-ról csórtam)
Na akármit csinálok, mindig a "wtf" hibaüzenetet kapom.
Elvileg a formData üres, de megint csak elvileg annak mi nem is láthatjuk a tartalmát.
HTTP 200 OK-al jön vissza a wtf hibaüzenet?
Könyvtárak helyét, nevét ellenőriztem, a php.ini-t is.
Mit nem veszek észre?
Új hozzászólás Aktív témák
- Motorola Edge 50 Neo - az egyensúly gyengesége
- iPhone topik
- Honor 400 Pro - Gép a képben
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- Nők, nőügyek (18+)
- OLED TV topic
- Formula-1
- A Temu diktál Magyarországon, a hazai e-kereskedők fulladoznak
- Háztartási gépek
- exHWSW - Értünk mindenhez IS
- További aktív témák...
- ASUS TUF gamer laptop Ryzen 7 3750H, GTX 1660 Ti, szép állapotban
- (ÁRCSÖKKENÉS) Eladó Meta Quest Pro 256GB VR szemüveg Szinte teljesen új állapotban
- Oura Ring 4 Gold, Rose Gold (8,10-es méret) ÚJ ÁRA - 235.000 Ft
- Eladó: Teljesen Új Ooni Koda 2 Max Gázüzemű Pizzakemence Bontatlan, Gyári csomagolásban!
- Solana Mobile Seeker Web3 okostelefon
- BESZÁMÍTÁS! ASRock B450M R5 3500X 16GB DDR4 512GB SSD RX 5700 XT 8GB Zalman N4 ADATA 600W
- HIBÁTLAN iPhone 15 Pro 128GB Black Titanium -1 ÉV GARANCIA - Kártyafüggetlen, MS3499
- BESZÁMÍTÁS! LG 24GM79G-B 24 144Hz FHD TN 1ms monitor garanciával hibátlan működéssel
- SzinteÚJ! HP Elitebook 860 G10 i7-1355U 32GB 1000GB 16" FHD+ Gar.: 1 év
- HP EliteBook 450 Gen8 Intel Core i5-1135G7 (11.Generáció)
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest