webForumDet fria alternativet

Bilden ändrar sig beroende på vilken mapp..

PHP

13 svar · 242 visningar · startad av Matti

Medlem sedan dec. 19996 592 inlägg
Frågan#1

Kan jag på något sätt kolla vilken mapp en fil befinner sig i.. eller alltså.. vi säger att filen test.php är i mappen "webmaster". Då vill jag att $bild ska få värdet 1. Om samma fil befinner sig i "misc" ska $bild istället få värdet 2 osv.. är det möjligt?

------------------
matti.intelligens.nu

Medlem sedan dec. 19991 749 inlägg
#2

Jomenvisst...


$bilden="olga.jpg";
$katalog1="/sökkväg/webmaster/$bilden";
$katalog2="/sökkväg/misc/$bilden";

if(file_exists($katalog1))
  $bild=1;
elseif(file_exists($katalog2))
  $bild=2;
else
  echo "$bilden finns inte nånstans";

typ... lite enkelt uttryckt

------------------

"Där ser du. De är synthare och inte scientologer..."

nanne.net

[Redigerat av nanne den 27 nov 2000]

Medlem sedan dec. 19996 592 inlägg
#3

Jag förklarade lite fel.. :p

Jag har en template fil som alla mina sidor använder sig. Alla sidor som ligger i www.server.com/webmaster använder sig av www.server.com/temp.php och alla filer som ligger i www.server.com/misc använder sig också utav den template-filen.

Nu vill jag göra så att template-filen känner av vilken mapp den befinner sig i. D v s om jag går till www.server.com/webmaster/test.php skall bilden 1.gif visas på den sidan men om samma fil befinner sig i misc mappen (www.server.com/misc/test.php) ska bilden 2.gif visas.

Går det?

// Vad Matti vill
om denna fil befinner sig i mappen "webmaster"
$bild = "1.gif";
annarsom filen befinner sig i mappen "misc"
$bild = "2.gif";
annars
$bild = "standard.gif";

;)

------------------
matti.intelligens.nu

[Redigerat av Matti den 27 nov 2000]

Medlem sedan feb. 20001 050 inlägg
#4

.../public_html/webmaster/q.php3
<?php
include($DOCUMENT_ROOT."q2.php3");
?>

.../public_html/misc/q.php3
<?php
include($DOCUMENT_ROOT."q2.php3");
?>

och .../public_html/q2.php3
<?
$bild="standard";
if(strstr($SCRIPT_FILENAME,"webmaster"))
$bild="symboliserar bild #1";
if(strstr($SCRIPT_FILENAME,"misc"))
$bild="symboliserar bild #2";
echo "$bild"
?>

/nicclas - www.nyhetsrubriker.com

Medlem sedan feb. 20001 270 inlägg
#5

Nicclas
Ditt exempel stöper ju i graven om han har en mapp som heter misc och en annan som heter misc2! :)

------------------
woodi
Svenska FF1
www.johan-skog.nu

Medlem sedan feb. 20001 050 inlägg
#6

Jo, det var bara ett exempel :) Vill man ha en100%-ig version kan man väl köpa den av katrineholm-julita-php-hackers är det inte så? :e

/nicclas - www.nyhetsrubriker.com (nu ännu coolare!)

Medlem sedan feb. 20001 270 inlägg
#7

Nicclas
Hehe. ;)

------------------
woodi
Svenska FF1
www.johan-skog.nu

Medlem sedan dec. 19996 592 inlägg
#8

Tackar tackar.. :)

Woodi, men då kan jag väl skriva:

<?
$bild="standard";
if(strstr($SCRIPT_FILENAME,"webmaster"))
$bild="symboliserar bild #1";
if(strstr($SCRIPT_FILENAME,"misc"))
$bild="symboliserar bild #2";
if(strstr($SCRIPT_FILENAME,"misc2"))
$bild="symboliserar bild #3";

echo "$bild"
?>

? ;)

------------------
matti.intelligens.nu

[Redigerat av Matti den 28 nov 2000]

Medlem sedan feb. 20001 270 inlägg
#9

Matti
Nej det kan Du inte.. :)
I koden nedan så finns ju ordet misc i både mappen misc och misc2.. Därmed kommer den aldrig komma till misc2 if-satsen, för den signalerar för träff i if-satsen innan .. Därmed kommer Du att få bild två för samtliga misc kataloger..
if(strstr($SCRIPT_FILENAME,"misc"))
$bild="symboliserar bild #2";
if(strstr($SCRIPT_FILENAME,"misc2"))
$bild="symboliserar bild #3";

