Avatar billede djsteiner Nybegynder
20. november 2009 - 11:43 Der er 30 kommentarer og
1 løsning

if or else spørgsmål

Hej står og kunne godt bruge noget hjælp til noget if or elese.

Det jeg gerne ville have denne funktion skulle kunne var når man loader siden første gang skulle menupunktet home gerne blive markeret det gør den ikke nu da den loader index.php.

Håber dette er forståeligt.

Jeg har lige prøvet at lave noget if or else men der sker ikke noget hvad gør jeg forkert??


<?
if ($_GET["page"]  != "") {
  $pages=$_GET["page"]
}
else {
  $pages=$_GET["page"] = "home" ;
}
?>

ps. jeg er nybegynder i PHP men har dog arbejdet noget med ASP clasic.

PÅ forhånd tak for hjælpen
Avatar billede michael_stim Ekspert
20. november 2009 - 11:48 #1
else {
  $pages= "home" ;
Avatar billede djsteiner Nybegynder
20. november 2009 - 11:54 #2
Det Hjalp ikke noget men tak for den hurtige hjælp
Avatar billede Slettet bruger
20. november 2009 - 12:03 #3
Hvad vil du bruge GET til ?
Prøv dette


<?php
  $pages = "home";
?>
Avatar billede michael_stim Ekspert
20. november 2009 - 11:58 #4
Nu ved jeg ikke om det er en slåfejl eller du har copy/pastet, men der mangler en ;

<?
if ($_GET["page"]  != "") {
  $pages=$_GET["page"];
}
else {
  $pages="home" ;
}
?>
Avatar billede djsteiner Nybegynder
20. november 2009 - 12:02 #5
nu prøvede jeg sådan her men der sker ikke noget

<?
if ($_GET["page"]  != "") {
  $pages=$_GET["page"];
}
else {
  $pages="home" ;
}
?>
Avatar billede Slettet bruger
20. november 2009 - 12:03 #6
Hvad vil du bruge GET til ?
Prøv dette


<?php
  $pages = "home";
?>
Avatar billede djsteiner Nybegynder
20. november 2009 - 12:04 #7
burde jeg ikke også få en fejlmedelse hvis der mangeler et tegn
??
Avatar billede djsteiner Nybegynder
20. november 2009 - 12:06 #8
alså sådan her ??

if ($pages = "home";  != "") {
  $pages = "home";
}
else {
  $pages="home" ;
}
?>
Avatar billede Slettet bruger
20. november 2009 - 12:07 #9
Har du apache installeret ?
Avatar billede djsteiner Nybegynder
20. november 2009 - 12:08 #10
Jeg troede bare man skulle fortælle at den skulle finde lige denne side:

index.php?page=home
Avatar billede Slettet bruger
20. november 2009 - 12:08 #11
Link noget mere af din kode.
Avatar billede michael_stim Ekspert
20. november 2009 - 12:10 #12
Jeg er ikke helt med.

Men du skal checke om $_GET er sat?

if(isset($_GET['page'])){
  $pages=$_GET['page'];
}
else {
  $pages="home";
}
Avatar billede djsteiner Nybegynder
20. november 2009 - 12:10 #13
Jeg køre loacalhost over IIS
Avatar billede djsteiner Nybegynder
20. november 2009 - 12:15 #14
jeg har lavet en menu der ser sådan her ud.

men mår jeg loader siden første gang så stater den på index.php og så bliver menu punktet HOme ikke markeret så jeg vil ger have at den skal starte på med at loade den side

<?php 
                $pages["home"] = "Home";   
                $pages["cv"] = "CV";   
                $pages["mineprojekter"] = "Mine Projekter";   
                $pages["kontakt"] = "Kontakt";
                ?>
                <div class="art-nav"> 
                <div class="l"></div>   
                <div class="r"></div> 
                <ul class="art-menu">                         
                <?php       
                foreach( $pages as $navigation => $title ):       
                $class = "";       
                if( $_GET["page"] == $navigation )           
                $class="active";        ?>       
    <li> <a href="index.php?page=<?php echo $navigation; ?>" class="<?php echo $class; ?>" >
    <span class="l"></span>
    <span class="r"></span>
    <span class="t"><?php echo $title; ?></span>
                </a>       
            </li>     
                <?php endforeach; ?> 
                </ul>
                </div>
Avatar billede djsteiner Nybegynder
20. november 2009 - 12:23 #15
jeg har prøvet dette nu:

<?
if(isset($_GET['page'])){
  $pages=$_GET['page'];
}
else {
  $pages="home";
}
?>

men det sker der heller ikke noget ved
Avatar billede Slettet bruger
20. november 2009 - 12:25 #16
<?
if(isset($_GET['page'])){
  $pages=$_GET['page'];
}
else {
  $pages="Home";
}
?>

Måske..
Avatar billede djsteiner Nybegynder
20. november 2009 - 12:32 #17
Mærkeligt nu blev min Menu væk
Avatar billede Slettet bruger
22. november 2009 - 18:14 #18
djsteiner -> Hvordan går det med projektet ?
Avatar billede djsteiner Nybegynder
22. november 2009 - 21:54 #19
Hej jeg kom ikke så meget længer  #16
Avatar billede Slettet bruger
22. november 2009 - 23:27 #20
Er du stadig oppe ?

Nå men her er et live eksembel på hvad jeg tror du er ude efter.
http://83.95.107.216/test/

Du skal oprette 3 filer. Håber koden er forståelig.

Index.php

<?php
$page = "Index"
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
  <meta http-equiv="content-type" content="text/html; charset=windows-1250">
  <meta name="generator" content="PSPad editor, www.pspad.com">
  <title></title>
  </head>
  <body>
    <ul>
    <?php
    $allpages = array("Index", "Test1", "Test2");
    foreach($allpages as $value)
    {
        if($page == $value)
          echo "<li><a style='background:#ff0000;' href='".$value.".php'>".$value."</a></li>";
        else
          echo "<li><a href='".$value.".php'>".$value."</a></li>";
    }
    ?>
    </ul>
  </body>
</html>


Test1.php

<?php
$page = "Test1"
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
  <meta http-equiv="content-type" content="text/html; charset=windows-1250">
  <meta name="generator" content="PSPad editor, www.pspad.com">
  <title></title>
  </head>
  <body>
    <ul>
    <?php
    $allpages = array("Index", "Test1", "Test2");
    foreach($allpages as $value)
    {
        if($page == $value)
          echo "<li><a style='background:#ff0000;' href='".$value.".php'>".$value."</a></li>";
        else
          echo "<li><a href='".$value.".php'>".$value."</a></li>";
    }
    ?>
    </ul>
  </body>
</html>


Test2.php

<?php
$page = "Test2"
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
  <meta http-equiv="content-type" content="text/html; charset=windows-1250">
  <meta name="generator" content="PSPad editor, www.pspad.com">
  <title></title>
  </head>
  <body>
    <ul>
    <?php
    $allpages = array("Index", "Test1", "Test2");
    foreach($allpages as $value)
    {
        if($page == $value)
          echo "<li><a style='background:#ff0000;' href='".$value.".php'>".$value."</a></li>";
        else
          echo "<li><a href='".$value.".php'>".$value."</a></li>";
    }
    ?>
    </ul>
  </body>
</html>
Avatar billede djsteiner Nybegynder
23. november 2009 - 13:58 #21
ja lige præcist det er det jeg er ude efter nu skal jeg bare lige have lavet det sådan at det køre med en case.php (Switch)  isteder for at have en masse undersider. og måske skal jegh havde lagt en database til så det bliver helt dynamisk.
Avatar billede Slettet bruger
23. november 2009 - 14:06 #22
Glad for at kunne hjælpe.
Avatar billede djsteiner Nybegynder
23. november 2009 - 15:01 #23
Tak for hjælpen.

lige et ttillægsspørgsmål kan man udskrive fra en database til et array ??

eller er det helt hen i skoven at gøre det ??
Avatar billede michael_stim Ekspert
23. november 2009 - 15:24 #24
Du udskriver så godt som altid til et array:

http://php.net/manual/en/function.mysql-fetch-array.php

Eller har jeg misforstået?
Avatar billede djsteiner Nybegynder
23. november 2009 - 15:36 #25
når ja det er bare mig der vandt til asp der udskriver man bland andet ud i et loop (løkke)
Avatar billede djsteiner Nybegynder
23. november 2009 - 15:45 #26
hvad betyder dette ??

mysql_free_result($result);
Avatar billede michael_stim Ekspert
23. november 2009 - 15:45 #27
Det gør du også i PHP, men det er for at tage arrayets værdier element for element. Har du kun et element i arrayet (f ex ved LIMIT 1) er der ingen grund til at bruge en loop.
Avatar billede michael_stim Ekspert
23. november 2009 - 15:47 #28
Avatar billede djsteiner Nybegynder
23. november 2009 - 15:52 #29
Du sksl have mange tak for hjælpen michael_stim nu blev jeg det kloger der er nok at lære her så nu må jeg bare kløg på.
Avatar billede michael_stim Ekspert
23. november 2009 - 16:03 #30
www.php.net er uundværlig, når du sidder med PHP ;o)
Avatar billede djsteiner Nybegynder
23. november 2009 - 16:09 #31
Takker
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