Upload více souborů – PHP – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Upload více souborů – PHP – Fórum – Programujte.comUpload více souborů – PHP – Fórum – Programujte.com

 

pecan9870
Věrný člen
6. 12. 2007   #1
-
0
-

Mám takový malý problém, dělám pro klienta, který by rád připojil ke svým článkům i nějakou přílohu, ale on neví jestli ta příloha bude jedna, nebo jich bude pět. Nevíte jak to udělat aby byl na stránce jeden input a po kliknutí na tlacitko by se napriklad pridal dalsi? (hlavne aby se nesmazal text clanku, myslim ze nadseny by nebyl :)) Vypada to nevzhledne met tam treba 10 inputu, nejlepsi by bylo kdybych si podle potreby mohl po kliknuti na tlacitko pridat dalsi.. a hlavne jak to potom v PHPcku dostat z promennych kdyz nevim kolik jich bude? :) Diky za vsechny odpovedi

Nahlásit jako SPAM
IP: 80.78.146.–
Zelenáč0
Posthunter
6. 12. 2007   #2
-
0
-

Nikdy jsem to nedelal, ale resil bych to pomoci javascriptu - po kliknuti by se jednoduse innerhtmloval (bo nejaka podobna vlastnost - innerHTML tusim neni podporovana v opere?!) dalsi input s nejakym indexem ve jmene (priloha_1, priloha_2 atd.)

V PHP bych to potom resil nejak takhle:



for($i=0; isset($_FILE["priloha_".$i]); $i++){
// upload
}


Dalsi vec je, ze pokud vis, ze jich bude MAX. 5, muzes si udelat 5 inputu, pomoci JS je skryt (css display: hidden) a potom postupne odkryvat (vyhoda tohohle reseni je, ze vic priloh pujde uploadnout i s vypnutym JS)

Treti moznost vykaslat se na JS a to tlacitko udelat jako "submit" -> clanek se ti odesle a ty ho muzes opet vmacknout do textarea:


<?
if(!$_SESSION["pocet"]){
$_SESSION["pocet"] = 1;
}

if($_POST["pridat"]){
$_SESSION["pocet"] ++;
} else if($_POST["ulozit"]){
for($i=0;$i<$_SESSION["pocet]; $i++){
upload($_FILE["priloha_".$i]);
}
uloz_clanek($_POST["clanek"]);
}

echo('<form>');

for($i=0;$i<$_SESSION["pocet]; $i++){
echo('<input type="file" name="priloha_'.$i.'" />');
}
echo('<input type="submit" name="pridat" value="Dalsi priloha" />');
echo('<textarea name="clanek">'.htmlspecialchars($_POST["clanek"]).'</textarea>');
echo('<input type="submit" name="ulozit" value="Ulozit" />'."\n</form>");

?>

Nahlásit jako SPAM
IP: 89.176.254.–
Tocimanko0
Grafoman
7. 12. 2007   #3
-
0
-

Hh, toto som nedavno riesil.. Kod ti sem nedam cely, alebo poviem ti, ze to mozes dat (tie subory) do zipu a potom nechat rozbalit (po uploadnuti) :))) Pouzivam (este stale a perfektne funguje ;) kniznicu pclzip.lib.php ... Po uploadnuti zip suboru to moj php skript automaticky rozbali a je po vsetkom :) Bud ti toto posluzi ako napoveda alebo skor fakt, ze kompletny zdrojovy kod sa nachadza na fore programujte.com :) Zakladatel fora: Tocimanko (ja :DD )

Nahlásit jako SPAM
IP: 195.91.54.–
olgo0
Věrný člen
7. 12. 2007   #4
-
0
-

To Tocimanko : hromadny upload neni az taky problem aby musel byt rieseny takto. najhorsie na tom tvojom je ze zip musi podporovat server. su ale samozrejme situacie ked sa to hodi.

Nahlásit jako SPAM
IP: 193.110.186.–
"Boze, dopraj mi, prosim ta, petdesiat rokov prace a zabavy, a potom nahlu smrt v spanku." J. Grisham
pecan9870
Věrný člen
7. 12. 2007   #5
-
0
-

No nakonec zakaznik rekl ze mu nebude vadit ze tam bude 5 inputu natvrdo, takze problem "vyresen" a diky za vsechny rady, kdybych si mel vybrat tak asi ten zelenacuv napad s tim submitem i kdyz to bych resil asi taky trosku jinak :)

Nahlásit jako SPAM
IP: 80.78.146.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 48 hostů

Podobná vlákna

PHP upload více souborů — založil Loki

Upload souboru — založil Blujacker

Upload souborů na server — založil dragon124

Upload objemných souborů — založil psenik

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý