Autor | Zpráva | ||
---|---|---|---|
baryy Profil |
#1 · Zasláno: 25. 1. 2012, 14:10:25
Dobrý den, potřeboval bych poradit v jedné věci, mam formulář otevřený ve fancyboxu a potřebuju uložit text a k tomu nahrát soubor, ten text jsem po dlouhé době dokázal načíst do skriptu php, ale s tím nahráním souboru si nevím rady, pomlže mi někdo prosím:
$("#novinka_form").change(function(){ $("#pokus").show('slow'); var novinka_text = $("#text_novinka").val(); $.ajax({ type: "POST", url: 'novinka_podrobnosti_SQL_query.php', data: "novinka_text=" + novinka_text, complete: function(data){ $("#pokus").html(data.responseText); } }); return false; }); ve formuláři mám mám : <form name="novinka_podrobnosti_form" id="novinka_form" enctype="multipart/form-data"> . . <td align="right" width="150">Obrázek k aktualitě : </td> <td><input id="img_novinka" type="file"></td> |
||
Str4wberry Profil |
#2 · Zasláno: 25. 1. 2012, 15:19:51
A jde ti o samotné nahrání souboru (skriptů pro upload najdeš všude plno), nebo nahrání bez změny stránky?
|
||
baryy Profil |
#3 · Zasláno: 25. 1. 2012, 15:31:58
Bez změny stránky, já mám práve pod tímto oknem ješte puštěný tinymce editor a nechci aby se refreshovala celá stránka. jen v tim fancyboxu abyy se vypsao třeba uloženo, to už bych uměl pak tam vypsat text, jen prostě nevim jak předat ten soubnor tomu skriptu php.
|
||
Str4wberry Profil |
#4 · Zasláno: 25. 1. 2012, 15:55:01
To se dělá třeba tak, že se formulář odešle do skrytého
<iframe> na zpracovávací skript, který zavolá JS funkci z nadřazené stránky a předá jí stav uploadu.
|
||
baryy Profil |
#5 · Zasláno: 25. 1. 2012, 17:49:56
No jo, ale ja s JS opravdu moc neumim, tohle jsem googlil asi 2 hodiny, tak proto jsem se rozhodl napsat sem, nemohl by mi nekdo napsat prosim aspon nastínit ten kód ? děkuji
|
||
Str4wberry Profil |
#6 · Zasláno: 25. 1. 2012, 18:05:13
|
||
baryy Profil |
#7 · Zasláno: 26. 1. 2012, 09:36:16
Děkuji za příklad, ano funguje to, hláška se vypíše, ale přece jen jsem asi uplně nepochopil ten smysl.. kde se tedka nachází ten soubor? a dostanu ho nejak fo proměnné $_FILES tak abych s ním mohl dále pracovat, někam ho uložit, název např ulozit do databaze? o tohle mi jde, děkuji
|
||
_es Profil |
#8 · Zasláno: 26. 1. 2012, 09:55:44
baryy:
„kde se tedka nachází ten soubor? a dostanu ho nejak fo proměnné $_FILES tak abych s ním mohl dále pracovat“ No však vo formulári nastavíš, na aký PHP skript sa má formulár odoslať a v tom skripte tie dáta nejako ľubovoľne spracuješ. |
||
baryy Profil |
#9 · Zasláno: 26. 1. 2012, 10:06:28
To ja vím, jako nahrávat formuláře z obyčejných formulářů do php umím, ale tady je prpoblém v tom ajaxu, nebo prostě obecně JS, nevím jak skloubit JS+PHP .. nahoře tím kódem dostanu text z textarrea do toho skriptu php a dokážu vypsat a zpracovat, aniž by se stránka refreshovala, ale prostě nevím jak a do jaké proměnné dostat ten soubor, v tom JS mám zmatek.
|
||
_es Profil |
#10 · Zasláno: 26. 1. 2012, 12:30:42
baryy:
„To ja vím, jako nahrávat formuláře z obyčejných formulářů do php umím“ Rada v [#4] je normálne odoslanie obyčajného formulára, len sa odpoveď servera načíta do iframe. Súbor len cez JS, bez formulára, tak aby to fungovalo v dostatočnom počte prehliadačov, neodošleš. |
||
Ugo Profil |
#11 · Zasláno: 26. 1. 2012, 12:57:55
nemusíš odesílat formulář Z iframu, můžeš ho taky odeslat V iframu, tohle mě přijde jako nejjednodušší způsob nahrávání více souborů včetně mazání před finálním uložením, uděláš si jen samostatný skript a ten vložíš do rámu. Princip je stejný, jen nepotřebuješ vůbec JS s trochou uskromnění a co se mi líbí víc, není tam ten největší problém, což je formulář ve formuláři.
|
||
martin1312 Profil |
#12 · Zasláno: 26. 1. 2012, 16:19:49
nepozeral som to nijak podrobne, ale myslim ze by ti to vyhovovalo http://demo.koolphp.net/Examples/KoolUploader/Features/Ajax_Progress_Tracking/index.php
|
||
Časová prodleva: 11 let
|
0