Avatar billede maage56 Nybegynder
19. juli 2007 - 13:34 Der er 9 kommentarer

Autogenerer sider med php?

Hej.

Jeg er i gang med at lave et lille indstemplings system. Men jeg er langt fra nogen haj til php og vil derfor gerne have lidt hjælp til hvordan man får php til selv at lave sider udfra hvilken bruger man klikker på. Det foreløbige system kan ses her http://maagetestserver.1go.dk , det er så meningen at når man trykker på et af navnene i listen skal der åbnes en side som kun omfatter den bruger man har klikket på

Som den står nu åbner de alle siden bruger.php , det skulle gerneblive til noget i stil med bruger.php?page=id1

Så hvordan får man php til selv at lave siderne?
Avatar billede leif Seniormester
19. juli 2007 - 14:21 #1
Det kunne man gøre ved at kalde:

bruger.php?id=12

Og så i bruger.php har du i din SQL sætning at du sætter "WHERE id LIKE $_GET[id]"
Avatar billede leif Seniormester
19. juli 2007 - 14:22 #2
PHP generer siderne dynamisk hvis man har lavet det korrekt.

Således at bruger.php vider id=12 når du skriver det, og id=4 hvis det er det som står
Avatar billede maage56 Nybegynder
19. juli 2007 - 14:27 #3
Hej og tak... kunne du evt give mig et kode eks jeg kunne prøve og rode lidt med?
Avatar billede leif Seniormester
19. juli 2007 - 14:55 #4
Et kort utestet ekspempel uden database forbindelse, den regner jeg med du har styr på:
<?

$id = $_GET[id];

$result = mysql_query("SELECT * FROM medarbejdere WHERE id LIKE '".$id."'") or die ("Der skete følgende fejl".mysql_error()."");

while ($row = mysql_fetch_array($result))
{
echo "Navn: ".$row[navn];
}

?>
Avatar billede maage56 Nybegynder
19. juli 2007 - 15:39 #5
takker jeg kigger på det i aften og vender tilbage :)
Avatar billede bavingo Nybegynder
20. juli 2007 - 10:06 #6
Han mangler jo også selve linket. Alle dine links skal have det unikke id du har givet brugeren i databasen.
Så alle dine links skal se nogenlunde sådan her ud i koden:

echo '<a href="bruger.php?id='. $oversigt[id] .'">'. $oversigt[brugernavn] .'</a>';
Avatar billede maage56 Nybegynder
20. juli 2007 - 13:34 #7
Hej igen. Jeg har kigget lidt på det og kan ikke få det til at spille. Er i tvivl om hvordan jeg skal sætte linket på index.php så det virker. Min tabel hedder Boern og har kolonerne Id (int, autocrement, og primær) , Navn (varchar), Indstempling (datetime)

//Taget fra index.php, Printer hele tabellen "Boern"
$svar = mysql_query("SELECT * FROM Boern ORDER BY Id ASC") or die(mysql_error());

print "<table border=1>
    <tr>
    <td>Id</td>
    <td>Navn</td>
    <td>Oprettet</td>
    /tr>";
while ($row = mysql_fetch_array($svar)){
    print "<tr>
    <td>".$row["Id"]."</td>
        <td><a href=\"bruger.php\">".$row["Navn"] ."</td>
      <td>".$row["Indstempling"]."</td>
    </tr>";
}
print "</table>";

// Her er så det jeg har i bruger.php indtil vidre
<?

$id = $_GET[id];

$result = mysql_query("SELECT * FROM Boern WHERE Id LIKE '".$id."'") or die ("Der skete følgende fejl".mysql_error()."");

while ($row = mysql_fetch_array($result))
{
echo "Navn: ".$row[Navn];
}

?>
Avatar billede maage56 Nybegynder
20. juli 2007 - 18:07 #8
Nåh tak for hjælpen kom lidt vidre med det. Kiggede lidt i en phpbog og fandt svaret, det var meget tæt på det der står her. Nogen der vil have pointene?
Avatar billede leif Seniormester
20. juli 2007 - 19:04 #9
Kom bavingo ikke med en mulig løsning til din index.php ?
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