ASP.NET C# - nahrání souboru na server – .NET – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

ASP.NET C# - nahrání souboru na server – .NET – Fórum – Programujte.comASP.NET C# - nahrání souboru na server – .NET – Fórum – Programujte.com

 

TopicMan
~ Anonymní uživatel
14 příspěvků
7. 12. 2008   #1
-
0
-

Ahoj.
Mám nějaký soubor, a potřeboval bych jej nahrát na server do určité složky.
Jako kód mám:



this.AddPhotoFileUpload001.PostedFile.SaveAs(Request.ServerVariables["web.cz"] + "~/Fotogalerie/" + this.AddPhotoFileUpload001.FileName);


když se ale pokusím souboru nahrát, píše to:
The SaveAs method is configured to require a rooted path, and the path '~/Fotogalerie/Datel001.jpg' is not rooted.

Nějak se s tím nemohu domluvit... Jinak mám freehosting u ASPone.cz

Díky za pomoc

Nahlásit jako SPAM
IP: 85.207.101.–
7. 12. 2008   #2
-
0
-

To TopicMan : Jak jsem tu psal nedávno, serverová cesta z ASP.NET (~/Fotogalerie/) se takhle použít nedá. Je nutné to prohnat buď přes Server.MapPath (pokud potřebuji fyzický adresář) a nebo VirtualPathUtility pokud potřebuju URL.

Nahlásit jako SPAM
IP: 84.21.124.–
Dušan Janošík | web: djanosik.cz, @djanosik
TopicMan
~ Anonymní uživatel
14 příspěvků
7. 12. 2008   #3
-
0
-

Server.MapPath jsem zkoušel, a nic.
Potom ten VitualPathUtility, ale to zase hlásí:

The relative virtual path 'Fotogalerie/Datel001.jpg' is not allowed here.

Fakt nevím co s tím. Na pc mi to šlapalo výborně...
A navíc to musím vyřešit do zítřka :-(

Nahlásit jako SPAM
IP: 85.207.101.–
TopicMan
~ Anonymní uživatel
14 příspěvků
7. 12. 2008   #4
-
0
-

Prosím, nemohl by mi někdo znalí věci napsat kód??? Ne, opravdu nechci vypadat jako líný člověk, kterému se nechce přemýšlet ani googlit. Jenom by se mi to právě tet náramně hodilo. Mám komponentu AddPhotoFileUploat001 a potřebuju, aby zadaný soubor nahrál na server do adresáře Fotogalerie, který je v rootu webu.

Snad se nějaký odborník najde ;-)

Nahlásit jako SPAM
IP: 85.207.101.–
TopicMan
~ Anonymní uživatel
14 příspěvků
7. 12. 2008   #5
-
0
-

Please help me

Nahlásit jako SPAM
IP: 85.207.101.–
7. 12. 2008   #6
-
0
-

Ne nemohl. Slova jako "zoušel jsem a nic" neznám.

BTW: Jo a tu urgenci si odpusť, nejsi jediný, kdo má nějaké starosti.

Nahlásit jako SPAM
IP: 84.21.124.–
Dušan Janošík | web: djanosik.cz, @djanosik
TopicMan
~ Anonymní uživatel
14 příspěvků
7. 12. 2008   #7
-
0
-


Ne nemohl. Slova jako "zoušel jsem a nic" neznám.

BTW: Jo a tu urgenci si odpusť, nejsi jediný, kdo má nějaké starosti.





Nj, není nad pořádnou radu profesionála ... :-)

Nahlásit jako SPAM
IP: 85.207.101.–
KIIV
~ Moderátor
+43
God of flame
7. 12. 2008   #8
-
0
-

neni nad lidi co maj zahadnej pocit ze jim musi ihned vsichni okolo pomoct, pritom reseni je obvykle na prvni strane vysledku google...
ovsem tedy pokud nezadaji misto "Server.MapPath" treba "free porn" pak uz toto tvrzeni nebude pravdive

Nahlásit jako SPAM
IP: 77.237.136.–
Program vždy dělá to co naprogramujete, ne to co chcete...
TopicMan
~ Anonymní uživatel
14 příspěvků
7. 12. 2008   #9
-
0
-

:-D no, tak se Server.MapPath to nejde...

Nahlásit jako SPAM
IP: 85.207.101.–
KIIV
~ Moderátor
+43
God of flame
7. 12. 2008   #10
-
0
-

a co si vyzkousel... schvalne chci videt seznam pokusu :)

Nahlásit jako SPAM
IP: 77.237.136.–
Program vždy dělá to co naprogramujete, ne to co chcete...
TopicMan
~ Anonymní uživatel
14 příspěvků
7. 12. 2008   #11
-
0
-

this.AddPhotoFileUpload001.SaveAs(Server.MapPath("Fotogalerie/" + this.AddPhotoFileUpload001.FileName))

Nahlásit jako SPAM
IP: 85.207.101.–
KIIV
~ Moderátor
+43
God of flame
7. 12. 2008   #12
-
0
-

nejsem si jist zda sem pochopil princip te funkce ale nema tam byt "~/Fotogalerie/" + ... ?

