Ostatní => Archiv => Téma založeno: Roman_S 27 Února 2007, 00:52:28
Název: apache2 - php
Přispěvatel: Roman_S27 Února 2007, 00:52:28
HI all,
prosim vas lidičky nesetkali jste se nekdo s mojim problemem. ten je nastenující => http://212.96.xxx.xxx/down/aaaa.php - ono je to normalní PC takže nevim esi se zrovna zadaří že bude zaple tak problem popiši níže, však takto je nejlépe videt problém takžíkajíc "live" mám to spíše pro vlastní potreby ale tož to je jedno k prblemku.
problem je v tom že sice po kliknutína tlačítko(submit) se volá stránka aaaa.php vsak ne vedle slova hodnota nevypíše obsah textoveho pole :(
kod stranek je funkční bo u kamoša funguje (apache na win) jinak vypadá takto:
jinak možná by nekomu mohla pomoct tahle stranka http://212.96.xxx.xxx/index.php
jinak věřím že problem by jste rádi videliteda v tom lajvu takže klidne se divejte však chodim do škole takže PC je zaple zhruba od 16:00 do 01:00.
jinak sem moc rád za dobrou radu. esi sem pri instalaci neco nepovolil nebo já nevím :( jako snažil jsem se si pročist pak stranek co a jak aletudle nudle z toho vzniklo :D
zdarvim a pozdravuji
Název: apache2 - php
Přispěvatel: Petr Merlin Vaněček27 Února 2007, 07:51:57
Hadam ze nebude zapnute registrer globals v php.ini, takze nelze volat naprimo hodnotu promenne predane pomoci GET a POST, resenim je bud zmenit hodnotu v php.ini na on (coz se pro urcitou uroven zabezpeceni nedoporucuje), anebo pouzivat pole $_GET a $_POST jinak receno, vas kod by mel vypadat nejak takto:
// V PHP 4.1.0 a pozdějších by mělo být použito $_FILES namísto $HTTP_POST_FILES. if (is_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name'])) { copy($HTTP_POST_FILES['userfile']['tmp_name'], "/place/to/put/uploaded/file"); } else { echo "Possible file upload attack. Filename: " . $HTTP_POST_FILES['userfile']['name']; } /* ...or... */ move_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name'], "/place/to/put/uploaded/file"); ?>kod je odtud (http://www.php.net/manual/cs/features.file-upload.php/) myslel jsem že jako to řeší to $HTTP_POST_FILES/$_FILES ale jak vidím tak ne :( nebo musím sinekde neco nastavit ???
zkusil jsemtohle ale nic ani nevímesi je tovubec takhle možné.
// V PHP 4.1.0 a pozdějších by mělo být použito $_FILES namísto $HTTP_POST_FILES. if (is_uploaded_file($_POST['HTTP_POST_FILES["userfile"]["tmp_name"]'])) {
Název: apache2 - php
Přispěvatel: drat27 Února 2007, 21:37:56
Ne ne to si pletete. existuje nekolik tech globalnich prostoru. $_POST, $_GET, $_ENV, $_SERVER, $_SESSION, $_FILES, $COOKIE. Pokud vam ten prvni skript nefunguje tak jsou zrejme zakazany stare syntaxe techto jak to nazvat :) ja nevim treba globalnich prostoru. to jsou ty $_HTTP_GET_VARS, $_HTTP_POST_FILES ......... Proste ve vasem hornim prikladu pouzijte jen $_FILES. Ja nevim ted na co narazite ale v tom hornim prikladu se jedna o to ze overuji jestli je dany soubor skutecne neco co uzivatel uploadoval.
Název: apache2 - php
Přispěvatel: Roman_S27 Února 2007, 22:15:00
// V PHP 4.1.0 a pozdějších by mělo být použito $_FILES namísto $HTTP_POST_FILES. if (is_uploaded_file($_FILES['userfile']['tmp_name'])) {
echo $_FILES['userfile']['tmp_name']; copy($_FILES['userfile']['tmp_name'], "../down/zde"); } else { echo "Possible file upload attack. Filename: " . $_FILES['userfile']['name']; } /* ...or... */ //move_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name'], "/place/to/put/uploaded/file"); ?>a o5 se proměnné nenačtou :( slo by nekde povolit ty staré syntaxe?
jinak ted už jak s ena to dívám tohleto jsem už vlastnezkoušel jako druhou věc .. protojsem tam psal že jsme myslel že je to tím $HTTP_POST_FILES/$_FILES :'(
Název: apache2 - php
Přispěvatel: drat28 Února 2007, 11:10:39
A jeste 2 otazecky. Ukazte prosim formular ye ktreho tento soubor odesilate. Citim chzbu bud tam nebo v nepovoleni uploadu v PHP. Mozna presahnuti limitu maximalniho uploadu? Ukazte ten formular. Jinak ale tohle uz je zalezitost jazyka samotneho a ne chyba instalace nebo OS. Trochu mimo tohle forum.
Název: apache2 - php
Přispěvatel: Roman_S28 Února 2007, 15:10:44
ok kokud tedy říkáte že je to už otázka pouze PHP tak teda mužem ukončit diskuzi. upload funguje- to už sem resil jako první, esije povolenej atd, i semzkoušel upnout a šlo to
Název: apache2 - php
Přispěvatel: Petr Merlin Vaněček28 Února 2007, 20:38:24
Mate nastavena prava zapisu do adresare "../down/zde" pro vsechny? Nezapominejte, ze apache bezi pod jinym uzivatelem.
Zkuste si take vypsat obsah pole pomoci funkce print_r tj. print_r($_POST) print_r($_GET) print_r($_FILES)
Urcite tam bude nekde nejaka bota. Jinak jak jsem psal, stary styl predavani promennych lze zapnout pomoci "register_globals = On" v (pravdepodobne tato cesta) /etc/php5/apache2/php.ini
Název: apache2 - php
Přispěvatel: Roman_S11 Března 2007, 10:26:33
zdravim, nejak jsem nebyl ted na netu takže jsem nemohl reagovat. vsak problem už je zažehnan ale ted stojím pred jiným prblemem
Název: apache2 - php
Přispěvatel: Petr Merlin Vaněček11 Března 2007, 11:24:41
A ten je? :)
Název: apache2 - php
Přispěvatel: Roman_S11 Března 2007, 19:38:55
ten je v tom že pokud vyberu soubor menčí cca jak 4.6kb tak se soubor upne pokud vyberu soubor větší jak 4,6kb tak se soubor neupne. tou hranicí 4,6kb si nejsempresne jist říkám cca.
jo vím že v php.ini je max_upload_size - ta je nastavena na 2MB základne jako tuhletu hodnotu sem zmenil kído na 80MB a surt to nebylo schopné upnout soubor větší jak je ona hranice:(
pls help me.
podle pátrání sem vypátral že je problem v apache.
jinak ptátese jakým kodem upuju tady je - je to z php manualu takže ....
Název: apache2 - php
Přispěvatel: Petr Merlin Vaněček11 Března 2007, 19:58:07
Jak rychle mate pripojeni k tomu serveru, jeste by totiz mohl byt problem s maximalnim casem spusteneho scriptu, ktery je pak nasilne ukoncen. S apachem by to moc spolecneho mit nemelo, alespon si tim nejsem vedom, kdesi jsem cetl, ze apache muze limitovat POST na 512kb, ale to asi nebude vas pripad :)
Kazdopadne bych se zameril na kontrolu php.ini hlavne u nasledujicich promennych:
* file_uploads (=on) * upload_max_filesize (=max.velikost) * max_input_time (=tezko rici, melo by stacit 60) * memory_limit (=ja pouzivam 32MB) * max_execution_time (=v zavislosti na velikosti souboru, bezne 30, zkuste vic) * post_max_size (=zkuste stejnou nebo radeji vyssi hodnotu nez memory_limit)
Nezapomente na restart
Název: apache2 - php
Přispěvatel: Roman_S11 Března 2007, 20:02:47
tak servr beží na mem pc. jj s tímčasem sem to už resil je to zvedle.
jinak nasel jsem tento link a to je presne muj případ http://bugs.php.net/bug.php?id=19044
Název: apache2 - php
Přispěvatel: Petr Merlin Vaněček11 Března 2007, 20:05:46
A co ten post_max_size ?
Název: apache2 - php
Přispěvatel: Roman_S11 Března 2007, 20:13:14
288-713-283
Název: apache2 - php
Přispěvatel: Roman_S11 Března 2007, 20:14:16
php.ini
; Maximum size of POST data that PHP will accept. post_max_size = 8M
Název: apache2 - php
Přispěvatel: drat11 Března 2007, 20:29:58
Ja myslim ze v max execution time to nebude. Za defaultnich 30 sekund (pokud se nepletu) by to stihlo urcite vice nez 4kB. Tech 4 kB je opravdu malo i na defaultni hodnoty vsech konfiguraci souvisejici s maximalni velikosti uploadu a velikosti pameti. V Apachovi me zadne omezeni zrovna nenapada. Mozna zkuste nekde vystavit konfigurak Apache a PHP treba si nekdo neceho vsimne. Kdybyste pouzival windows tak se nedivim. Tam jsem s uploadem nemale problemy ale v linuxu mi to vzdy jelo.
Název: apache2 - php
Přispěvatel: Roman_S11 Března 2007, 21:40:55
zdravim
takže HOTOVO uzavceno cele kopírování. - tohle to byl ten problem. jinak !! dbát na rady merlina jsou to dobré rady. pak je teda ještě potreba zohlednovat promnené jinak klído pído UIN a ptejte se :)