Skumt problem som fan här..
Hlet plötsligt har header('location') funtionen slutat fungera på en sida med explorer. Det funkar i Mozilla. Det funkar inte ens om jag byter ut adressen ill en enkel utan get-variabler nu. Vad är det för fel?
Nope, det är inte där felet ligger tydligen. Utan i form taggen verkar det som. Det är nämligen en filuppladdning det är frågan om. När jag skriver:
<form name="form1" method="POST" action="mm_upload1.php" enctype="multipart/form-data">
funkar INTE headern men om jag skriver:
<form name="form1" method="POST" action="mm_upload1.php"> funkar headern, fast då funkar ju inte filuppladdningen!! Dilemma...vadgöra?
helt sjukt detta! alltså det är ju inget php-fel! jag får följande sida i explorer 7 (ej i någon annan version):
Internet Explorer cannot display the webpage
Most likely causes:
You are not connected to the Internet...osv.
Och den försöker inte ens ladda en sida, den hoppar direkt till denna felsida. Vad jag gör är att ladda upp en mp3-fil till servern. Om fuktionen returnerar false ska den redirecta tillbaks till uppladdningssidan.
Lite mer kod
if($_POST['upload']){
$myUploadobj = new UPLOAD; //creating instance of file.
$upload_dir="songs";
$songtitle = $_POST['songtitle'];
// use function to upload file.
$file=$myUploadobj->upload_file($upload_dir,'file',true,true,0,"mp3",$songtitle);
if($file==false){
//echo $myUploadobj->error;
header('Location: mm_upload1.php?error='.urlencode($myUploadobj->error).'&songtitle='.urlencode($_POST['songtitle']).'&language='.$page_text->language.'&text='.urlencode($_POST['text']).'&music='.urlencode($_POST['music']).'&genre='.urlencode($_POST['genre']).'&info='.urlencode($_POST['info']).'&alias='.urlencode($_POST['alias']).'&publisher='.urlencode($_POST['publisher']).'&mix='.urlencode($_POST['mix']).'&production='.urlencode($_POST['production']).'');
exit();
}else{
//Success
header ('Location: mm_upload2.php?language='.$page_text->language.'&songtitle='.$songtitle.'&song_id='.$latestsong_id.'');
}
}
Inte ens om uploaden är successfull funkar redirecten (samma sak händer), vilket den dock gjorde förut men jag har inte ändrat något. Kan det vara något på min dator som spökar i Explorer? NOTERA ATT header('location') FUNKAR OM INTE FORMULÄRET ÄR enctype="multipart/form-data" , och alltså på typ alla andra sidor.
Kan det vara så att du har <input type="file" name="upload"> ?
Då finns där ingen $_POST['upload'] när du använder enctype="multipart/form-data". Däremot har du då en $_FILES['upload'].
nä filfältet heter "file" och det är submitknappen som heter "upload". Alltså den gå alltid in i if-satsen som känner av om formen är postad,det är först när den kommer till header('location') raden det fuckar ur. Jag skrev ut alla formulärdata, men då fick jag slänga in en exit() in header('location') raden såklart. I detta fallet lämnade jag filfältet tomt. Dessutom finns det två filfält ja, men det är två instanser av uppladdningsklassen som används och jag har testat att bara köra med det ena med.
Du har "[error] => 4". Tar vi en titt på vad ditt felmeddelande betyder får vi "No file was uploaded".
Vad det är som spärrat här vet jag inte, men när PHP körs finns där ingen fil uppladdad. Kan det finnas någon spärr i själva webbservern som gör att du inte kan ladda upp filer?
Vad det gäller din header.
Har du din felvisning påkopplad (enligt mitt förslag) så ska antingen din header fungera eller ska du få ett felmeddelande. I annat fall körs över huvud taget inte din header().
Glöm inte att allt funkar PERFEKT med Firefox samt andra versioner av Explorer. Därför borde det inte ha med php:n att göra. Snarare webbläsaren tillsammans med min lösning. Alltså inga problem med filuppladdningen.
Matte..har du f-skatt? Du kan få 500 spänn + moms om du löser det.
Tja,
Jag lägger den här http://www.souled.se/Tillmatte.rar Sidan du ska starta är mm_upload1.php?login=vadsomhelst
har disablat det du inte behöver i koden samt tagit bort lite shit. Men glöm inte att starta sidan med login som get variabel.
Kopplade på alla felmeddelande, opch testade ditt skript och konstaterade att hela skärmen var full av felmeddelanden.
Orkade inte fixa till dom, utan testade vad som skulle hända vid uppladdning.
Båda i Firefox och IE7 försökte den skicka vidare till mm_upload2.php. Men detta gick inte p.g.a. att filen inte fanns. Skillnaden var att i Firefox visades den felaktiga adressen i adressfältet, medan IE7 behöll den gamla adressen i adressfältet.
Ok, så du menar att header('location') funktionen fungerade hos dig? Även vid felaktig uppladdning? Testa att lämna uppladdningsfältet tomt eller ange fel filtyp.
Lämnar jag uppladdningsfältet tom får jag Javascript-meddelande om att jag måste välja fil.
Väljer jag felaktig filtyp får jag tillbaka att filtypen inte var godkänd.
Va fan..då är det något med min datorkonfiguration som spökar. Så som du beskriver är precis så det är tänkt att det ska funka! Ska testa på andra datorer med IE7 för att va säker. Tack för din tid iaf :)
Kan du lägga upp det på en server någonstans så kan flera testa mot det, och därmed kan du få en hint om det är i webbläsaren eller servern problemet ligger.
132 ms totalt · 3 externa anrop · v20260731065814-full.b746b907