/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Include
Fra : Christine


Dato : 11-08-06 13:28

Har: Mappe "include" og ark funktioner.
Skal jeg have alle funktioner, som jeg vil bruge på samme side?
<?PHP
include("include/funktioner.php");
?>

<h1>Test af funktioner</h1>
<p>Her kommer noget tekst, og s&aring; kalder jeg fuktionen.</p>

<?PHP
Velkommen();
?>
Dette var opgaven, men den skriver funktionen før ordren, og når jeg
undlader den sidste PHP-sekvens, gør den det også, så hvorfor kalde
funktionen. Og hvis de står allesammen på én side, så kommer de jo
allesammen allerede ved "include". Bogen=PHP og MySQL for absolutte
begyndere.
Hvad gør jeg forkert?
Christine


 
 
Bertel Lund Hansen (11-08-2006)
Kommentar
Fra : Bertel Lund Hansen


Dato : 11-08-06 14:22

Christine skrev:

> Har: Mappe "include" og ark funktioner.
> Skal jeg have alle funktioner, som jeg vil bruge på samme side?

Det behøver du ikke, men gør det der giver dig det bedste
overblik. Jeg samler alle funktioner som bruges på et
sammenhørende sæt sider, i én fælles fil. Enkelte funktioner som
kun bruges ét sted, skriver jeg dog somme tider i den relevante
alenefil.

Tit lægger jeg bare den fællles fil i samme mappe som alle de
andre. Så er jeg fri for at skrive noget med sti, og så er det
nemmere at flytte rundt på det hele uden at skulle rette i
stierne.

> <?PHP
> include("include/funktioner.php");
> ?>
>
> <h1>Test af funktioner</h1>
> <p>Her kommer noget tekst, og s&aring; kalder jeg fuktionen.</p>
>
> <?PHP
> Velkommen();
> ?>

> Dette var opgaven, men den skriver funktionen før ordren

Det forstår jeg ikke. Prøv lige at skrive din funktion.

--
Bertel
http://bertel.lundhansen.dk/      http://fiduso.dk/

Jesper Brunholm (11-08-2006)
Kommentar
Fra : Jesper Brunholm


Dato : 11-08-06 14:29

Christine skrev:
> Har: Mappe "include" og ark funktioner.
> Skal jeg have alle funktioner, som jeg vil bruge på samme side?

Det må du helt selv om, det er et spørgsmål om hvordan det fungerer
bedst i forhold til at have det tilgængeligt som du skal bruge, men at
undgå at include en fil på 1 mb med funktioner på sider hvor du kun
bruger en funktion på 10 linjer (for nu at stille det groft op).

Så længe du kun har et mindre site kan du let have alle funktioner i
samme fil, men det er lidt ligesom at lægge filer i mapper, det handler
kun om afvejning af hvor man får bedst overskuelighed.

Du kan sagtens include flere funktionsbiblioteker i samme fil, og du kan
let include filer i includede filer (det kræver bare at du holder tungen
lige i munden med hensyn til hvor tingene ligger, det er adressen i
browserens adresselinje PHP tager udgangspunkt i når den skal finde en
includefil).

> <?PHP
> include("include/funktioner.php");
> ...
> Velkommen();
> ?>

> Dette var opgaven, men den skriver funktionen før ordren

Jeg tror du skal vise os filen funktioner.php. En funktion gør ikke
noget før den bliver kaldt, så du må kalde den, for at den skriver noget ud.

>, og når jeg
> undlader den sidste PHP-sekvens, gør den det også, så hvorfor kalde
> funktionen.

Det lyder meget som om at du i funktioner.php har Velkommen(); stående
et sted. Hvis ikke, så lad os lige se filen ved at lave en kopi af den
som du kalder .txt (eller .phps - prøv om dit webhotel understøtter det)
så vi kan kigge i den.

mvh

Jesper Brunholm

Christine (11-08-2006)
Kommentar
Fra : Christine


Dato : 11-08-06 17:16

> Det lyder meget som om at du i funktioner.php har Velkommen(); stående
> et sted. Hvis ikke, så lad os lige se filen ved at lave en kopi af den
> som du kalder .txt (eller .phps - prøv om dit webhotel understøtter det)
> så vi kan kigge i den.

<body>
<?PHP
function Velkommen()
{
error_reporting (E_ALL);
}
{
print "Velkommen på min side";
}
?>
Jesper, vil det sige, at man ikke skal navngive funktionen?
Hilsen
Christine


Jesper Brunholm (11-08-2006)
Kommentar
Fra : Jesper Brunholm


Dato : 11-08-06 22:16

Christine skrev:
>> Det lyder meget som om at du i funktioner.php har Velkommen(); stående
>> et sted. Hvis ikke, så lad os lige se filen ved at lave en kopi af den
>> som du kalder .txt (eller .phps - prøv om dit webhotel understøtter det)
>> så vi kan kigge i den.
>
> <body>
> <?PHP
> function Velkommen()
> {
> error_reporting (E_ALL);
> }

Her slutter function Velkommen. En function defineres med "function",
functionnavn, parentes-sæt (som udgør parameterliste), tuborgklamme
begynd ("{"), mulighed for en masse kode, og endelig tuborgklamme slut.

Hvis jeg har flere functions efter hinanden, skriver jeg som regel "//
functionnavn() der hvor hver enkelt slutter, så jeg let kan overskue
hvad der er en function der slutter, og hvad der måtte være while- og
if-else- tuborg-parentes-sæt inden i de forskellige functions.

