Avatar billede topnut Nybegynder
14. maj 2002 - 20:32 Der er 35 kommentarer og
1 løsning

Hvorfor notice?

Hej jeg har dette stykke kode:

<?PHP
if (file_exists("$vis")) {
    include("sider/forside.php");
}
else if (file_exists("sider/$vis.php")) {
    include("sider/$vis.php");
}
else {
echo "siden kunne ikke findes";
}
?>

Hvis I ikke kan se hvad dette script gør så kommer der en forklaring her. Altså du kan skrive fx. index.php?vis=filnavn, og hvis filen findes includes den. Derimod skal den vise forside.php hvis man slet ikke skriver ?vis=filnavn men bare index.php

Det virker faktisk! - Men hvordan slipper jeg af med denne notice/fejl:

Notice: Undefined variable: vis in

Håber i kan og vil hjælpe
Avatar billede kalium Nybegynder
14. maj 2002 - 20:37 #1
<? 
if (empty($vis)) $vis="forside.php"; 

if (file_exists("sider/$vis")) { 
include("$vis"); 
} else {   
echo "siden kunne ikke findes";
}
?>
Avatar billede topnut Nybegynder
14. maj 2002 - 20:43 #2
virker ikke får en masse andre fejl...
Avatar billede erikjacobsen Ekspert
14. maj 2002 - 20:58 #3
if (isset($vis) && file_exists("$vis")) {
    include("sider/forside.php");
}
else if (isset($vis)&& file_exists("sider/$vis.php")) {
    include("sider/$vis.php");
}
else {
echo "siden kunne ikke findes";
}
Avatar billede kalium Nybegynder
14. maj 2002 - 21:06 #4
erikjacobsen >>
Den ville ikke virke, fordi den ville include fx about.php.php, hvis index.php?vis=about.php.

topnut >>
Hvilke fejl?
Avatar billede topnut Nybegynder
14. maj 2002 - 21:09 #5
hjalp desværre ikke...jeg prøvede med første isset til empty og omvendt!

Hmm...der må vel være andre slags include scripts som er enklere? - Bare så længe jeg kan slippe for den notice
Avatar billede erikjacobsen Ekspert
14. maj 2002 - 21:17 #6
Jamen den er jo liiidt håbløs, den første ifsætning. Du mener vel bare:

if (!isset($vis)) {
Avatar billede kimg Nybegynder
14. maj 2002 - 21:31 #7
Kan du bruge det her

Kim

if(file_exists("$vis")) {
      include ("$vis");
      } else {
      include("forside.php");
      }
Avatar billede topnut Nybegynder
14. maj 2002 - 21:31 #8
Jeg får heletiden: siden kunne ikke findes i dit eksempel kalium
Avatar billede topnut Nybegynder
14. maj 2002 - 21:33 #9
kimg >> Hjalp ikke, og huske forside.php ligger i en mappe kaldet sider
Avatar billede kalium Nybegynder
14. maj 2002 - 21:34 #10
topnut >>
Hvilken url bruger du? index.php?vis=about.php eller index.php?vis=about?
Avatar billede kimg Nybegynder
14. maj 2002 - 21:34 #11
if(file_exists("$vis")) {
      include ("$vis");
      } else {
      include("sider/forside.php");
      }
Avatar billede topnut Nybegynder
14. maj 2002 - 21:49 #12
jeg bruger: ?vis=about

Det var jo det som jeg startede med i mit eget script - så derfor lå det vel naturligt at skrive det.
Avatar billede kalium Nybegynder
14. maj 2002 - 22:09 #13
topnut >>
<? 
if (empty($vis)) $vis="forside.php"; 

if (file_exists("sider/$vis.php")) { 
include("$vis.php"); 
} else {   
echo "siden kunne ikke findes";
}
?>
Avatar billede kalium Nybegynder
14. maj 2002 - 22:10 #14
Hov, glemte lige 'Hvis du vil bruge index.php?vis=about skal du bruge:' i starten. ;)
Avatar billede erikjacobsen Ekspert
14. maj 2002 - 22:25 #15
Roder I stadig med dette??? Svaret er jo givet, men ok da. I større detalje

if (!isset($vis)) {
  include("sider/forside.php");
} else if (file_exists("sider/$vis.php")) {
  include("sider/$vis.php");
} else {
  echo "siden kunne ikke findes";
}
Avatar billede topnut Nybegynder
14. maj 2002 - 22:33 #16
kalium >> der står stadigvæk bare "siden kunne ikke findes" heletiden.