Dock kan Du vända på det så fungerar det för just dessa.. Men skapar Du sen en katalog misc21 så är det kört igen! :)

if(strstr($SCRIPT_FILENAME,"misc2"))
$bild="symboliserar bild #3";
if(strstr($SCRIPT_FILENAME,"misc"))
$bild="symboliserar bild #2";

------------------
woodi
Svenska FF1
www.johan-skog.nu

Medlem sedan dec. 19996 592 inlägg
#10

Troligen så kommer jag bara ha mappar som heter "FAQ", "misc", "webmaster", "php" och "ns6" så det är lugnt. :)

------------------
matti.intelligens.nu

Medlem sedan dec. 19996 592 inlägg
#11

Hm.. inget fungerar.. jag måste ju skriva in det där i min template fil och om jag gör det så fungerar det inte. Skriver jag däremot in det i filen med texten så fungerar det perfekt..

*hata*

------------------
matti.intelligens.nu

Medlem sedan feb. 20001 050 inlägg
#12

Jodå, klart att det fungerar :) q2.php3 är ju template-filen, eller hur. Jag har naturligtvis provat...

Vill du komma runt problemet som woodi yrar om så får du nog jämföra med hela sökvägen *jobbigt*

/nicclas www.nyhetsrubriker.com

Medlem sedan feb. 20001 270 inlägg
#13

Nicclas
Yrar!? Jag!? :e

Skulle ju bara göra lilla Matti uppmärksam på att felet kan uppstå om det ena ordet ingår i ett annat.. Om han vill/behöver lösa det bekymmret är ju en annan fråga! :)

------------------
woodi
Svenska FF1
www.johan-skog.nu

[Redigerat av woodi den 28 nov 2000]

Medlem sedan dec. 19996 592 inlägg
#14

Nej, det fungerar inte hos mig.
Min template fil ser ut ungefär så här:

<?php

  function my_siteTop (

# these variables are the default of all your pages
# made with this template but each page can be
# configured very easily, see below.

  $title="Free PHP scripts and stuff about html and css",
  $description="Free quality fonts and great php tutorials",
  $keywords="php,php3,php4,tutorials,script,scripts,skript",
  $author="Matti Kolu",
  $headline="standard"
  

) {
?>

<html>

<!-- [url="http://WWW.MK.ST"]WWW.MK.ST[/url]  - COPYRIGHT (C) 2000 MATTI KOLU - ALL RIGHTS RESERVED  -->
<!-- [url="http://WWW.MK.ST"]WWW.MK.ST[/url]  - COPYRIGHT (C) 2000 MATTI KOLU - ALL RIGHTS RESERVED  -->
<!-- [url="http://WWW.MK.ST"]WWW.MK.ST[/url]  - COPYRIGHT (C) 2000 MATTI KOLU - ALL RIGHTS RESERVED  -->

<HEAD>
   <TITLE><?php
    echo $title;
	$banner2 = test;
	
	 ?></TITLE>
   <META NAME="description" CONTENT="<?php echo $description; ?>">
   <META NAME="keywords" CONTENT="<?php echo $keywords; ?>">
   <META NAME="author" CONTENT="<?php echo $author; ?>">

<body bgcolor="#FFFFFF" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" link="#FF8C22" vlink="#FF8C22" alink="#FF8C22">

***** NAVIGATION och tabeller *******

<font face="Verdana, Arial, Helvetica, sans-serif" size="2">

<?php
}
function my_siteBottom  (
$banner="../banner/banner.php"

) {
?>

</font>
***TAGGAR SOM AVSLUTAR TABELlERNA***

<?php
}
?>

Sedan ser mina filer ut så här:

<?php
 include "template.php";
 my_siteTop ("RUBRIK","META DESCRIPTION","meta keywords");
?>
Här är alltså själva innehållet.. om jag skriver in innehållet i q2.php3 här så fungerar det.. men jag vill inte ha det i texten utan jag vill ha det i min tabellstruktur.. om jag skriver in det i min template fil fungerar det inte. And that's the way it is

<?php
  my_siteBottom  ();
?>

Om jag skriver in tex echo $SCRIPT_FILENAME; i template filen borde det ju skrivas ut när man kollar i någon vanlig fil, men det gör det inte. Det blir helt tomt. Nu har jag iaf löst problemet genom att göra en template fil för varje avdelning. ;)

------------------
matti.intelligens.nu

263 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
124 ms — deklarationer (db)
0 ms — hämta statistik (cache)
135 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)