Hvad der så begynder efterfølgende er jeg ikke helt klar over, men jeg
tror faktisk at du burde få en fejl, jeg ved ikke hvad man får ud af at
sætte et sæt tuborgklammer om noget kode, uden at de hører til en if
eller en function.
Hvad der dog er sikkert, er at dit print ikke står i en function, og
derfor ikke skal kaldes for at blive afviklet.

> {
> print "Velkommen på min side";
> }

> vil det sige, at man ikke skal navngive funktionen?

det tror jeg ikke jeg behøver svare på efter det foregående, men for en
sikkerheds skyld: nej, det vil tvært imod sige at man skal give en
function navn (ellers kan man ikke vide hvad man skal kalde den med), og
skrive at det er en function.

Jeg vakler lidt imellem om jeg skal sende dig min
fejlhåndterings-includefil, fordi jeg kan huske at jeg selv var møgtræt
af ikke at kunne se på noget fungerende kode som andre havde lavet, i
begyndelsen. Sig lige til hvis du vil have den (jeg vil ikke poste
indholdet her, det er trods alt sikkerhedsrutiner som er i sving hos et
par af mine kunder også )

mvh

Jesper Brunholm (som er væk hele weekenden, så det er altså ikke
manglende vilje at jeg ikke svarer på noget før søndag aften )

Bertel Lund Hansen (12-08-2006)
Kommentar
Fra : Bertel Lund Hansen


Dato : 12-08-06 12:15

Jesper Brunholm skrev:

> Hvad der så begynder efterfølgende er jeg ikke helt klar over, men jeg
> tror faktisk at du burde få en fejl, jeg ved ikke hvad man får ud af at
> sætte et sæt tuborgklammer om noget kode, uden at de hører til en if
> eller en function.

Nej nej. Man kan omklamre lige så tosset man vil. Klammerne er
kun vigtige hvis der er en kodeblok der samlet skal underlægges
en løkke eller en betingelse, men hvis man synes at det er sjovt,
kan man godt omklamre hver eneste kommando.

--
Bertel
http://bertel.lundhansen.dk/      http://fiduso.dk/

Arne Feldborg (12-08-2006)
Kommentar
Fra : Arne Feldborg


Dato : 12-08-06 17:45

Bertel Lund Hansen <nospamfilius@lundhansen.dk> skrev Sat, 12 Aug 2006
13:15:16 +0200


>Nej nej. Man kan omklamre lige så tosset man vil.
>
Det kan du for så vidt godt, omend det er lidt svært art se til hvad
nytte.?

Men de skal ihvertfald fordeles rigtig. Den i eksemplet viste funktion
slutter, som Jesper også påpeger, ved første "}". Hvorefter programmet
helt korrekt udskriver print linien.


eksemplet:
function Velkommen()
{
error_reporting (E_ALL);
}
{
print "Velkommen på min side";
}
X----------------------------------------
Skulle være:
function Velkommen()
{
error_reporting (E_ALL);
{
print "Velkommen på min side";
}
}
X------------------------------------

--
mvh, A:\Feldborg

Slægtsforskning og lokalhistorie i midt- vestjylland
http://hammerum-herred.dk/

Christine (11-08-2006)
Kommentar
Fra : Christine


Dato : 11-08-06 17:33


> Det forstår jeg ikke. Prøv lige at skrive din funktion.
>
> --
> Bertel
Bertel, har skrevet den under svaret til Jesper.


Christine (13-08-2006)
Kommentar
Fra : Christine


Dato : 13-08-06 17:49

> Skulle være:
> function Velkommen()
> {
> error_reporting (E_ALL);
> {
> print "Velkommen på min side";
> }
> }

Forstået - og tak for det.
Venlig hilsen
Christine


Arne Feldborg (13-08-2006)
Kommentar
Fra : Arne Feldborg


Dato : 13-08-06 23:44

"Christine" <christine@barkentin.dk> skrev 13 Aug 2006 09:49:03 -0700

>> Skulle være:
>> function Velkommen()
>> {
>> error_reporting (E_ALL);
>> {
>> print "Velkommen på min side";
>> }
>> }
>
>Forstået - og tak for det.
>
Personligt ville jeg dog ikke bruge de inderste klammer på steder hvor
det ikke er nødvendigt, men blot gøre det sådan her.

function Velkommen() {
error_reporting (E_ALL);
print "Velkommen på min side";
}


--
mvh, A:\Feldborg

Slægtsforskning og lokalhistorie i midt- vestjylland
http://hammerum-herred.dk/

Christine (13-08-2006)
Kommentar
Fra : Christine


Dato : 13-08-06 17:52

> Jeg vakler lidt imellem om jeg skal sende dig min
> fejlhåndterings-includefil, fordi jeg kan huske at jeg selv var møgtræt
> af ikke at kunne se på noget fungerende kode som andre havde lavet, i
> begyndelsen. Sig lige til hvis du vil have den (jeg vil ikke poste
> indholdet her, det er trods alt sikkerhedsrutiner som er i sving hos et
> par af mine kunder også )

Jesper, det er bare det, jeg skal også lære at læse de
rejlmeddelelser rigtigt.
Kan du ikke bare sende den includefil til mig privat?
Hilsen
Christine


Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408522
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste