Jump to content
php.lv forumi

fails netiek augšupielādēts dēļ neatļautiem simboliem faila nosaukumā


pilots tims

Recommended Posts

Sveiki tauta !!!

 

Kāds var pastāstīt, no kā atkarīgs, kādi simboli nedrīkst būt faila nosaukumā un īsti kuri, lai tas veiksmīgi augšupielādētos? Man daži simboli kā punkts un apaļās iekavas jau patraucējuši.

viis atkariigs no OS, izvairiities no netljautu simbolu izmantoshanas principali nav iespejams, jo nekad nezinasi ko Useris sastradaajis, toties pie fila saglabasanas uz servera gan var parbaudiit vai nav netljautu simbolu,

par pashiem simboliem atljau izmantot tikia a-z0-9_ parejos neizmanto (nu punkts kaa paplasinajuma adaliitajs ;) )

tad problemu nebuus neviena OS

--

pie augshupielades sakotneji fails tiek saglabats kaa TEMP piedevam nosaukumu generee OS, pasha faila nosaukums glabajas citaa Masiva _FILES[] daljaa, kuru tad arii parbaudi, ja nepiecieshams korigee nosaukumu un tad saglabaa ...

Link to comment
Share on other sites

Cau visiem, būtu pateicīgs, ja kāds palīdzētu noslīpēt manu ideju, jo sito problēmu gribu kārtīgi atrisināt.

 

1) Domāju pielietot variantu ar preg_replace, kad visus simbolus nosaukumā (daļa, kas ir pirms punkta ar paplašinājumu) noņem, izņemot a-z, 0-9, "_". Tas varētu būt pieņemami, jeb tomēr kādu vajadzētu vēl atļaut ? Iespējams, ka tas ir garām priekš valodām, bet īsti nezinu.

2) Kā ir vispār ar dažādu valodu simboliem ? Arī atkarīgs no servera uzstādījumiem ? Vērts vispār iespringt par valodām ?

Link to comment
Share on other sites

kaa jau wolfs teica

fails tiek saglabats kaa TEMP piedevam nosaukumu generee OS,

 

tad kad parvietosi failu uz sev veelamo vietu.. tu jau arii gribeesi, lai šis faila nosaukums ir uniklāls, ja tie atrodas vienā mapē.. tad pats labāk izmanto sevis izveidotu shēmu kas ražo faila nosaukumus ar tevis izvēlētajiem simboliem.. un ražo tā lai tie neatkārtojas..

 

kā pats minēji ja izņemsi tikai nederīgos simbolus tad faila nosaukumi var attkārtoties.. sakarītība vienmēr var atrasties..

Link to comment
Share on other sites

tad kad parvietosi failu uz sev veelamo vietu.. tu jau arii gribeesi, lai šis faila nosaukums ir uniklāls, ja tie atrodas vienā mapē.. tad pats labāk izmanto sevis izveidotu shēmu kas ražo faila nosaukumus ar tevis izvēlētajiem simboliem.. un ražo tā lai tie neatkārtojas..

 

kā pats minēji ja izņemsi tikai nederīgos simbolus tad faila nosaukumi var attkārtoties.. sakarītība vienmēr var atrasties..

principaa vienmer japarbauda vai dotais nosaukums jau nav aiznjemts, ja ir td Es pievienotu prieksa kadu skaitli

~~ shadi

// $fails = ir pilns celjsh (tur kur glabasies) + nosaukums 
$fails=$celjsh_pilns.$nosaukums;
$i=0;
while(file_exists($fails))
{
$i++;
$fails=$celjsh_pilns.$i.'_'.$nosaukums;
}
if ($i!=0)
{
$nosaukums=$i.'_'.$nosaukums; 
}

Link to comment
Share on other sites

par valodām runājot, cik jums bieži ir vajadzējis, lai ar krievu simboliem vai citu valodu simboliem var saglabāt ?

20/80 ;) [20- vajag 80 nevajag {vismaz 80% gadijumos taas ir bildes, kuras nav paredzetas augsupielaadei} ]

ja tie ir USER faili, kas paredzeti augsupieladei tad gandriiz 99,9%

ja vajag adod failu useriem tad realo faila nosaukumu glabaa DB, jo NEKAD nezinasi kaadu nosaukumu kas uzliks.. bet idejiski talak taa jau buus vinju problema, nevis tavejaa ...

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...