erik >> sorry at sige det, men den siger til min glæde ingen notice - men til gengæld viser den ingen side...
Avatar billede erikjacobsen Ekspert
14. maj 2002 - 22:37 #17
Viser ingen side, eller siger "siden kunne ikke findes" ??
Avatar billede topnut Nybegynder
14. maj 2002 - 22:41 #18
den viser bare ingen side...
Avatar billede erikjacobsen Ekspert
14. maj 2002 - 22:42 #19
det kan jo ikke lade sig gøre *gg* - nu er jeg nysgerrig.... er det med eller
uden ?vis=noget. Hvad siger den hvis du skriver noget, der ikke er
en includefil?
Avatar billede topnut Nybegynder
14. maj 2002 - 22:47 #20
jeg er syg i hovedet :) - nu virkede det lige pludselig

svar tak... :)
Avatar billede kalium Nybegynder
14. maj 2002 - 22:51 #21
Småkager til mig!
Jeg lavede en bommert. ;)
Vi prøver igen:
<? 
if (empty($vis)) $vis="forside.php"; 

if (file_exists("sider/$vis.php")) { 
include("sider/$vis.php"); 
} else {   
echo "siden kunne ikke findes";
}
?>
Avatar billede topnut Nybegynder
14. maj 2002 - 22:54 #22
Det er sq så underligt! - Når jeg ser det localhost har der faktisk aldrig været nogle problemer, men når jeg lægger scriptene på mit webhotel synes jeg heletiden der er lidt galt :(
Avatar billede erikjacobsen Ekspert
14. maj 2002 - 23:05 #23
Link til din side på webhotel?
Avatar billede topnut Nybegynder
14. maj 2002 - 23:26 #24
den er rimelig hemmelig sorry...
Avatar billede erikjacobsen Ekspert
14. maj 2002 - 23:28 #25
Ville bare checke lidt på PHP-version og sådan. Bruger den
PHP 4.2.0  så kan $vis være tom (afhængigt af opsætning naturligvis)

Er den knap så hemmelig kan du - undtagelsesvist - sende til mig via
linket i mit minisite.
Avatar billede topnut Nybegynder
14. maj 2002 - 23:42 #26
Avatar billede erikjacobsen Ekspert
14. maj 2002 - 23:48 #27
Hmm, teaminternet er ikke særligt glade for at fortælle hvilken version af PHP de kører

Hvad udskriver

  print "$vis - ".$_GET{'vis']:"<br>";

hvis du kalder siden med  ...?vis=etellerandet
Avatar billede erikjacobsen Ekspert
14. maj 2002 - 23:54 #28
Sorry - læste det som 10m.dk *gg*
Det er jo hos cliche...
Avatar billede erikjacobsen Ekspert
14. maj 2002 - 23:58 #29
og hos cliche virker der $-variabler da - på en anden af deres
Windows servere.
Avatar billede topnut Nybegynder
15. maj 2002 - 09:12 #30
hmm...synes det er ret irreterende at jeg skal lave det hele om når det skal ud på inet :(

Har end da prøvet:

<?PHP
    echo "$_GET[vis]";
if (!isset($vis)) {
  include("sider/forside.php");
} else if (file_exists("sider/$_GET[vis].php")) {
  include("sider/$_GET[vis].php");
} else {
 
echo "siden findes ikke";
}
?>

Men uden held! - Tror du en opringning til Cliche, kan løse mit problem?
Avatar billede erikjacobsen Ekspert
15. maj 2002 - 09:24 #31
Nej, det må være noget med om dine kataloger ligger på samme
måde. $vis virker med 99% sandsynlighed på cliche.
Avatar billede topnut Nybegynder
15. maj 2002 - 11:24 #32
ahh erikjacobsen elsker din stædighed :) - Jeg skulle til at ringe ind til dem, men her til morgen gav jeg dem et sidste forsøg og prøvede igen at se siden...

Vupti! - Skidtet virkede :) (tror der er nogle som har læst mine problemer hehe)

Hvordan jeg vidste det kunne være noget med den server jeg lå på, var at jeg havde uploaded det 100% samme til et andet webhotel hos cliche, og der virkede det.

Men atter engang tak erik, svar tak! (og du SKAL) :)
Avatar billede erikjacobsen Ekspert
15. maj 2002 - 12:35 #33
Ja ja, ok, lidt point luner jo altid
Avatar billede topnut Nybegynder
15. maj 2002 - 14:54 #34
så lav dog det svar!!! :)
Avatar billede topnut Nybegynder
15. maj 2002 - 21:41 #35
grr....som du vil :)
Avatar billede erikjacobsen Ekspert
15. maj 2002 - 22:45 #36
Hovsa, fik jeg ikke trykket på svar..... skidt med det, jeg
lever lykkeligt alligevel.
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