Archívum - Jún 2007
június 23
8MB-nál nagyobb fájl letöltése PHP-ben
Sziasztok!
Tudna valaki segíteni olyan "szájbarágósan"?
Íme egy kódrészlet amit az oldalamon a download.php-ben található.
case 1 : header('Content-type: application/octet-stream');
header('Content-Disposition: attachment; filename="test.txt"');
print get_access_file( "vedeni/test.txt" );
break;
A problémám az, hogy nem tudom elérni, hogy 8MB-nál nagyobb fájlokat le tudjon tölteni az user.
Pontosan meg tudná írni valaki mit is kell módosítanom a kódban ez alapján?
Idézet egy másik fórumról:
Megtaláltam a választ, hátha valakit érdekel, becopyzom:
For download the big files (more than 8MB), you must used ob_flush() because the function flush empty the Apache memory and not PHP memory.
And the max size of PHP memory is 8MB, but ob_flush is able to empty the PHP memory.
header('Content-Type: application/force-download');
header ("Content-Length: " . filesize($file));
header ("Content-Disposition: attachment; filename=$theFileName");
$fd = fopen($file, "r");
while(!feof($fd))
{
echo fread($fd, 4096);
ob_flush();
}
Ha valaki megírná pontosan mit hova írjak, mit cseréljek ki, mivel egészítsem ki a kódot, hogy működjön a dolog stb. azt nagyon szépen megköszönném. Esetleg ha valaki leírná a módosított kódott az még jobb lenne.
A fájl adatai ami a "test.txt" helyett lenne:
Fájl: "film.avi", helye: "vedeni/film.avi", hossza 19 886 080 bájt.
Nagyon köszönök minden segítséget előre is.
■ Tudna valaki segíteni olyan "szájbarágósan"?
Íme egy kódrészlet amit az oldalamon a download.php-ben található.
case 1 : header('Content-type: application/octet-stream');
header('Content-Disposition: attachment; filename="test.txt"');
print get_access_file( "vedeni/test.txt" );
break;
A problémám az, hogy nem tudom elérni, hogy 8MB-nál nagyobb fájlokat le tudjon tölteni az user.
Pontosan meg tudná írni valaki mit is kell módosítanom a kódban ez alapján?
Idézet egy másik fórumról:
Megtaláltam a választ, hátha valakit érdekel, becopyzom:
For download the big files (more than 8MB), you must used ob_flush() because the function flush empty the Apache memory and not PHP memory.
And the max size of PHP memory is 8MB, but ob_flush is able to empty the PHP memory.
header('Content-Type: application/force-download');
header ("Content-Length: " . filesize($file));
header ("Content-Disposition: attachment; filename=$theFileName");
$fd = fopen($file, "r");
while(!feof($fd))
{
echo fread($fd, 4096);
ob_flush();
}
Ha valaki megírná pontosan mit hova írjak, mit cseréljek ki, mivel egészítsem ki a kódot, hogy működjön a dolog stb. azt nagyon szépen megköszönném. Esetleg ha valaki leírná a módosított kódott az még jobb lenne.
A fájl adatai ami a "test.txt" helyett lenne:
Fájl: "film.avi", helye: "vedeni/film.avi", hossza 19 886 080 bájt.
Nagyon köszönök minden segítséget előre is.
Current Free Course: HTML and XHTML for CSS
A hetente megjelenő tanyagok egy hétig ingyenesen elérhetőek.
■ Apache - Virtuális Host
Sziasztok !
Telepítettem egy windows-ra egy szerver programot . A program neve : AppServ . Ha jól vagyok informálva akkor létezik egy "trükk" ,hogy ha beállítom a httpd-vhosts.conf -ban a következőket ,akkor nem kell domain nevet regisztrálnom (nos ebben a témában nem vagyok jó tehát ezt most nem tudom menyire igaz) :Az alapbeállításokat már elvégeztem ,de sajnos a www.akarmilehetacim.hu-t nem tudom elérni :S . A routeren engedélyeztem a 80-as portot ami a (HTTP)-hez kell.
Elvileg a httpd.conf-ban is kéne valamit engedélyezni de ezt nem tudom ,hogy mit .
Egy dolgot találtam ami egy httpd-vhosts.conf file re mutat :
- Eredetileg így volt : - Erre módosítottam :
■ Telepítettem egy windows-ra egy szerver programot . A program neve : AppServ . Ha jól vagyok informálva akkor létezik egy "trükk" ,hogy ha beállítom a httpd-vhosts.conf -ban a következőket ,akkor nem kell domain nevet regisztrálnom (nos ebben a témában nem vagyok jó tehát ezt most nem tudom menyire igaz) :
<VirtualHost *80>
ServerAdmin webmaster##kukac##mail.smallco.com
DocumentRoot c:\appserv\www
ServerName www.akarmilehetacim.hu
ErrorLog C:\AppServ\Apache2.2\logs\error_log
TransferLog C:\AppServ\Apache2.2\logs\access_log
</VirtualHost>
Elvileg a httpd.conf-ban is kéne valamit engedélyezni de ezt nem tudom ,hogy mit .
Egy dolgot találtam ami egy httpd-vhosts.conf file re mutat :
- Eredetileg így volt :
# Virtual hosts
#Include C:/AppServ/Apache2.2/conf/default/httpd-vhosts.conf
# Virtual hosts
Include C:/AppServ/Apache2.2/conf/default/httpd-vhosts.conf
ablak bezar x ido utan
Sziasztok, -persze, hogy keresgeltem, de megse sikerult...
-van egy form,elkuldom a .php file -nak feldolgozasra, S azt szeretnem ha : megjelenik egy uj (akar egy alert kis) ablak kiirja : feldolgozas alatt, ha minden rendben kiirom, ha nem akkor azt is kiirom, varok 3 mp -et majd bezarom az ablakot.
Valamiert nem muxik. :-(
Kosz: -gyuri-
■ -van egy form,
print "<FORM ACTION='gondozas_karton.php' METHOD='POST' target='win_gondozas_k_".$tajszam."'>
print "<hr><br>Szeretném <INPUT TYPE='submit' class = 'form_gomb' VALUE='kitölteni'> a gondozási kartont.
</FORM>";
Valamiert nem muxik. :-(
Kosz: -gyuri-
Will You Change Your Web Site For the iPhone?
A touchscreen kicsit más hozzáállást követel, nincs folyamatosan mozgó kurzor, amire regálhatnánk.
■ Opera 9.5 To Fully Support CSS?
A cím azért túlzás, de sok dolog megvalósul a CSS3-ból, a tervek szerint a szelektorok maradéktalanul.
■ Opera Mini™ 4 beta: Demo movie
A mobiltelefonos böngésző új zoom funkciója (videó)
■ Mono Silverlight implementation emerges after epic hackathon
21 kemény nap után van egy Silverlight demok futtatására képes Moonlight változat
■ június 23
A függvény hívás helyének scopeja
Rövid leszek. :)
Meg lehet valahogy oldani, hogy a when hívásánál ne kelljen második paraméterben átadni a this-t? Lehet ezt tudni a függvényen belül, hogy mi volt az érvényes scope a függvény hívásakor? Próbálkoztam arguments.callee.caller féle trükkökkel, de egyik se működött. Ez így szépen megy, csak nem tetszik... :)Online verzió: http://wiktor.hu/dev/20070622/scope/
Előre is köszi, ha van ötlet!
■ Meg lehet valahogy oldani, hogy a when hívásánál ne kelljen második paraméterben átadni a this-t? Lehet ezt tudni a függvényen belül, hogy mi volt az érvényes scope a függvény hívásakor? Próbálkoztam arguments.callee.caller féle trükkökkel, de egyik se működött. Ez így szépen megy, csak nem tetszik... :)
Function.prototype.when = function(expression, scope) {
if (expression) {
return this.apply(scope);
}
}
var FooBar = {
init: function() {
this.number = 5;
this.number2 = this.addFive.when(this.number > 1, this);
console.log(this.number2);
},
addFive: function() {
console.log("Add five to " + this.number);
return this.number + 5;
}
}
FooBar.init();
Előre is köszi, ha van ötlet!
A PHP, latin2 charset és az XML esete
Sziasztok,
Egy ideje már görcsölök vele, de egyszerűen nem találok megoldást arra hogy egy olyan, egyszerű XML parsert írjak, ami kb. ugyanúgy megy PHP4 és PHP5 alatt is. Amit eddig alkottam (xml_parser függvényeket használva), viszonylag szépen megy PHP4 alatt, leszámítva hogy (számomra) véletlenszerű helyeken darabolja magát a tagokkal körülvett tartalmat, például:
rss\channel\item\link
Contents: http://prohardve
Contents: r.hu/c.php?mod=10
Contents: &
Contents: id=24038
end of link
(Most ahogy elnézem, túlnyomórészt & és ' körül vagdal.)
Ellenőriztem a forrás XML fájlt, és ott teljesen rendben, egyben van ez a link, a PHP4|5 pedig valamiért szétdarabolja. Ezt éppen meg lehet oldani könnyen, de nem vagyok benne biztos hogy ennek így kellene működnie.
A másik (fő) gond, hogy (csak) PHP5 alatt, bármit is csinálok, nem tudom rávenni hogy iso-8859-2 karakterkészletű kimenetet adjon. Se a hagyományos xml_parser fügvényekkel, se az XMLReader-el, se SimpleXML-el. Amint átállítom a headert, hogy UTF-8 tartalmat akarok megjeleníteni, egyből megjavul, legalábbis az ékezetes része.
Próbáltam iconv(), mb_convert_encoding() függvényeket is, sajnos egyik sem működött, és emiatt nem módosítanék sok sok oldalt UTF-8-ra, (adatbázisról nem is beszélve) ha nem muszáj.
Nagyra értékelném a segítséteket és a konstruktív hozzászólásokat az ügyben.
Előre is köszönöm!
■ Egy ideje már görcsölök vele, de egyszerűen nem találok megoldást arra hogy egy olyan, egyszerű XML parsert írjak, ami kb. ugyanúgy megy PHP4 és PHP5 alatt is. Amit eddig alkottam (xml_parser függvényeket használva), viszonylag szépen megy PHP4 alatt, leszámítva hogy (számomra) véletlenszerű helyeken darabolja magát a tagokkal körülvett tartalmat, például:
rss\channel\item\link
Contents: http://prohardve
Contents: r.hu/c.php?mod=10
Contents: &
Contents: id=24038
end of link
(Most ahogy elnézem, túlnyomórészt & és ' körül vagdal.)
Ellenőriztem a forrás XML fájlt, és ott teljesen rendben, egyben van ez a link, a PHP4|5 pedig valamiért szétdarabolja. Ezt éppen meg lehet oldani könnyen, de nem vagyok benne biztos hogy ennek így kellene működnie.
A másik (fő) gond, hogy (csak) PHP5 alatt, bármit is csinálok, nem tudom rávenni hogy iso-8859-2 karakterkészletű kimenetet adjon. Se a hagyományos xml_parser fügvényekkel, se az XMLReader-el, se SimpleXML-el. Amint átállítom a headert, hogy UTF-8 tartalmat akarok megjeleníteni, egyből megjavul, legalábbis az ékezetes része.
Próbáltam iconv(), mb_convert_encoding() függvényeket is, sajnos egyik sem működött, és emiatt nem módosítanék sok sok oldalt UTF-8-ra, (adatbázisról nem is beszélve) ha nem muszáj.
Nagyra értékelném a segítséteket és a konstruktív hozzászólásokat az ügyben.
Előre is köszönöm!