Avatar billede kimmys Nybegynder
07. marts 2005 - 00:33 Der er 13 kommentarer og
1 løsning

Hvorfor virker min if ikke?

hvorfor virker denne if ikke?


<?php
if("side1.php") {
include("side3.php");
}
?>

ER grøn når det gælder PHP!
Avatar billede morpheus Nybegynder
07. marts 2005 - 00:38 #1
Er det hele dit script???

Hvis du f.eks. vil hente værdien side1.php fra adresselinien, skal du gøre følgende:

index.php:
<?php
$side = $_GET['side'];
if($side == "side3.php") {
include("side1.php");
?>

Dette script kalder du med følgende:
http://ditdoamin.dk/index.php?side=side1.php
Avatar billede kimmys Nybegynder
07. marts 2005 - 00:42 #2
det er fordi jeg har en side som bruges både når man er logget ind og ikke er logget ind. Men når man er logget ind skal den "includes" en side mere
Avatar billede exutable Nybegynder
07. marts 2005 - 00:51 #3
if($loggedin == "true") {
include("side3.php");
}

Saa skal du bare saette $loggedin til true naar en er logget ind
Avatar billede kimmys Nybegynder
07. marts 2005 - 01:00 #4
Det virker ikke
Avatar billede Slettet bruger
07. marts 2005 - 09:11 #5
måske

if($_SERVER['PHP_SELF'] == 'side1.php')
{
require('side3.php');
}
Avatar billede sj.netomia Nybegynder
07. marts 2005 - 21:25 #6
er ikke helt sikker på at jeg har forstået hvad du mener, er det login system du efterlyser ?

ellers ville jeg gøre sådan her.

<?
if($admin == "1") {
include("admin.php");
}
else {
include ("normal.php");
}
?>

Men der skal selvfølgelig tjekkes andet steds om admin er = 1 sådan at man ikke bare kan skrive index.php?admin=1

Håber at du forstår.
Avatar billede Slettet bruger
07. marts 2005 - 22:03 #7
en meget vigtig ting er måske at sige:

<?
unset($_GET['admin']);
if($admin == "1") {
include("admin.php");
}
else {
include ("normal.php");
}
?>

Hvis han skulle bruge dit script med global vars på, ellers ville man jo næsten indbyde hackere :)
Avatar billede kimmys Nybegynder
07. marts 2005 - 22:30 #8
Nej søger ikke et login system!

Det er fordi jeg har en forside som hedder index.php, på denne side bliver der bl.a. inkluderet en side som hedder tilindex.php.

Men jeg bruger den samme side tilindex.php når man er logget ind. login siden hedder loggetind.php. men når tilindex.php bliver inkluderet på loggeind.php, så skal der inkluders en 3. side (tilloggetind.php) i tilindex.php!

Puuhhaa det er ved at blive forvirrende!

Men derfor regnede jeg med at man kunne lave en

<?php
if("loggetind.php") {
include("tilloggetind.php");
}
?>

Men der har ikke været nogen af dem I har lavet der har virket, og de sidste 2 har jeg desværre ikke forstået!

Håber I kan holde rede i det hele!
Avatar billede sj.netomia Nybegynder
07. marts 2005 - 22:31 #9
kommer meget an på om du har et script som går ind og checker om login & pass er rigtige når man skriver admin=1 det var det jeg mente med at det skulle tjekkes andet steds, så man ikke bare kunne skrive admin=1 og så kom admin modulet uanset om man havde skrevet login, koden rigtig.
Avatar billede kimmys Nybegynder
07. marts 2005 - 22:42 #10
jeg har en session som tjekker om man er logget ind
Avatar billede sj.netomia Nybegynder
07. marts 2005 - 22:49 #11
du kan godt lave din if sætning.

Men skal bare skrives sådan her.

<?
unset($_GET['side']);
if($side == "loggetind") {
include("tilloggetind.php");
}
?>

Så kalder du sider med
index.php?side=loggetind
Avatar billede kimmys Nybegynder
07. marts 2005 - 23:05 #12
kan ikke kalde siden loggetind.php, for index.php?side=loggetind

=(
Avatar billede sj.netomia Nybegynder
08. marts 2005 - 03:03 #13
ok så kan du gøre sådan her

<?
$login_func = (basename($PHP_SELF));
if ($login_func == "loggetind.php") {
    include ("tilloggetind.php");
}
?>

Forklaring (basename($PHP_SELF)); udskriver php filnavnet. På den måde burde det virke i dit sammenhæng.

Ved ikke om det er den mest optimale måde at lave det på. men det virker :-)
Avatar billede kimmys Nybegynder
08. marts 2005 - 22:52 #14
=)
Er nu også ligeglad om det er en optimal måde at gøre det på, men ja, for mig virker det! Så jeg er bare super glad nu, var ved at blive nervøs for at det ikke kunne lykkes!

Du får tak for hjælpen og point!
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