Nahlásit jako SPAM
IP: 77.237.136.–
Program vždy dělá to co naprogramujete, ne to co chcete...
TopicMan
~ Anonymní uživatel
14 příspěvků
7. 12. 2008   #13
-
0
-

Já to tam mám, jenom když jsem to psal jsem tak jsem se trochu upsal... omlouvám se...

píše to s tím kódem tuto chybu:

Access to the path 'D:\Websites\c7fc24c4f6\www\Fotogalerie\Datel001.jpg' is denied.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.UnauthorizedAccessException: Access to the path 'D:\Websites\c7fc201488\www\Fotogalerie\Datel001.jpg' is denied.

ASP.NET is not authorized to access the requested resource. Consider granting access rights to the resource to the ASP.NET request identity. ASP.NET has a base process identity (typically {MACHINE}\ASPNET on IIS 5 or Network Service on IIS 6) that is used if the application is not impersonating. If the application is impersonating via <identity impersonate="true"/>, the identity will be the anonymous user (typically IUSR_MACHINENAME) or the authenticated request user.

To grant ASP.NET access to a file, right-click the file in Explorer, choose "Properties" and select the Security tab. Click "Add" to add the appropriate user or group. Highlight the ASP.NET account, and check the boxes for the desired access.

Nahlásit jako SPAM
IP: 85.207.101.–
KIIV
~ Moderátor
+43
God of flame
7. 12. 2008   #14
-
0
-

tadle chyba ale neznamena ze to nefunguje ten prikaz ... je to ze nemas pristup do ty slozky .. resp ty mas ale server tudiz i script tam nema pristup

chce to obcas taky cist ty chyby

Nahlásit jako SPAM
IP: 77.237.136.–
Program vždy dělá to co naprogramujete, ne to co chcete...
TopicMan
~ Anonymní uživatel
14 příspěvků
7. 12. 2008   #15
-
0
-

A co mám udělat, aby tam přístup měl?

Nahlásit jako SPAM
IP: 85.207.101.–
forstec0
Návštěvník
7. 12. 2008   #16
-
0
-

To TopicMan : No ty bláho, co se to dneska za lidi učí programovat. Zrovna tenhle problém jsem taky nedávno řešil a dokázal jsem si poradit sám. Prostě hledej na googlu, mrkni na fórum poskytovatele hostingu, většinou už ten samý problém někdo někdy taky řešil ... a určitě vyřešil. No a jinak když ti něco nefunguje, nějaká metoda třeba, tak to zkoušej, VS ti vypisuje chyby, stačí si to přečíst, pak upravid kód té metody a tak dále, prostě těch možností je spousta. Moje, asi dost naivní, představa je taková, že člověk do fóra přispívá, když to nikde jinde není k nalezení nebo je to opravdu nějaký jóóó složitý problém. Ale tohle..no

Nahlásit jako SPAM
IP: 89.176.141.–
forstec
KIIV
~ Moderátor
+43
God of flame
7. 12. 2008   #17
-
0
-

To forstec : no hlavne ze mu to zpusob reseni vypisuje rovnou za chybou....
ikdyz pokud to nema na localhostu tak by to mohlo byt horsi :)))

Nahlásit jako SPAM
IP: 77.237.136.–
Program vždy dělá to co naprogramujete, ne to co chcete...
TopicMan
~ Anonymní uživatel
14 příspěvků
7. 12. 2008   #18
-
0
-

Tak například pro mě, jako naprostého začátečníka v oblasti AsP.net je to poravdu " jóóóó složitý problém" ._)

Nahlásit jako SPAM
IP: 85.207.101.–
7. 12. 2008   #19
-
0
-

To KIIV : Ono záhadné "~/" vrací relativní cestu vzhledem k rootu ASP.NET aplikace (tj. složka, která je jako root nastavená na IIS serveru).

BTW: Na localhostu mu to funguje, na hostingu nikoliv. Pokud nepůjdou změnit práva k adresáři přes FTP, tak nezbývá než kontaktovat technickou podporu a to obvykle nedělá problém.

Nahlásit jako SPAM
IP: 84.21.124.–
Dušan Janošík | web: djanosik.cz, @djanosik
TopicMan
~ Anonymní uživatel
14 příspěvků
7. 12. 2008   #20
-
0
-

Takže chyba není na mojí straně???

Tak to jsemji oddychl.

Díky

Nahlásit jako SPAM
IP: 85.207.101.–
TopicMan
~ Anonymní uživatel
14 příspěvků
7. 12. 2008   #21
-
0
-

A nebude vadit, když to budu řešit takto?

this.AddPrivatePhotoFileUpload001.PostedFile.SaveAs(Server.MapPath("~/Fotogalerie/" + this.AddPrivatePhotoFileUpload001.FileName));

Jedná se o tom že tam přidám PostedFile


MOc díky

Nahlásit jako SPAM
IP: 85.207.101.–
7. 12. 2008   #22
-
0
-

To TopicMan : A co to zkusit? Neříká ti intuice, že se jedná o totéž?

Nahlásit jako SPAM
IP: 84.21.124.–
Dušan Janošík | web: djanosik.cz, @djanosik
TopicMan
~ Anonymní uživatel
14 příspěvků
8. 12. 2008   #23
-
0
-

díky

Nahlásit jako SPAM
IP: 85.207.101.–
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, 92 hostů

 

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