rundbergMedlem sedan mars 2007138 inlägg
Jag har kopplat mitt formulär till en php-fil med innehållet
<?php
if ($_FILES["file"]["error"] > 0)
{
echo "Return Code: " . $_FILES["file"]["error"] . "<br />";
}
else
{
echo "Upload: " . $_FILES["file"]["name"] . "<br />";
echo "Type: " . $_FILES["file"]["type"] . "<br />";
echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />";
if (file_exists("upload/" . $_FILES["file"]["name"]))
{
echo $_FILES["file"]["name"] . " already exists. ";
}
else
{
move_uploaded_file($_FILES["file"]["tmp_name"],
"upload/" . $_FILES["file"]["name"]);
echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
}
}
?>
Jag har en text area med namnet "file" och min fomr tagg ser ut så här:
<form action="upload_file.php" method="post" enctype="multipart/form-data">
När jag trycker på min "skicka" knapp går php skripet igån som skall ladda upp filen, men det visasd bara:
Upload:
Type:
Size: 0 Kb
Temp file:
already exists.
på skärmen, och filen laddas inte upp till min "upload" mapp.- Vad har jag gjort för fel?
colioneMedlem sedan juni 20013 386 inlägg
Vad har du för rättigheter på mappen?
rundbergMedlem sedan mars 2007138 inlägg
jag satte precis rättigheterna till 777 utan resultat.
Skall koden i sig fungera? är inte så haj på php och har kopierat och modifierat koden lite firån w3:
http://www.w3schools.com/php/php_file_upload.asp
det upload scriptet är för bilder, men tog bort den del av scriptet som sades kontrollera vilken fil typ så jag inte behöver en kontroll.
colioneMedlem sedan juni 20013 386 inlägg
Det känns inte som om du får upp nån fil öht, med tanke på ditt resultat. Hur ser ditt formulär ut?
rundbergMedlem sedan mars 2007138 inlägg
mitt formulär ser ut så här...
<form action="upload_file.php" method="post" enctype="text/plain">
<textarea id="file" name="file" height: 400px; width: 600px;">
</textarea>
<script language="javascript1.2">
generate_wysiwyg('file');
</script>
<input type="submit" name="submit" value="Submit" />
</form>
@ndersMedlem sedan juni 200026 914 inlägg
Du kan inte ladda upp filer med text/plain som enctype. Du skall använda multipart/form-data.
rundbergMedlem sedan mars 2007138 inlägg
okej tack för svar, men jag har testat det också utan resultat. så inga fler förslag?
colioneMedlem sedan juni 20013 386 inlägg
Vad händer om vi för nöjes skull gör om textarean till en input type="file"
@ndersMedlem sedan juni 200026 914 inlägg
Ja det tänkte jag inte ens på. Man måste ju ha en input type="file" för att kunna skicka en fil...
rundbergMedlem sedan mars 2007138 inlägg
Return Code: 4 får jag då istället
PeddaMedlem sedan juni 20004 880 inlägg
Kod 4 är att filen inte laddades upp
testa att skriva ut för mer debuginfo
echo '<pre>';
print_r($_FILES);
print "</pre>";
rundbergMedlem sedan mars 2007138 inlägg
vad skall jag skriva det?, är väldigt ny på php
PeddaMedlem sedan juni 20004 880 inlägg
Direkt efter return code:.....
echo "Return Code: " . $_FILES["file"]["error"] . "<br />";
echo '<pre>';
print_r($_FILES);
echo '</pre>';
rundbergMedlem sedan mars 2007138 inlägg
Då får jag denna text utskriven
Return Code: 4
Array
(
[file] => Array
(
[name] =>
[type] =>
[tmp_name] =>
[error] => 4
[size] => 0
)
)
PeddaMedlem sedan juni 20004 880 inlägg
Hmm, helt tomt ju.
Testa att ändra (har lagt till / framför upload)
if (file_exists("/upload/" . $_FILES["file"]["name"]))
Och hur ser forumuläret ut nu?
Har du multipart/form-data och input type="file"?
<form action="upload.php" method="post" enctype="multipart/form-data">
<input type="file" name="file" id="file" >
<br />
<input type="submit" name="submit" value="Submit" >
</form>
colioneMedlem sedan juni 20013 386 inlägg
4 betyder att ingen fil blev uppladdad.
http://se2.php.net/manual/en/features.file-upload.errors.php
Vilket vi även ser på i array du skrev ut.
hur ser ditt formulär ut nu?
PeddaMedlem sedan juni 20004 880 inlägg
Förresten, hur stor är filen du försöker ladda upp?
Har för mig att $_FILES blir tom om filen är större post_max_size i php.ini
(post_max_size ska vara högre än upload_max_filesize)
colioneMedlem sedan juni 20013 386 inlägg
En liten instickare är att om du kör på one.com kommer du ej heller att få ändra dessa storlekar. Och att de kör php i safe mode.
har för mig att du har sagt det tidigare.
rundbergMedlem sedan mars 2007138 inlägg
hmm, jag har inte tillgång till mina filer just nu, och kommer antgligen inte ha det tills imorgon. Hör av mig då om jag inte lycas lösa det tills dess. Tack för alla svar än så länge. Jahg komemr vänta med att markera tråden som löst tills imorgon när jag vet hur det går.
//Rundberg
rundbergMedlem sedan mars 2007138 inlägg
har löst problemet. Tillslut blev det att jag skciakr det till email istället. Kan nog få till en upload funktion nu också
'
tack för all hjälp