Avatar billede sbmoller Nybegynder
03. december 2007 - 21:09 Der er 21 kommentarer og
1 løsning

link til roden af siden

Hej!

Jeg har lavet en side hvor jeg i toppen "includer" en menu.php

Jeg har det meste af siden liggende i 1 mappe (roden) men i den er der en admin mappe med admin filerne.

Når jeg nu includer denne menu.php på alle sider også admin siderne virker linkene i admin siderne jo ikke da jeg har skrevet linkene sådan her: <a href='useredit.php'>Edit Account</a> f.eks.

Er der nogen mulighed for at man kan tilføje noget foran så denne menu.php kan inkluderes på alle sider.
Alternativet er jo at man skal have en seperat menu-admin.php til admin siderne, men så skal jeg jo ændre to steder hver gang menuen ændres.

pft.
Avatar billede nielle Nybegynder
03. december 2007 - 21:14 #1
Måske er det bare at sætte et /-tegn foran.
Avatar billede sbmoller Nybegynder
03. december 2007 - 21:52 #2
niks hjælper ikke..
Avatar billede nielle Nybegynder
03. december 2007 - 22:25 #3
Kan du eventuelt vise en smule kde?
Avatar billede sbmoller Nybegynder
03. december 2007 - 22:35 #4
<?
if($session->logged_in){
  echo "<table>
          <tr>
            <td>
              [<a href='userinfo.php?user=$session->username'>My Account</a>]&nbsp;&nbsp;
              [<a href='useredit.php'>Edit Account</a>]&nbsp;&nbsp;
              [<a href='users.php'>Users</a>]&nbsp;&nbsp;
            [<a href='forum.php'>Forum</a>]&nbsp;&nbsp;";
  if($session->isAdmin()){
      echo "[<a href='admin/admin.php'>Admin Center</a>]&nbsp;&nbsp;";
  }
  echo "[<a href='process.php'>Logout</a>]</td>
          </tr>
        </table>";

}
?>

Der er min menu.php
Avatar billede mibu Nybegynder
03. december 2007 - 22:38 #5
<?
if($session->logged_in){
  echo "<table>
          <tr>
            <td>
              [<a href='userinfo.php?user=$session->username'>My Account</a>]&nbsp;&nbsp;
              [<a href='../useredit.php'>Edit Account</a>]&nbsp;&nbsp;
              [<a href='../users.php'>Users</a>]&nbsp;&nbsp;
            [<a href='/..forum.php'>Forum</a>]&nbsp;&nbsp;";
  if($session->isAdmin()){
      echo "[<a href='admin/admin.php'>Admin Center</a>]&nbsp;&nbsp;";
  }
  echo "[<a href='../process.php'>Logout</a>]</td>
          </tr>
        </table>";

TROR JEG NOK! :-)

}
?>
Avatar billede mibu Nybegynder
03. december 2007 - 22:38 #6
UPS!
[<a href='../forum.php'>Forum</a>]&nbsp;&nbsp;";
Avatar billede nielle Nybegynder
03. december 2007 - 22:57 #7
Linket:

<a href='/forum.php'>Forum</a>

bør ramme forum.php filen hvis denne ellers ligger i roden af sitet.
Avatar billede rax Praktikant
05. december 2007 - 13:20 #8
der er flere løsninger på dit problem:

1. du kan anvende stien './fil.php'

eller endnu bedre

2. du kan bruge php's indbyggede variabel til at referere til roden af dit site:
$_SERVER['DOCUMENT_ROOT']. Dvs. at følgende kode:
[<a href='<?php echo $_SERVER['DOCUMENT_ROOT']; ?>/users.php'>Users</a>]&nbsp;&nbsp;
refererer til filen users.php i roden, uanset hvor på sitet du lægger koden. ligeledes kan du referere til dine admin-sider med
[<a href='<?php echo $_SERVER['DOCUMENT_ROOT']; ?>/admin/admin.php'>Admin center</a>]&nbsp;&nbsp;
Avatar billede sbmoller Nybegynder
05. december 2007 - 19:30 #9
det må være noget af det rigtige du har gang i rax, men den kommer desværre med denne fejlmelding:

Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in C:\Program Files\xampp\htdocs\Battlecamp\menu.php on line 8

