ugrás a tartalomhoz

Archívum - Jún 2007 - Fórum téma

június 23

8MB-nál nagyobb fájl letöltése PHP-ben

joe123 · 2007. Jún. 23. (Szo), 15.06
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.
 

Apache - Virtuális Host

mpdt · 2007. Jún. 23. (Szo), 13.58
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) :
<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>
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 :
# Virtual hosts
#Include C:/AppServ/Apache2.2/conf/default/httpd-vhosts.conf
- Erre módosítottam :
# Virtual hosts
Include C:/AppServ/Apache2.2/conf/default/httpd-vhosts.conf
 

ablak bezar x ido utan

figyuri · 2007. Jún. 23. (Szo), 12.08
Sziasztok, -persze, hogy keresgeltem, de megse sikerult...

-van egy form,
print "<FORM ACTION='gondozas_karton.php' METHOD='POST' target='win_gondozas_k_".$tajszam."'>
elkuldom a .php file -nak feldolgozasra,
print "<hr><br>Szeretném <INPUT TYPE='submit' class = 'form_gomb' VALUE='kitölteni'> a gondozási kartont.
</FORM>";
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-
 

június 23

A függvény hívás helyének scopeja

wiktor · 2007. Jún. 22. (P), 23.10
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... :)
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();
Online verzió: http://wiktor.hu/dev/20070622/scope/

Előre is köszi, ha van ötlet!
 

A PHP, latin2 charset és az XML esete

ada · 2007. Jún. 22. (P), 22.52
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 &amp; é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!
 

.php fájlt felugró ablakba

pimaszgrimasz · 2007. Jún. 22. (P), 22.09
Sziasztok!

Arra lennék kíváncsi, hogy miként lehet megoldani azt, hogy egy likre rákattintok és egy x,y méretű új (esetleg fejléc nélküli) ablakban jelenjen meg a .php fájl és ott fusson a php kód. Pl.: egy több kérdéses tesztoldal, amit phpvel csináltam, és több kérdést is ad külön egymás után.

Nem értek a javascripthez, és most sajnos nincs is időm rá, de ha jól tudom ezt a problémát orvosolni lehet vele.

Köszönöm előre a segítséget...
 

Adattáblák mennyisége egy adatbázison belül.

s_volenszki · 2007. Jún. 22. (P), 17.20
Sziasztok!

Szeretném megkérdezni, kinek van tapasztalata ebben a témában (Adattáblák mennyisége egy adatbázison belül.)?
Mennyit lehet létrehozni olyan táblából amiben átlagosan (táblánként) 100 rekord van?

Várom a véleményeiteket, üdv

s_volenszki
 

mysql_query

eaposztrof · 2007. Jún. 22. (P), 15.56
üdv.
$catrow = @mysql_fetch_assoc(mysql_query("select c.id as cid, s.id as sid from dir_cat c left join dir_subcat s on c.id = s.id_cat where c.name='$cname' and s.name='$sname'")) or exit;
valaki elmagyarazna nekem magyarul h ez a sor mit is csinal?

tablatartalmak:
dir_cat (id,name)
dir_subcat (id,id_cat,name,show_on_main)

kosz.
 

Hitelkártya titkosítás

VRobi · 2007. Jún. 22. (P), 15.38
Átalakulóban van az oldalunk és azon agyalok hogy hogyan lenne a legbiztonságosabb a hitelkártyaadatok bekérése, tárolása, visszafejtése. Eddig minden szerver oldalon történt, tehát többször is kódolatlanul utaztak az adatok.
Arra jutottam hogy az encrypt a kliens oldalon történjen, a kódolt adatok megtekintését jelszóval védem, decryptre pedig windowsos programot használnánk. Persze külön kulccsal, hisz az egyik publikus.
Elég járatlan vagyok a témában, pedig reggel óta keresgélek a neten. Tud valaki létező megoldást?

Előre is kösz,
R.
 

Fizetés visszaigazolása

joe123 · 2007. Jún. 22. (P), 15.22
Kedves Fórumlakók!

Segítségre lenne szükségem, mivel elég kezdő vagyok a témában.
A következőre kellene nekem valami megoldás, PHP script, vagy ötlet tanács hogyan tudom kivitelezni a következő dolgot:

Meg kellene hívni egy hivatkozást (például): "http://valami.hu/paycheck2.cgi?id=ID&code=CODE&mode=MODE"

Ahol a "CODE"-ot a felhasználó írja be egy beviteli mezőbe és ez a kód kerül elküldésre a meghívott oldalnak.
Erre az oldal vagy "ERR"-t vagy "OK"-t ad eredményül.
Ezt az eredményt "ERR" vagy "OK" kellene feldolgozni egy oldalnak, tehát ha ERR van ne történjen semmi maximum egy olyan kiírás a képernyőn, hogy "Belépés megtagadva" OK eredmény esetén meghívni például egy " valami.avi" fájlt a szerveren.

Minden segítséget nagyon szépen köszönök előre is.