Avatar billede encorez Nybegynder
27. juli 2003 - 21:25 Der er 15 kommentarer og
2 løsninger

Udskriv filnavn

Jeg har ind til nu brugt $PHP_SELF når jeg skulle have skrevet navnet på den fil jeg befandt mig i. Men i det tilfælde hvor jeg skal bruge den nu, skriver den ikke kun filnavnet, der skriver den og de biblioteker som filen ligger i.
Altså hvis filen ligger på en server på adressen h:\fafd\sfsaf\sfhsajkf\tester\www\etbib\etandetbib\filen.php
så skriver PHP_SELF /etbib/etandetbib/filen.php

Hvilken funktion skriver KUN filnavnet ud?
Avatar billede ahv Nybegynder
27. juli 2003 - 21:27 #1
basename($_SERVER['PHP_SELF']);
Avatar billede tipsen Nybegynder
27. juli 2003 - 21:28 #2
echo basename($PHP_SELF);
Avatar billede repsac Nybegynder
27. juli 2003 - 21:29 #3
Avatar billede ahv Nybegynder
27. juli 2003 - 21:29 #4
Ja også er det jo så kun $PHP_SELF med de gamle variabler.
Avatar billede encorez Nybegynder
27. juli 2003 - 21:31 #5
hvad er forskellen på om man bruger _SERVER[] eller ej?
Avatar billede tipsen Nybegynder
27. juli 2003 - 21:31 #6
$PHP_SELF virker (med defaultindstillinger) til (men ikke med) PHP v. 4.2, mens $_SERVER['PHP_SELF'] virker fra PHP v. 4.1 (uanset defaultindstillinger!)
Avatar billede repsac Nybegynder
27. juli 2003 - 21:34 #7
... eller med andre ord, brug $_-notationen hvis det virker, idet den "gamle" notation (uden) bliver udfaset... (svjh noget sikkerhedstamtam?)
Avatar billede tipsen Nybegynder
27. juli 2003 - 21:36 #8
repsac: "svjh" !?

Fra PHP v. 5 vil det ikke længere være muligt at bruge den gamle notation og det er rigtigt nok pga. sikkerhedsproblemer.
Avatar billede encorez Nybegynder
27. juli 2003 - 21:42 #9
vil det sige at man fra v5 heller ikke kan få fat i sendte variabler bare ved at skrive $test, men SKAL skrive $_POST[test] eller $_GET[test] f.eks.?
Avatar billede repsac Nybegynder
27. juli 2003 - 21:42 #10
tipsen: www.google.com/search?q=svjh+betyder svjh = "Så Vidt Jeg Husker" :)
Avatar billede tipsen Nybegynder
27. juli 2003 - 21:44 #11
repsac: Elsker at pille andre ned vha. en google-søgning, men kan (selvfølgelig) ikke lide selv at blive udsat for det :-P
Avatar billede Slettet bruger
27. juli 2003 - 22:50 #12
tipsen:

"Fra PHP v. 5 vil det ikke længere være muligt at bruge den gamle notation..."

Hvor har du iøvrigt det fra?

Mig bekendt kan man stadig i version 5 slå register_globals ON.
Avatar billede tipsen Nybegynder
27. juli 2003 - 23:31 #13
mercur8: Jeg mener jeg læste det i en af nyhedsgrupperne om php, men præcis hvilken kan jeg selvfølgelig ikke huske - mener det er 4-5 måneder siden jeg læste det.
Avatar billede Slettet bruger
27. juli 2003 - 23:33 #14
Jeg er ret sikker på det ikke er korrekt. De gør alt hvad de kan, for at det skal være bagudkompatibelt.
Avatar billede tipsen Nybegynder
28. juli 2003 - 01:10 #15
Jeg kan ikke se, hvorfor de skulle kæmpe for at gøre det bagud kompatibelt med en indstilling som de egentlig helst så forsvinde langt væk - og som de giver folk ca. et år til at lære at leve uden!
Avatar billede Slettet bruger
28. juli 2003 - 03:10 #16
Ok.
Avatar billede Slettet bruger
28. juli 2003 - 03:50 #17
http://www.zend.com/php/ask_experts.php

Question:
Can we expect to see the concept of register globals removed from PHP? Doing so seems like a good idea, though it will obviously break a very large number of currently used php applications. The use of register globals is a bad programming habit, however, and I wouldn't be at all upset to see it missing from version 5.
 
Answer:     
While we certainly encourage sites to disable register_globals, there are no plans to remove this option. Compatibility is of primary concern, and we also have to bare in mind that it's not impossible to write a secure application, even if it uses register_globals.
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