| | |
| Stránka: 1 z 1
| [ Príspevkov: 21 ] | |
Autor | Správa |
---|
Registrovaný: 04.04.07 Prihlásený: 27.06.21 Príspevky: 532 Témy: 35 Bydlisko: Bratislava | Napísal djsulo: 09.02.2008 19:37 | |
|
Da sa preniest subor zo stranky na stranku nejakym prikazom, nieco take ako sa da premenna pomocou $_GET? Alebo teda aspon informacie o nej...
|
|
Registrovaný: 01.09.07 Prihlásený: 18.05.11 Príspevky: 141 Témy: 36 Bydlisko: 127.0.0.1 | Napísal tatysp: 09.02.2008 19:42 | |
|
dá, ale z PC na stránku a nie pomocou GET, ale POST
_________________ It easier to run away |
|
Registrovaný: 04.04.07 Prihlásený: 27.06.21 Príspevky: 532 Témy: 35 Bydlisko: Bratislava | Napísal autor témy djsulo: 09.02.2008 19:47 | |
|
ja viem ze nie s get, ale chcel som nieco take, ako upload suboru. v prvom skripte formular s vyberom a odoslanim a kliknutim odosle subor do druheho php skriptu. proste vsetko mi funguje, ked mam zapnute register_globals, ale ja chcem aby to slo pri vypnutych, preto ten subor chcem vlastne preniest. takze by som chcel vediet ako na to, diky.
|
|
Registrovaný: 01.09.07 Prihlásený: 18.05.11 Príspevky: 141 Témy: 36 Bydlisko: 127.0.0.1 | Napísal tatysp: 09.02.2008 19:55 | |
|
jaj už chápem -> použi <input type="file" name="subor" /> a pri spracovaní skriptu použi pole $_FILES["subor"], napr nahrajeme súbor do priečinka files/
Kód: if(move_uploaded_file($_FILES["subor"]["tmp_name"], "files/".$_FILES["subor"]["name"]))echo"OK";else echo"Error";
Poznamka $_FILES["subor"] je pole:
name - pôvodný názov súboru na disku
error - výpis chyby pri prenose (0 - bez chyby)
size - veľkosť súboru
tmp_name - umiestnenie súboru v tempoch na serveri (pri kopírovaní)
vyššie som použil funkciu move_uploaded_file(), ale môžeš použiť aj funkciu copy()
_________________ It easier to run away |
|
Registrovaný: 04.04.07 Prihlásený: 27.06.21 Príspevky: 532 Témy: 35 Bydlisko: Bratislava | Napísal autor témy djsulo: 09.02.2008 20:06 | |
|
skusal som to a logicky to funguje, ale ked vypnem register_globals v php.ini, tak to hned pise error. uz ma to stve, to fakt nejde nejako obist?
ja poznam tu funkciu, ale diky za vysvetlenie
|
|
Registrovaný: 01.09.07 Prihlásený: 18.05.11 Príspevky: 141 Témy: 36 Bydlisko: 127.0.0.1 | Napísal tatysp: 09.02.2008 20:15 | |
|
ja ma register_globals vypnuté odkedy programujem a vždy mi to šlo: skús tento skript:
Kód: if(empty($_FILES))exit("nie je prijatý žiadný súbor");
// Pre istotu všetko vypíšeme foreach($_FILES as $index=>$param){ echo"\$_FILES['$index']='$param';<br />\n"; foreach($_FILES[$index] as $in2=>$pa2){ echo"\t\$_FILES['$index']['$in2']='$pa2';<br />\n"; };};
//Ideme kopírovať if (@move_uploaded_file($_FILES["subor"]["tmp_name"], $_FILES["name"])){ echo"Súbor bol prekopírovaný :)"; } else { echo"Niekde nastala chyba :("; };
skus toto a napíš sem výstup skriptu
EDIT: bola tam menšia chybička, ale je opravená
_________________ It easier to run away |
|
Registrovaný: 04.04.07 Prihlásený: 27.06.21 Príspevky: 532 Témy: 35 Bydlisko: Bratislava | Napísal autor témy djsulo: 09.02.2008 20:20 | |
|
ako som ocakaval... niekde nastala chyba
|
|
Registrovaný: 01.09.07 Prihlásený: 18.05.11 Príspevky: 141 Témy: 36 Bydlisko: 127.0.0.1 | Napísal tatysp: 09.02.2008 20:22 | |
|
ale čo ti vypísalo z toho "// Pre istotu všetko vypíšeme" - aké premenné ?
_________________ It easier to run away |
|
Registrovaný: 04.04.07 Prihlásený: 27.06.21 Príspevky: 532 Témy: 35 Bydlisko: Bratislava | Napísal autor témy djsulo: 09.02.2008 20:27 | |
|
aj ja som sa cudoval, ze nevypisalo nic a vsimol som si, ze hned v prvom riadku co si napisal :
Kód: if(!empty($_FILES))exit("nie je prijatý žiadný súbor"); tam nema byt !, vtedy zisti ze nie je nahraty subor... takze po odstraneni (!) mi vypisalo - nie je prijatý žiadný súbor. a tu je skript pre upload: Kód: <html> <form action="up_sub.php" method="post" enctype="multipart/form-data"> Odoslať súbor: <input type=file name="subor"><br> <input type="submit" value="Odoslať"> </form> </html>
cize mne proste nechce odoslat subor na dalsiu stranku a nechapem preco, ked to kazdemu ide
Naposledy upravil djsulo dňa 09.02.2008 20:29, celkovo upravené 1
|
|
Registrovaný: 01.09.07 Prihlásený: 18.05.11 Príspevky: 141 Témy: 36 Bydlisko: 127.0.0.1 | Napísal tatysp: 09.02.2008 20:28 | |
|
njn v tom som sa pozabudol - nechcem ťa podceňovať, ale máš v definícií form-u toto: enctype="multipart/form-data" ?
_________________ It easier to run away |
|
Registrovaný: 04.04.07 Prihlásený: 27.06.21 Príspevky: 532 Témy: 35 Bydlisko: Bratislava | Napísal autor témy djsulo: 09.02.2008 20:29 | |
|
takze ako vidis, mam tam enctype="multipart/form-data", vid hore vypis.
btw. jadro php 5.2.5
|
|
Registrovaný: 01.09.07 Prihlásený: 18.05.11 Príspevky: 141 Témy: 36 Bydlisko: 127.0.0.1 | Napísal tatysp: 09.02.2008 20:38 | |
|
si to pridal neskôr alebo počas toho ako som písal ten skript sa zdá byť v poriadku. Na spracovanie PHP máš ten môj ? alebo môj je iba súčasťou ? keď daj tu celý
_________________ It easier to run away |
|
Registrovaný: 04.04.07 Prihlásený: 27.06.21 Príspevky: 532 Témy: 35 Bydlisko: Bratislava | Napísal autor témy djsulo: 09.02.2008 20:43 | |
|
upload.html
Kód: <html> <form action="up_sub.php" method="post" enctype="multipart/form-data"> Odoslať súbor: <input type=file name="subor"><br> <input type="submit" value="Odoslať"> </form> </html> up_sub.php Kód: <?php if(empty($_FILES))exit("nie je prijatý žiadný súbor");
echo($_FILES['name']); // Pre istotu všetko vypíšeme foreach($_FILES as $index=>$param){ echo"\$_FILES['$index']='$param';<br />\n"; foreach($_FILES[$index] as $in2=>$pa2){ echo"\t\$_FILES['$index']['$in2']='$pa2';<br />\n"; }; };
//Ideme kopírovať if (@move_uploaded_file($_FILES["subor"]["tmp_name"], $_FILES["name"])){ echo"Súbor bol prekopírovaný :)"; } else { echo"Niekde nastala chyba :("; }; ?> a ja mam svoj up_sub.php Kód: <?php if(move_uploaded_file($_FILES["subor"]["tmp_name"], $_FILES["subor"]["name"]))echo"OK";else echo"Error"; if (file_exists($_FILES["subor"]["name"])) echo("Existuje<br>"); else echo("Neexistuje<br>"); chdir("upload"); opendir("."); $a=time(); mkdir($a); $cesta=$a."/".basename($_FILES['subor']['name']); if (copy ($subor, $cesta)) echo ("Úspešné"); else echo ("Neúspešné"); unlink($subor); ?>
podla mna to ma fungovat bez chyby, takze budem vdacny, ak to vyriesis. alebo ci nemoze byt chyba niekde v konfiguracii, diky.
|
|
Registrovaný: 01.09.07 Prihlásený: 18.05.11 Príspevky: 141 Témy: 36 Bydlisko: 127.0.0.1 | Napísal tatysp: 09.02.2008 20:55 | |
|
nikde tam nieje definovaná premenná $subor, skús toto:
Kód: <?php chdir("upload"); opendir("."); $a=time(); mkdir($a); $cesta=$a."/".basename($_FILES['subor']['name']); if (copy ($_FILES["subor"]["tmp_name"], $cesta)) echo ("Úspešné"); else echo ("Neúspešné"); /* Po spracovaní skriptu bude súbor $_FILES["subor"]["tmp_name"] automatický odstránený, nemusíš používať unlink() */ ?>
_________________ It easier to run away |
|
Registrovaný: 04.04.07 Prihlásený: 27.06.21 Príspevky: 532 Témy: 35 Bydlisko: Bratislava | Napísal autor témy djsulo: 09.02.2008 21:04 | |
|
ty brdo, ono to frci, tak diky chlape. uz som z toho nervozny 2 dni
|
|
Registrovaný: 04.04.07 Prihlásený: 27.06.21 Príspevky: 532 Témy: 35 Bydlisko: Bratislava | Napísal autor témy djsulo: 14.02.2008 15:03 | |
|
da sa nejako odstanit ten subor, ktory prenasa $_FILES? pretoze ak uzivatel niekde na stranke da reload, tak mu oznami ze stranka obsahuje POSTDATA a ten subor sa opat uploaduje. proste po vykonani skriptu by sa $_FILES vyprazdnil.
Naposledy upravil djsulo dňa 14.02.2008 15:06, celkovo upravené 1
|
|
Registrovaný: 26.07.06 Prihlásený: 20.03.16 Príspevky: 1378 Témy: 90 Bydlisko: Slovakia-Ko... | Napísal kmsa: 14.02.2008 15:06 | |
|
tho neviem ale co tak to nejakou podmenkou alebo roznymi sposobmi osetrit?
proste ak da krok spat uzivatel tak nenastane nejaka podmienka ktora priamo navezuje na ten dotycny prenos cim by sa nevikonala znovu
_________________ CPU: Intel E7200 momentalne default + freezer 7 pro | MB: Gigabyte GA-P35-DS3 rev. 2.0 F14 | RAM: A-DATA 4x1GB EE Vitesta | VGA: ATI Radeon HD4850 Sapphire Dual Slot | Monitor: BenQ E2200HD+17CTX | HDD: WD 3200AAKS + Maxtor 6Y080M0 80GB SATAII + 120GB ATA Barracuda | PSU: Corsair VX450W | Windows 7 Ultimate Sk | REPRO: Logitech X-210
+
IPhone 3GS JB 3.1.3 (new BR)
múdry sa postara o seba ale ešte múdrejši sa postara aj o druhých |
|
Registrovaný: 04.04.07 Prihlásený: 27.06.21 Príspevky: 532 Témy: 35 Bydlisko: Bratislava | Napísal autor témy djsulo: 14.02.2008 15:07 | |
|
no ved uz nad tym rozmyslam cele poobedie
|
|
Registrovaný: 17.10.06 Prihlásený: 08.01.11 Príspevky: 1752 Témy: 17 | Napísal suchy: 14.02.2008 15:45 | |
|
ked chces aby ti to pri refreshi neodosielalo znova tak to vyries tak ze form bude v jednom subore, skript v druhom. a po vykonani skriptu sa presmeruje naspet na form
_________________ A Real Programmer might or might not know his wife's name. He does, however, know the entire ASCII code table. |
|
Registrovaný: 08.09.06 Prihlásený: 27.04.20 Príspevky: 100 Témy: 50 |
Ahojte, ja mam k tomuto trosicka inu otazku.
Da sa preniest naraz viac suborov? Napr chcem poslat na server cez PHP viac obrazkov naraz. Samozrejme nie spakovanych Je take nieco mozne?
|
|
Registrovaný: 04.04.07 Prihlásený: 27.06.21 Príspevky: 532 Témy: 35 Bydlisko: Bratislava | Napísal autor témy djsulo: 14.04.2008 9:36 | |
|
kazdemu priradis ine meno a normalne to skopirujes na server.
_________________ CPU: AMD Phenom II 940 QUAD X4 BE AM2+, chladic: Arctic Cooling Freezer 64 Pro, RAM: 4GB DDR2 800MHz PC6400, MB: M2N-E SLI, VGA: RX 4870 GAINWARD HD4870 1GB, HDD: WD 1TB, Zdroj: CORSAIR 750W TX |
|
| Stránka: 1 z 1
| [ Príspevkov: 21 ] | |
| Nemôžete zakladať nové témy v tomto fóre Nemôžete odpovedať na témy v tomto fóre Nemôžete upravovať svoje príspevky v tomto fóre Nemôžete mazať svoje príspevky v tomto fóre
|
|