Avatar billede drockles Nybegynder
21. maj 2006 - 12:29 Der er 28 kommentarer og
1 løsning

bestemme $navn udfra hvilket link man kilkker

hej eksperter

jeg er ved at lave et profilsystem til et fodboldhold... jeg har en menu med alle spillernes navne. jeg vil gerne have at jeg kun skal have 1 profil-side, men som skal gælde for alle spillere. Dvs. at når man trykker på fx. John, loades "template.php" med John som $navn.  På den måde kan jeg få template.php til at hente john's data osv.
Hvis man trykker på Peter, loades den samme template.php men med peter i $navn

kan jeg lave det og hvordan??
Avatar billede drockles Nybegynder
21. maj 2006 - 12:39 #1
her er index-filen, hvor menuen er.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<link href="css/style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="Container">
    <div id="Logo" style="position: absolute; left: 31px; top: 36px; width: 447px; height: 93px" onclick="FP_goToURL(/*href*/'index.php')">
        <p align="center"><br>
&nbsp;</p>
        <p align="center"><font face="AFCarplates" size="5">profilhelvede</font></div>
    <div id="Menubg"></div>
        <div id="undermenu" style="position: absolute; left: 32px; top: 171px; width: 151px; height: 562px">
          <table width="100%" border="0" cellpadding="3" cellspacing="0">
              <tr>
                <td id="menukat"><a href="?page=&Side=1">Silas</a></td>
              </tr>
              <tr>
                <td id="menukat"><a href="?page=&Side=2">Peter</a></td>
              </tr>
              <tr>
                <td id="menukat"><a href="?page=&Side=3">Andreas</a></td>
              </tr>
              <tr>
                <td id="menukat"><a href="?page=&Side=4">Søren Nørholt</a></td>
              </tr>
              <tr>
                <td id="menukat"><a href="?page=&Side=5">Christian</a></td>
              </tr>
              <tr>
                <td id="menukat"><a href="?page=&Side=6">Michael K</a></td>
              </tr>
              <tr>
                <td id="menukat"><a href="?page=&Side=7">Nico</a></td>
              </tr>
              <tr>
                <td id="menukat"><a href="?page=&Side=8">Martin S</a></td>
              </tr>
              <tr>
                <td id="menukat"><a href="?page=&Side=9">Lasse</a></td>
              </tr>
              <tr>
                <td id="menukat"><a href="?page=&Side=10">Ulrik</a></td>
              </tr>
              <tr>
                <td id="menukat"><a href="?page=&Side=11">Martin K</a></td>
              </tr>
              <tr>
                <td id="menukat"><a href="?page=&Side=12">Søren</a></td>
              </tr>
              <tr>
                <td id="menukat"><a href="?page=&Side=13">Steffen</a></td>
              </tr>
              <tr>
                <td id="menukat"><a href="?page=&Side=14">Rikko</a></td>
              </tr>
              <tr>
                <td id="menukat"><a href="?page=&Side=15">Mikkel</a></td>
              </tr>
              <tr>
                <td id="menukat"><a href="?page=&Side=16">Rene</a></td>
              </tr>
              <tr>
                <td id="menukat"><a href="?page=&Side=17">Mustu</a></td>
              </tr>
              <tr>
                <td id="menukat">&nbsp;</td>
              </tr>
            </table>&nbsp;</div>
        <div id="indhold" style="position: absolute; left: 196px; top: 171px">
        <?php
        if  ($_GET[page] == "" AND $_GET['Side'] == 1) {
            include("pages/template.htm");
        }elseif ($_GET[page] == "" AND $_GET['Side'] == 2) {
            echo'StartTekst 2';
        }elseif ($_GET[page] == "" AND $_GET['Side'] == 3) {
            echo'StartTekst 3';
        }elseif ($_GET[page] == "" AND $_GET['Side'] == 4) {
            echo'StartTekst 4';
        }elseif ($_GET[page] == "" AND $_GET['Side'] == 5) {
            echo'StartTekst 5';
        }elseif ($_GET[page] == "" AND $_GET['Side'] == 6) {
            echo'StartTekst 6';
        }elseif ($_GET[page] == "" AND $_GET['Side'] == 7) {
            echo'StartTekst 7';
        }elseif ($_GET[page] == "" AND $_GET['Side'] == 8) {
            echo'StartTekst 8';
        }elseif ($_GET[page] == "" AND $_GET['Side'] == 9) {
            echo'StartTekst 9';
        }elseif ($_GET[page] == "" AND $_GET['Side'] == 10) {
            echo'StartTekst 10';
        }elseif ($_GET[page] == "" AND $_GET['Side'] == 11) {
            echo'StartTekst 11';
        }elseif ($_GET[page] == "" AND $_GET['Side'] == 12) {
            echo'StartTekst 12';
        }elseif ($_GET[page] == "" AND $_GET['Side'] == 13) {
            echo'StartTekst 13';
        }elseif ($_GET[page] == "" AND $_GET['Side'] == 14) {
            echo'StartTekst 3';
        }elseif ($_GET[page] == "" AND $_GET['Side'] == 15) {
            echo'StartTekst 3';
        }elseif ($_GET[page] == "" AND $_GET['Side'] == 16) {
            echo'StartTekst 3';
        }elseif ($_GET[page] == "" AND $_GET['Side'] == 17) {
            echo'StartTekst 4';
        }
        // Her er det som skal stå på din forside..
        else {
            echo'MAKE YOUR CHOICE!';           
        }
        ?>
        </div>
       
    <div id="copy" style="position: absolute; left: 281px; top: 735px; width: 204px">
        <p align="left">Copyright 2006
        <font face="Times New Roman">©</font> abrun.eu</div>
