Jump to content
php.lv forumi

Userfile


novaks

Recommended Posts

Sveiki.

 

Kāds varētu lūdzu pateikt kā ar formu palīdzību es vienlaicīgi tabulā un failā varētu ievietot kādas 10 bildes. Ar vienu viss sanāk bet kā pielieku klāt lai vienlaicīgi ievieto divas bildes un vairāk tā neieliekas vispār ne viena.

 

Help...

Link to comment
Share on other sites

Nē es gribu bildes ievadit tā pat kā tekstu (Piem. Virsraksts, teksts, ievads, bilde u.t.t. ievada vienlaicigi ar vienas formas palidzibu),ja meģinu viena forma ielikt divas bildes vai vairāk tad nekā nesanāk,jo userfile ir tikai viens.

 

Ceru ka sapratāt.

Link to comment
Share on other sites

Paldies par atbildēm,es kaut ko sameistaroju.(protams kods ir garš un nepārskatāms bet tas tā sākumam kamēr saprotu kas un kā darbojas).

 

if (!empty($pievbildes)) {

$prefix = time();

$_FILES['userfile']['name'][0] = $prefix.$_FILES['userfile']['name'][0];

$dest0 = $PicturePath.$_FILES['userfile']['name'][0];

move_uploaded_file($_FILES['userfile']['tmp_name'][0], $dest0);

}

 

Bet tagad ir cita problēma:

Lieta tāda ka tās bildes es gribētu pievienot kādas 14. uzreiz, bet protams ne vienmēr es peivienošu visas bildes 14. bet teiksim tikai 5.bildes.

Ko man tas tagad nozīmē... katrai jātaisa pārbaude 'if(!emty)' ??? Tad jau sanāk baigi garais un neparskatāms kods..

 

Varbūt .. nē noteikti kāds ir ar šo saskāries ... vai kāds varētu ko ieteikt???

Link to comment
Share on other sites

Viens ir, tu vari ar JavaScript uzģenerēt papildus <input type="file"...

Tas ir piemēram tev ir poga, kuru tu nospiežot tev pieliekas jauns <input type="file"...

 

Otrs variants ir to pašu darīt ar php, vienīgi tad tev vajadzēs pacīnīties vairāk un cik es saprotu tu negribi lai tev būtu vairākas reizes jāsūta dati turpu šurpu, bet gan viss lai notiek klienta pusē un beigās tiek nosūtīts viens liels gabals.

Link to comment
Share on other sites

for (x=0; x<sizeof($_FILES['userfile']['size']); x++){
if($_FILES['userfile']['size']){
//darām to kas jādare, ja fails atsūtīts
}
else{
//darām to, kas jādara, ja fails nav atsūtīts
}
}

Edited by Aleksejs
Link to comment
Share on other sites

iekš $_FILES pie katra faila tiek propertijs error (un size, kā rakstīts agrāk). Ja errors ir 0 - fails ir ticis uploadēts, ja nē - errors ir kaut kas no 1 līdz 4 (manuālī var palasīties, ko katrs errors nozīmē). Būtībā tev jātaisa vai nu tā, ka tu zini, ka var būt max 15 uploadi un tad tu visiem čeko, vai tāds $_FILES...[1...15] un vai viņam errors nav 0, tad move_uploaded_files otrs - daudz ģenerālāks veids ir taisīt foreach. Problēma tik vien, ka tas $_FILES veidojas gļukaini (nevis n-cik "failu masīvu" ar name, tmp_name, size, error, type un kas tur vēl, bet gan error un tur iekša tie 15 masīvelementi katram failam, piem.).

Link to comment
Share on other sites

for (x=0; x<sizeof($_FILES['userfile']['size']); x++){
if($_FILES['userfile']['size']){
//darām to kas jādare, ja fails atsūtīts
}
else{
//darām to, kas jādara, ja fails nav atsūtīts
}
}

Te gadijumā nevajag..???

 

if($_FILES['userfile']['size'][x]){

Link to comment
Share on other sites

Nu nesanāk man nekā.

Jau divas nedēļas mēģinu ... bet nekādīgi nevaru uztaisīt to nolēdēto formu.

 

Paldies par atbildēm ... bet es no viņām neko nesaprotu ... drošvien ka Jums profi viss ir skaidrs un pietiek ar tām īsajām atbildēm bet man :( ...

 

Varbūt kāds varētu ieteik kādu tutorial

Link to comment
Share on other sites

sāksim no sākuma.

 

māki uzrakstīt formu ar mewthod="post" un enctype="multipart/form-data", kurā ir kāds <input type="file" />?

māki apstrādāt vismaz 1 faila uploādu?

māki saprast, kas atrodas iekš

echo '<pre>';

print_r($_FILES);

echo '</pre>' ;

pēc tam, kad esi izvēlējies failu un nospiedis submit?

 

tad uztaisi vēl vienu input ar citu nosaukumu un paskaties, kas mainās.

Link to comment
Share on other sites

×
×
  • Create New...