?
Avatar billede rax Praktikant
05. december 2007 - 21:59 #10
hmm, kan du ikke vise koden som du skriver den? det skal nemlig virke :)
Avatar billede mibu Nybegynder
05. december 2007 - 23:24 #11
Jeg har både brugt $_SERVER['DOCUMENT_ROOT'] og ./fil.php flere gange og det skal virke.
Lad os se linie 8 i menu.php hvor der angiveligt er en fejl.
Avatar billede rax Praktikant
05. december 2007 - 23:41 #12
hehe ja, der er ingen tvivl om at det virker :) vi skal bare lige have syntaksen helt på plads. Lad os se koden, så hjælper vi dig videre :)
Avatar billede sbmoller Nybegynder
06. december 2007 - 08:15 #13
<?
if($session->logged_in){
  echo "<table>
          <tr>
            <td>
              [<a href='userinfo.php?user=$session->username'>My Account</a>]&nbsp;&nbsp;
              [<a href='useredit.php'>Edit Account</a>]&nbsp;&nbsp;
              [<a href='<?php echo $_SERVER['DOCUMENT_ROOT']; ?>/users.php'>Users</a>]&nbsp;&nbsp;
            [<a href='forum.php'>Forum</a>]&nbsp;&nbsp;";
  if($session->isAdmin()){
      echo "[<a href='admin/admin.php'>Admin Center</a>]&nbsp;&nbsp;";
  }
  echo "[<a href='process.php'>Logout</a>]</td>
          </tr>
        </table>";

}
?>

Sådan har jeg skrevet det ind.:)
Avatar billede showsource Seniormester
06. december 2007 - 08:40 #14
Som nielle har skrevet:

<?
if($session->logged_in){
  echo "<table>
          <tr>
            <td>
              [<a href='/userinfo.php?user=$session->username'>My Account</a>]&nbsp;&nbsp;
              [<a href='/useredit.php'>Edit Account</a>]&nbsp;&nbsp;
              [<a href='/users.php'>Users</a>]&nbsp;&nbsp;
            [<a href='/forum.php'>Forum</a>]&nbsp;&nbsp;";
  if($session->isAdmin()){
      echo "[<a href='/admin/admin.php'>Admin Center</a>]&nbsp;&nbsp;";
  }
  echo "[<a href='/process.php'>Logout</a>]</td>
          </tr>
        </table>";

}
?>

Her linkes til roden af domain.
Du kan ikke lave et link til $_SERVER["DOCUMENT_ROOT"], f.eks.
( <a href="/var/www/domain.dk/public/users.php">Users</a> )
Avatar billede rax Praktikant
06. december 2007 - 09:38 #15
hmm, nej, det er selvfølgelig når man f.eks. vil include/require, at man anvender $_SERVER["DOCUMENT_ROOT"]..
Avatar billede sbmoller Nybegynder
06. december 2007 - 19:39 #16
beklager gutter, men det virker altså stadig ikke.
nogen forslag?
Avatar billede rax Praktikant
06. december 2007 - 20:01 #17
<?php
if($session->logged_in){
  echo "<table>
          <tr>
            <td>
              [<a href='./userinfo.php?user=$session->username'>My Account</a>]&nbsp;&nbsp;
              [<a href='./useredit.php'>Edit Account</a>]&nbsp;&nbsp;
              [<a href='./users.php'>Users</a>]&nbsp;&nbsp;
            [<a href='./forum.php'>Forum</a>]&nbsp;&nbsp;";
  if($session->isAdmin()){
      echo "[<a href='./admin/admin.php'>Admin Center</a>]&nbsp;&nbsp;";
  }
  echo "[<a href='./process.php'>Logout</a>]</td>
          </tr>
        </table>";

}
?>

Det her virkede ikke? Prøv at c/p det ind, og se, om det virker..
Avatar billede sbmoller Nybegynder
07. december 2007 - 20:26 #18
det virker fra de normale sider alle dem der ligger i roden, men den der ligger i /admin/admin.php virker det ikke på.
Avatar billede nielle Nybegynder
08. december 2007 - 09:54 #19
Har du et link til siden?
Avatar billede sbmoller Nybegynder
08. december 2007 - 13:11 #20
nej den er desværre ikke lagt op ...
Avatar billede showsource Seniormester
08. december 2007 - 13:14 #21
Så brug "vis kilde" i din browser når du kikker på siden, og paste koden ind her
Avatar billede nielle Nybegynder
17. december 2007 - 18:27 #22
Hvordan kom løsningen egentlig til at se ud?
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