<div id="Bg"></div>
<div id="RigtDetjals"</div>
<div id="LeftDetjals"</div>
</div>
</body>
</html>

som i kan se bruger jeg det her get(page)-halløj.. jeg tænker at man måske kan bruge det, på en eller anden måde...
måske=    if {get(page)==1 '$navn=Silas'       

bare en tanke... jeg er ikke nogen ørn til php, så derfor mit eksempel måske ikke er korrekt
Avatar billede pehory Nybegynder
21. maj 2006 - 12:52 #2
Har du alle spillernes data liggende i en database?
Avatar billede drockles Nybegynder
21. maj 2006 - 12:55 #3
jep.. så jeg skal bare have lavet en variabel(hedder det ikke det`) så php-siden ved hvilken spillers data, der skal trækkes ud
Avatar billede pehory Nybegynder
21. maj 2006 - 13:04 #4
Din tabel skal indeholde et felt der hedder id og et der hedder navn for at dette virker.

Menuen kunne se sådan her ud:
<?php
echo '<table width="150" border="0" cellspacing="0" cellpadding="0">';
include ("mysql.php");
$foresp = mysql_query("select* from TABEL MED SPILLERE order by navn");
while($data = mysql_fetch_array($foresp)){
echo "<tr><td><a href=\"template.php?id=$data[id]\">$data[navn]</a></td></tr>";
}
echo '</table>';
?>

template.php:
<?php
include ("mysql.php");
$foresp = mysql_query("select* from TABEL MED SPILLERE where id = '$_GET[id]'");
while($data = mysql_fetch_array($foresp)){
echo "her er din side så - så kan du få spilleres navn med $data[navn] osv.";
}
?>
Avatar billede drockles Nybegynder
21. maj 2006 - 13:09 #5
det forstår jeg ikke helt.. hvilken side er mysql.php?
Avatar billede pehory Nybegynder
21. maj 2006 - 13:11 #6
Det er en fil med dine databaseoplysninger:
<?php
$db = mysql_connect("adresse til database", "brugernavn", "kode");
mysql_select_db("databasenavn", $db);
?>
Avatar billede drockles Nybegynder
21. maj 2006 - 13:13 #7
ok.. jeg kan ikk se hvor koden til menuen skal ind... kunne man ikke gøre det som jeg foreslog?
Avatar billede drockles Nybegynder
21. maj 2006 - 13:16 #8
som jeg læser koden, skal jeg slette alt det jeg har med getpage, og indsætte din kode. så vil alle navnene i databasen blive listet, og når man klikker på et navn vil dataene blive hentet i template.php.... ikke?
Avatar billede pehory Nybegynder
21. maj 2006 - 13:18 #9
Ganske korrekt - har jeg misforstået spørgsmålet?
Avatar billede drockles Nybegynder
21. maj 2006 - 13:19 #10
nej ikke slemt.. hehe.. bare mig der liiiige skal fatte det..
Avatar billede drockles Nybegynder
21. maj 2006 - 13:21 #11
jeg forstår stadig ikke helt hvordan jeg får fat i den "rigtige" spiller... og ændres dataene hvis man klikker på en anden spiller?
Avatar billede pehory Nybegynder
21. maj 2006 - 13:25 #12
Siden template er en skabelon, som i stedet for en spillers navn indeholder $data[navn] osv. (er du med så langt?)
Når du så trykker på det link i menuen henter siden man siden template med dataerne fra den spiller du har trykket på. Trykker du på en ny spiller hentes dataerne fra den nye spiller i stedet.
Avatar billede drockles Nybegynder
21. maj 2006 - 13:30 #13
yes. det er jeg med på. gider du skrive koden for at hente data for en spiller?
Avatar billede pehory Nybegynder
21. maj 2006 - 13:36 #14
Det vil kræve at jeg ved hvilke data du har på hver spiller i databasen samt hvordan siden skal se ud.
Avatar billede drockles Nybegynder
21. maj 2006 - 13:40 #15
ok... jamen bare lav det udfra: navn, profilnavn, shirtno og alder..så kan jeg selv sætte ind senere...
måske du også gider lave min sql-forespørgsel? vi smider lige et par point mere i potten

hvordan siden skal se ud: bare lav det som du synes er nemmest. så kan jeg selv sidde og rode med det
Avatar billede pehory Nybegynder
21. maj 2006 - 13:51 #16
<?php
echo '<table width="150" border="0" cellspacing="0" cellpadding="0">';
include ("mysql.php");
$foresp = mysql_query("select* from spillere order by navn");
while($data = mysql_fetch_array($foresp)){
echo "<tr><td><a href=\"template.php?id=$data[id]\">$data[navn]</a></td></tr>";
}
echo '</table>';
?>

<?php
include ("mysql.php");
if ($_GET[id]){
$sql = "where id = '$_GET[id]'";
} else {
$sql = "where id = '1'";
}
$foresp = mysql_query("select* from spillere $sql");
while($data = mysql_fetch_array($foresp)){
echo "<table width=\"500\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">
  <tr>
    <td><b>$data[navn]</b></td>
  </tr>
  <tr>
    <td><p>Profilnavn: $data[profilnavn]<br>
        Tr&oslash;jenummer: $data[nr]<br>
        Alder: $data[alder]</p>
      </td>
  </tr>
</table>";
}
?>

mysql.php:
<?php
$db = mysql_connect("adresse til database", "brugernavn", "kode");
mysql_select_db("databasenavn", $db);
?>

SQL-forespørgsel:
CREATE TABLE `spillere` (
`id` INT( 11 ) NOT NULL AUTO_INCREMENT ,
`navn` VARCHAR( 100 ) NOT NULL ,
`profilnavn` VARCHAR( 100 ) NOT NULL ,
`nr` VARCHAR( 2 ) NOT NULL ,
`alder` VARCHAR( 3 ) NOT NULL ,
PRIMARY KEY ( `id` )
);
Avatar billede pehory Nybegynder
21. maj 2006 - 13:52 #17
Det nye jeg har lavet er sådan hvis man bare skriver template.php går den automatisk ind på spilleren med id'en 1.
Du må sige til hvis du er i tvivl om noget.
Avatar billede drockles Nybegynder
21. maj 2006 - 13:57 #18
YES. nu tror jeg at jeg kan finde ud af det ;-)

lige et spørgsmål mere... skal jeg lave det hele i 1 fil (index.php) eller kan jeg have menuen i index.php og selve profil-delen i template.php som så bliver included?
Avatar billede drockles Nybegynder
21. maj 2006 - 13:58 #19
når jeg skriver spillere ind i tabellen spillere, skal de bare have et unikt id og så er det ligemeget om de f.x. har det samme navn?
Avatar billede pehory Nybegynder
21. maj 2006 - 13:59 #20
Der skulle ikke være noget problem i at include den.
Avatar billede pehory Nybegynder
21. maj 2006 - 14:00 #21
De har et unikt id i form at "id". Resten af data'erne må være præcis de samme - det betyder ingen ting.
Avatar billede drockles Nybegynder
21. maj 2006 - 14:00 #22
ok.. super fedt.. er 60 point mere ok?
Avatar billede pehory Nybegynder
21. maj 2006 - 14:03 #23
Det er ikke nødvendigt.
Avatar billede drockles Nybegynder
21. maj 2006 - 14:05 #24
ok. mange tak for hjælpen!!!
Avatar billede drockles Nybegynder
21. maj 2006 - 14:38 #25
er du der stadig? jeg kan ikke få menuen til at fungere... prøv at kigge på www.abrun.eu/superchang/

menuen skal være ude til højre

jeg har sat koden ind og indtastet data i databasen
Avatar billede aeroone Nybegynder
21. maj 2006 - 15:46 #26
Hvis du var lidt smart, henter du også menuen fra db'en, så skal du ikke ind og manuelt ændre i index siden, hvis der er udskiftning i spillerne, så skal du bare indtaste dem i db'en.
Så blir din index side ikke ret stor, eftersom at du bare skal lave en loop igennem db'en
Avatar billede drockles Nybegynder
21. maj 2006 - 17:46 #27
jeg troede at jeg gjorde det.... er det ikke? henter menu-scriptet ikke navnene fra tabellen 'spillere'?
Avatar billede drockles Nybegynder
21. maj 2006 - 17:47 #28
jeg har ændret index, efter pehory blandede sig :-)
Avatar billede drockles Nybegynder
21. maj 2006 - 18:02 #29
http://www.eksperten.dk/spm/710866 er det nye index... spørgsmålet er det samme som jeg stillede i denne "tråd" kl 14.38...
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