Autor Zpráva
baryy
Profil
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
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
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
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
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
Viz ukázka zmíněného principu.
baryy
Profil
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
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
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
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
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
nepozeral som to nijak podrobne, ale myslim ze by ti to vyhovovalo http://demo.koolphp.net/Examples/KoolUploader/Features/Ajax_Progress_Tracking/index.php

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0