WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   <?php include hjälp (https://www.wn.se/forum/showthread.php?t=1062556)

aktieante 2014-08-16 09:13

<?php include hjälp
 
Hej!

Undrar om någon skulle kunna hjälpa mig med att rätta till "strängen" nedan så det fungerar.
<?php include('echo $this->link_id;'); .php ?>

Misstänker att det saknas en del tecken tex. ";'

Jag vill alltså genom php include kalla på en fil som heter "link_id".php

Johnny Viking 2014-08-16 09:20

<?php include($this->link_id).".php"; ?>

aktieante 2014-08-16 09:41

Stort Tack.
Fungerar utmärkt

aktieante 2014-08-30 07:37

Citat:

Ursprungligen postat av Johnny Viking (Inlägg 20496363)
<?php include($this->link_id).".php"; ?>

Om filen ligger i en annan mapp, tex heter mappen "kartor"
Hur skriver man ut strängen då?

x264 2014-08-30 08:28

<?php include "kartor/{$this->link_id}.php"; ?>

Johnny Viking 2014-08-30 12:18

Lite mer tydligt än ovan (tycker jag) vore att skriva:
<?php include("kartor/".$this->link_id).".php"; ?>

Du kan även använda ' istället för " i ovanstående kod.

aktieante 2014-08-30 14:41

Citat:

Ursprungligen postat av Johnny Viking (Inlägg 20497135)
Lite mer tydligt än ovan (tycker jag) vore att skriva:
<?php include("kartor/".$this->link_id).".php"; ?>

Du kan även använda ' istället för " i ovanstående kod.

Tack igen =)

x264 2014-08-30 16:02

Citat:

Ursprungligen postat av Johnny Viking (Inlägg 20497135)
Lite mer tydligt än ovan (tycker jag) vore att skriva:
<?php include("kartor/".$this->link_id).".php"; ?>

Du kan även använda ' istället för " i ovanstående kod.

Tycker snarare att det är mer förvirrande. Är man ny tror man kanske då att include är en funktion, när det i själva verket är en language construct.

Många omringar t.ex. inte echo med parenteser och jag ser inte varför man skulle använda det i en include.

Och ska man använda det med include tycker jag att man ska inkludera filändelsen också:

<?php include("kartor/".$this->link_id.".php"); ?>

Men i ditt exempel används inte ens parenteserna (de används, men det är inte include som omringar) och man kan klippa bort de helt och hållet.

Annars kan man lika gärna skriva:

<?php include ("kartor/").($this->link_id).(".php"); ?>

vilket fungerar lika bra :)

Men det är en smaksak, och använder man include(X) så borde man i enhetlighetens namn även skriva echo(X).

eliasson 2014-09-01 09:49

Av ren nyfikenhet: Vart kommer $this->link_id från? Är den manupilerbar för klienten?

danjel 2014-09-01 16:00

tips: jag brukar använda en enkel funktion för alla includes, typ:
<?php runModule("karta", array('id' => @id)); ?>

och ha includes i en specifik mapp,
då slipper man .php suffixet och refactoreringar blir enklare

Johnny Viking 2014-09-01 20:38

x264 det var bara en miss vart parantesen las. Ska såklart vara inom paranteserna.

x264 2014-09-01 22:52

Citat:

Ursprungligen postat av Johnny Viking (Inlägg 20497324)
x264 det var bara en miss vart parantesen las. Ska såklart vara inom paranteserna.

Okej då ursäktar jag mig :) Förlåt om det verkade spydigt nu när jag läser lite i efterhand eller så. Var verkligen inte meningen (jag förstår inte alltid sådant riktigt till en början)

Jo det är tydligt så ja :)

Johnny Viking 2014-09-02 08:03

Lugnt x264, jag har knåpat en hel del PHP i mina dar oxå. Det jag lärt mig är att man kan göra en lösning på fantastiskt många sätt, inget är "fel" så länge du inte mixar en massa olika syntax samt skriver oerhört osäker kod...! PHP är på det sättet ett språk jag gillar. Saker går att lösa på många sätt. Men det krävs erfarenhet inom PHP för att lösa det på ett bra sätt... :)


Alla tider är GMT +2. Klockan är nu 08:05.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson