Autor | Zpráva | ||
---|---|---|---|
radas Profil * |
#1 · Zasláno: 17. 2. 2009, 21:43:44
Zdarvím
mam takový upload vice fotek najednout <input type="file" name="obr[]" /> $nazev=StrTr($_POST["nadpis"]. "_".$_POST["nazev"],$prevodni_tabulka); //prevodni_tabulka me zbavuje české diakritiky atd... if (isset ($_FILES['obr']['name'])) : $pripona = pathinfo($_FILES['obr']['name'][$n], PATHINFO_EXTENSION); for ($n = 0; $n < count($_FILES['obr']['name']); $n++) { if ($pripona == "jpg" or $pripona == "JPG") { $soubor = $n . "_" .$nazev.".". $pripona; if (move_uploaded_file($_FILES['obr']['tmp_name'][$n], "../file/" . $zaznam['id'] . "/".$soubor)) echo $upload_ok; else echo $upload_ko; }} endif; celý skript funguje dobře v FF Opeře IE6 ale IE 7 nahraje jen jednu fotku a nevím proč |
||
radas Profil * |
#2 · Zasláno: 17. 2. 2009, 21:44:58
ještě $zaznam['id'] mam z db to je vpohodě..
|
||
AM_ Profil |
#3 · Zasláno: 17. 2. 2009, 21:45:54
předpokládám, že jsi zkusil print_r($_FILES['obr']), viď?
|
||
radas Profil * |
to jsem zkusil ale vypisuje tam jen info o jednom souboru
Array ( [name] => Array ( [0] => 0@Opel_Vectra.JPG ) [type] => Array ( [0] => image/pjpeg ) [tmp_name] => Array ( [0] => ../Temp/php4E.tmp ) [error] => Array ( [0] => 0 ) [size] => Array ( [0] => 78183 ) ) a měly se nahrat více souboru |
||
AM_ Profil |
#5 · Zasláno: 18. 2. 2009, 08:14:20
zkus pastnout víc HTML kódu nebo link na stránku, jestli ti do $_FILES dorazí jen jeden soubor, musí být chyba někde v tom, jak IE7 chápe tvůj kód
|
||
radas Profil * |
#6 · Zasláno: 18. 2. 2009, 19:20:17
no form vypada tak to
<form name="formatovani" action="pridat.php" method="post" enctype="multipart/form-data" onsubmit="return check(this);post.disabled=true;"> <input type="text" name="nadpis" size="20" /> <ul id="fotky"> <li id="li1"> <input type="file" name="obr[]" /> </li> </ul> <a href="javascript:addNewInput('fotky');">Další obrázek</a><br /> tak mě napadlo že problém bude asi v js který se načina na začatku stránky a vypada takto var pocet = 1; function addNewInput(e) { pocet++; // LI element newLi = document.createElement("li"); newLi.id = "li" + pocet; // INPUT element newInput = document.createElement("input"); newInput.type = "file"; newInput.name = "obr[]"; // A element newLink = document.createElement("a"); newLink.href = "javascript:removeInput(" + pocet + ");"; newLink.setAttribute('class', 'adminmenu' ); newLink.innerHTML = "Smazat tento obrázek"; // Complete new element newLi.appendChild(newInput); newLi.innerHTML += " "; newLi.appendChild(newLink); // Add to page document.getElementById(e).appendChild(newLi); } // Remove DIV element containig INPUT and A elements function removeInput(id) { pInput = document.getElementById('li' + id); pInput.parentNode.removeChild(pInput); } function visibleAnswers(e) { //Elements default var defaultAnswers = 2; for (i = 1; i <= defaultAnswers; i++) { newLi = document.createElement("li"); newLi.id = "li" + i; newInput = document.createElement("input"); newInput.type = "file"; newInput.id = "o[]"; newInput.name = "o[]"; newLi.appendChild(newInput); newUl.appendChild(newLi); } document.getElementById(e).appendChild(newUl); } ale nevím nejsem si jisty.. |
||
Chamurappi Profil |
#7 · Zasláno: 18. 2. 2009, 19:42:40
Reaguji na radase:
Opravdu ti tento skriptu fungoval správně v Exploreru 6? Tipnul bych si, že nikoliv. Uprav výrobu uploadovacích <input>ů takto: var newInput; try { newInput = document.createElement("<input type='file' name='obr[]'>"); } catch(e) { newInput = document.createElement("input"); newInput.type = "file"; newInput.name = "obr[]"; } |
||
radas Profil * |
#8 · Zasláno: 18. 2. 2009, 20:23:50
Chamurappi
děkuji opravdu mi to fungovalo..a ja jsem si nevšilm že jsem si to přejmenoval ...a protože ten js je v externím souboru tak jsem na to nemyslel..děkuji za pomoc.... |
||
Časová prodleva: 3 dny
|
|||
radas Profil * |
#9 · Zasláno: 21. 2. 2009, 19:34:58
Chamurappi
trochu jsem tě nepochopil...snažil jsem se to upravit a vysledek je že to jede tedy pod IE i pod FF ale teď mi to zase nechce schroustat Opera moje uprava var pocet = 1; function addNewInput(e) { pocet++; // LI element newLi = document.createElement("li"); newLi.id = "li" + pocet; // INPUT element newInput = document.createElement("<input type='file' name='obr[]'>"); // A element newLink = document.createElement("a"); newLink.href = "javascript:removeInput(" + pocet + ");"; newLink.setAttribute('class', 'adminmenu' ); newLink.innerHTML = "Smazat tento obrázek"; // Complete new element newLi.appendChild(newInput); newLi.innerHTML += " "; newLi.appendChild(newLink); // Add to page document.getElementById(e).appendChild(newLi); } // Remove DIV element containig INPUT and A elements function removeInput(id) { pInput = document.getElementById('li' + id); pInput.parentNode.removeChild(pInput); } function visibleAnswers(e) { //Elements default var defaultAnswers = 2; for (i = 1; i <= defaultAnswers; i++) { newLi = document.createElement("li"); newLi.id = "li" + i; newInput =document.createElement("<input type='file' name='obr[]'>"); newLi.appendChild(newInput); newUl.appendChild(newLi); } document.getElementById(e).appendChild(newUl); } tento kod neni můj našel jsem to někde na netu(samo bez nějakého popisu)...a nevím proč to Opera nejede... |
||
Chamurappi Profil |
#10 · Zasláno: 22. 2. 2009, 03:11:26
Reaguji na radase:
Použij na výrobu <input>u ten kód, který jsem uvedl. Samozřejmě celý, ne jen jeden řádek z něj. |
||
radas Profil * |
#11 · Zasláno: 22. 2. 2009, 11:11:20
Chamurappi
děkuji už to funguje tak jak ma... |
||
Časová prodleva: 15 let
|
0