Avatar billede artico Novice
12. januar 2005 - 23:49 Der er 21 kommentarer og
1 løsning

Link er ikke viser siden

Jeg har flg. script i starten af index.php som ligger i et underbibliotek (/aktivitet/index.php)

if($nx=="")
{
$side = "velkommen.php";
}
else if(isset($nx))
{
$side = $nx.".php";
}
if($align=="")
{
  $att="center";
}
else if(isset($align))
{
  $att=$align;
}



Men jeg kan ikke "fange" denne side. Linket står i en fil der ligger i roden ?


<a href="index.php?nx=system/systemdata">System <br>

Hvad er forkert ? (Jeg får ingen fejlmeddelelse)
Avatar billede neocron Nybegynder
13. januar 2005 - 00:17 #1
Siden skal åbnes. Det er ikke nok, bare at definere sidenavnet.

include($nx);

eller

require($nx);
Avatar billede neocron Nybegynder
13. januar 2005 - 00:18 #2
Dertil kan du iøvrigt bruge PHP's file_exists til at tjekke om den angivne fil egentlig findes -

http://dk2.php.net/file_exists

if(file_exists($nx)) {
    include($nx); // filen findes
} else {
    echo "Kunne ikke finde: $nx.php";
}
Avatar billede neocron Nybegynder
13. januar 2005 - 00:20 #3
Har lige tilladt mig at omskrive din kode, så det virker - værsågod!

<?php
if($nx=="")
{
$side = "velkommen.php";
}
else if(isset($nx))
{
$side = $nx.".php";
if(file_exists($side)) {
include($side);
} else {
echo "Kunne ikke finde $side!";
}
}
if($align=="")
{
  $att="center";
}
else if(isset($align))
{
  $att=$align;
}
?>
Avatar billede artico Novice
13. januar 2005 - 00:23 #4
Jeg har også en include($side); og startsiden (velkommen.php) vises fint, men linkene som jeg har i en menu.php i roden dem gider den ikke hente ??
Avatar billede hmortensen Nybegynder
13. januar 2005 - 00:25 #5
En omskrivning af dine if'er:

$side = isset($nx) ? $nx.".php" : "velkommen.php";

$att = isset($align) ? $align : "center";
Avatar billede neocron Nybegynder
13. januar 2005 - 00:26 #6
Den er jeg ikke helt med på? Hvad hedder de links så?
Og har du kopieret min kode ind og prøve om den fungerer?
Avatar billede artico Novice
13. januar 2005 - 00:28 #7
Men link som dette fungere stadig ikke :-(

<td><a href="aktiviteter/enkeltbruger/opretBruger.php">&#x2022;</a> <a href="index.php?nx=system/systemdata">System <br>
Avatar billede artico Novice
13. januar 2005 - 00:29 #8
neocron08 » din kode virker fint, men ovenstående link hentes ikke, ej heller fejlmeddelelse...
Avatar billede neocron Nybegynder
13. januar 2005 - 00:31 #9
Du har ikke lukket det sidste link med </a>? Og jeg går ud fra at det øvreste link er irrelevant - ellers skulle det vel have været

aktiviteter/enkeltbruger/opretBruger

istedet for:

aktiviteter/enkeltbruger/opretBruger.php
Avatar billede hmortensen Nybegynder
13. januar 2005 - 00:34 #10
Prøv lige:

<?php
if (file_exists("system/systemdata.php"))
{
  echo "Findes";
}
else
{
  echo "Findes IKKE!";
}
?>
Avatar billede artico Novice
13. januar 2005 - 00:34 #11
Sådan se de links ud jeg ikke kan få vist:

<td width="13"></td>
            <td><a href="../../aktiviteter/enkeltbruger/opretBruger.php">&#x2022;</a> <a href="index.php?nx=system/systemdata">System <br>
                </a><a href="../../aktiviteter/admin/listeAdmins.php">&#x2022;</a> <a href="index.php?nx=admin/listeAdmins">Administrator<br>
                </a><a href="../../aktiviteter/enkeltbruger/opretBruger.php">&#x2022;</a> <a href="index.php?nx=medlemmer/listeMedlemmer">Emne</a></td>
            <td width="11"></td>
Avatar billede neocron Nybegynder
13. januar 2005 - 00:35 #12
<a href="aktiviteter/enkeltbruger/opretBruger.php">&#x2022;</a>

skulle vist istedet have været:

<a href="index.php?nx=aktiviteter/enkeltbruger/opretBruger">&#x2022;</a>
Avatar billede artico Novice
13. januar 2005 - 00:36 #13
hmortensen » det er ovenstående links der ikke virker, det går fint med at få vist velkomstsiden...
Avatar billede neocron Nybegynder
13. januar 2005 - 00:36 #14
Du skal huske, ikke at tilføje .php i linket - det bliver jo automatisk smidt på $side med denne linie:

$side = $nx.".php";

og du skal kalde dem gennem index.php?nx=link/til/fil
Avatar billede artico Novice
13. januar 2005 - 00:42 #15
Jeps det ser også sådan ud (index.php?nx=system/systemdata ) men alligevel virker l... ikke :-(
Avatar billede neocron Nybegynder
13. januar 2005 - 00:45 #16
Er du sikker på at det er den korrekte sti? Jeg har prøvet med samme kode, og det virker fint.
Avatar billede artico Novice
13. januar 2005 - 00:47 #17
Det er måske fordi menu.php starter med:

// Beregn hvor langt nede vi er.
$chrs = count_chars( $SCRIPT_NAME );
$count = $chrs[ord("/")] - 0;

$niveau = str_repeat( "../", $count );
// Inds?t niveau foran alle linksne i steden for ../ osv.
Avatar billede artico Novice
13. januar 2005 - 00:48 #18
Hvor count = $chrs[ord("/")] - 0;

skulle være 1 istedet for 0, men jeg fik hele tiden fejl ?
Avatar billede neocron Nybegynder
13. januar 2005 - 00:50 #19
Prøv evt. at udkommenter det, og se om dit aktuelle problem bliver løst hvis den kode fjernes. Hvis den derpå virker, så må der laves en workaround.
Avatar billede neocron Nybegynder
13. januar 2005 - 00:52 #20
Her er en lidt mere overskuelig kode, jeg tillod mig lige at copy-paste hmortensen's omskrivninger så jeg slap for at skrive dem selv ;)

<?php
$side = isset($side) : $nx.".php" : "velkommen.php";

if(file_exists($side))
{
    include($side);
}
else
{
    echo "Beklager, men siden <b>$side</b> findes ikke!";
}

$att = isset($align) ? $align :  "center";
?>
Avatar billede neocron Nybegynder
13. januar 2005 - 00:53 #21
Nydeligt... der er en fejl i den kode, jeg lige har postet (00:52:28) - ignorer den!

<?php
$side = isset($nx) : $nx.".php" : "velkommen.php";

if(file_exists($side))
{
    include($side);
}
else
{
    echo "Beklager, men siden <b>$side</b> findes ikke!";
}

$att = isset($align) ? $align :  "center";
?>
Avatar billede artico Novice
24. januar 2005 - 00:33 #22
Afslut
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