Avatar billede xbobby Nybegynder
20. juni 2003 - 10:44 Der er 14 kommentarer og
1 løsning

Hvis i=1 gå til php01.php osv.

Jeg har 2 sider lad os kalde dem for side01.php og side02.php, når variablen i = 1 skal jeg til side01.php og ellers skal jeg til side02.php.

Hvordan gør jeg det i PHP?
Avatar billede fri-hash Nybegynder
20. juni 2003 - 10:49 #1
if($i==1){
  header("location: side01.php");
}
if($i==2){
  header("location: side02.php");
}

hvis $i kommer fra url.php?i=1
skal du bruge $_GET["i"] istedet for $i
Avatar billede jakoba Nybegynder
20. juni 2003 - 10:50 #2
<?  // bemærk:  der må ikke være genereret noget af din output-fil før dette punkt.
if ( $i == 1 ) {
    header( "location: side01.php" );
    exit();
} else
if ( $i == 2 ) {
    header( "location: side02.php" );
    exit();
} else {
    // default. som bare er denne side.
{
?>

mvh JakobA
Avatar billede exp Juniormester
20. juni 2003 - 10:59 #3
<?php
switch ($_GET["i"]) {
case "1":
header( "location: side01.php" );
break;
default:
header( "location: side02.php" ); }
?>
Avatar billede avminarm Juniormester
20. juni 2003 - 11:00 #4
du kan også bruge switch:

switch ($_GET['i']) { //hentes via adr linien
case '1':
    header("location: side01.php");
break;
}
Avatar billede martinbk Nybegynder
20. juni 2003 - 12:08 #5
eller måske
if ($_GET[i] != "") {
header("location: side0".$i.".php");
}
Avatar billede exp Juniormester
20. juni 2003 - 12:43 #6
Det kan også være

if (isset($_GET[i])) {
header("location: side0".$i.".php");
}

det skal så nok kombineres med noget if(file_exists)
Avatar billede jakoba Nybegynder
20. juni 2003 - 12:43 #7
holybull >> den er lidt farlig, hvad hvis ulen er url.php?i=olsen
men vi ved jo faktisk slet ikke om det er en ulrparameter xbobby vil vælge på.
Avatar billede xbobby Nybegynder
20. juni 2003 - 12:44 #8
Jeg får følgende fejlkode:

Warning: Cannot modify header information - headers already sent by (output started at c:\inetpub\wwwroot\quiz\arkivering\_test01.php:3) in c:\inetpub\wwwroot\quiz\arkivering\_test01.php on line 5

Hvad siger den fejlkode jer - hvad er det som jeg gør galt?
Avatar billede exp Juniormester
20. juni 2003 - 12:45 #9
Det betyder at der er output i browseren inden din header("location:") Det må der ikke være
Avatar billede exp Juniormester
20. juni 2003 - 12:45 #10
det kunne fx være et linieskift, html-kode eller lignende
Avatar billede xbobby Nybegynder
20. juni 2003 - 15:47 #11
Jeg kan ikke lige se det, så jeg smider lige koden på, så kan I måske se hvad det er der er galt :-)

<? $i = $_REQUEST["start"]; ?>
   
<?
if($i == 1) {
  header("location: _side01.php");
}
if($i == 2) {
  header("location: _side02.php");
}
?>

<html>
<head>
    <title>valg</title>

</head>
VALGSIDE
<body>

</body>
</html>
Avatar billede exp Juniormester
20. juni 2003 - 19:07 #12
Du har et linieskift her:

--------------------------------
<? $i = $_REQUEST["start"]; ?>
    *****lige her (plus 4 mellemrum)****
<?
if($i == 1) {
  header("location: _side01.php");
}
if($i == 2) {
  header("location: _side02.php");
}
?>
---------------------------------

udskift med

---------------------------------
<?php
$i = $_REQUEST["start"];

if($i == 1) {
  header("location: _side01.php");
}
if($i == 2) {
  header("location: _side02.php");
}
?>
<html>
<head>
    <title>valg</title>

</head>
VALGSIDE
<body>

</body>
</html>
Avatar billede jakoba Nybegynder
20. juni 2003 - 19:29 #13
og husk at en  exit();  kommando efter hader kommandoen. Ellers fortsætte scriptet og begynder at sende det html-kode der kommer nedenunder.

mvh JakobA
Avatar billede xbobby Nybegynder
21. juni 2003 - 20:01 #14
Tak for hjælpen alle sammen, det var lige det der skulle til

xbobby :-)
Avatar billede exp Juniormester
22. juni 2003 - 16:21 #15
det var så lidt :-)
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