Avatar billede causasui Nybegynder
19. marts 2003 - 17:14 Der er 9 kommentarer og
1 løsning

if else problem

Kan simpelthen ikke gennemskue det!!!!!

Har følgende lidt forsimplet kode:

if(isset($userfile_d))
{
valider på fil1.
}
elseif(isset($userfile_e))
{
valider på fil2
}
else
{
header location send brugeren tilbage
}
Avatar billede schaefner Juniormester
19. marts 2003 - 17:22 #1
Prøv:

if (isset($_FILES['userfile_d']['name'])) {
valider på fil1.
} elseif(isset($_FILES['userfile_e']['name'])) {
valider på fil2
} else {
header location send brugeren tilbage
}
Avatar billede schaefner Juniormester
19. marts 2003 - 17:22 #2
Og hvad får du iøvrigt af fejl og deslignende? :)
Avatar billede causasui Nybegynder
19. marts 2003 - 17:31 #3
Det hjalp lidt. Det hele burde være en smal sag, men et eller andet har jeg stirret mig blind på.
Hvis jeg fjerner min else sætning fungerer det som det skal, men det er kun hvis brugeren husker at vælge en fil til upload. Hvis ingen vælges ja så skal else sætningen træde i kraft.
Først så blev else sætningen hele tiden aktiveret!!
Efter dit forslag kan jeg nu vælge fil1 og så virker det men hvis jeg vælger fil 2 virker det ikke så det er jo nok der fejlen ligger prøver lige at debugge lidt mere!!!
Avatar billede schaefner Juniormester
19. marts 2003 - 17:41 #4
Har du husket at kalde dit andet upload-felt det rigtige? Altså userfile_e?
Avatar billede causasui Nybegynder
19. marts 2003 - 17:43 #5
Ja det har jeg men det hele opfører sig som om jeg ikke har!!
Men hvis jeg tjekker og echo'er variablen  echo $_FILES['userfile_e']['name']; ja så er den der !!! det giver ingen mening !
Avatar billede schaefner Juniormester
19. marts 2003 - 17:46 #6
Ellers så prøv lige:

if ($_FILES['userfile_d']['name'] != "") {
  valider på fil1.
} elseif($_FILES['userfile_e']['name'] != "") {
  valider på fil2
} else {
  header location send brugeren tilbage
}
Avatar billede causasui Nybegynder
19. marts 2003 - 17:47 #7
Der er sgu fordi at isset($_FILES['userfile_d']['name'] også på en eller anden måde også bliver sat, men bliver valideret og melder fejl derfor ser det ud som om det er else funktionen der aktiveres. Men jeg kan se at header location bliver aktiveret inde i if (isset($_FILES['userfile_d']['name'])) {
Avatar billede causasui Nybegynder
19. marts 2003 - 17:52 #8
dette her er vel rigtigt?
<td><input type="file" name="userfile_e" class="box_file"/></td>
Avatar billede causasui Nybegynder
19. marts 2003 - 17:59 #9
Ja så virker det sgu, men jeg fatter ikke intet af hvorfor det ikke gjorde før. Jeg bruger (isset) ved alle mine forms og har aldrig haft probs med det!!
Så vidt jeg ved er det mest korrekte være: 
if(isset($_FILES['userfile_d']['name']) && $_FILES['userfile_d']['name'] != "")
Men tusind tak for hjælpen, pyha den var sgu irriterende
Avatar billede causasui Nybegynder
19. marts 2003 - 18:00 #10
hmmm ikke intet, jeg mente selvfølgelig bare "intet"
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester