Avatar billede peturkirke Novice
18. april 2009 - 09:53 Der er 41 kommentarer og
1 løsning

include og #

jeg har prøvet at lave dette:

include("contact.php#errortext");

Det som jeg prøver på er at linke til et bestemt sted på siden, ligesom man gør med <a name=errortext>, men det giver denne fejl:

Warning: include(contact.php#errortext) [function.include]: failed to open stream: No such file or directory in ...

Er det ikke muligt at gøre dette ? Eller skal syntaxen ændres ?
Avatar billede erikjacobsen Ekspert
18. april 2009 - 10:03 #1
Det er ikke muligt. Det skal være et filnavn, og ikke en url.
Avatar billede Slater Ekspert
18. april 2009 - 11:23 #2
Jeg bider lidt mærke i at du siger "jeg prøver på er at linke til et bestemt sted", men include() funktionen kan slet ikke bruges til at linke.

Includes sker server-side, før brugeren og browseren modtager noget data, og læser bare en fil som PHP-kode. Hvad havde du forestillet dig at include med #-syntaks skulle gøre? Læse FRA det sted i filen og resten ud, og ignorere alt der kom før det?

For at lave et alternativ, er det i hvert fald nødvendigt at vide hvad du prøver at komme frem til.
Avatar billede webweaver Praktikant
18. april 2009 - 11:27 #3
Forklar lidt nærmere ja. Som Viperine siger, så er include slet ikke beregnet til noget i den stil. Så skal du måske snarere over i noget header(Location: ... ).. Men forklar nærmere :)
Avatar billede peturkirke Novice
18. april 2009 - 12:41 #4
Det er ret indviklet at forklare, hvordan det hænger sammen, men det er noget med at jeg bruger Ajax, innerHtml, og include.
Når jeg så loadede en side ind, endte jeg i bunden på siden, men ville gerne have at jeg skulle ende i toppen af siden. Da var det, at jeg prøvede include med #.
Jeg har nu løst det på en anden måde. Jeg satte et image i respons, samt en onload med location.hash, og det fungerer fint.

Tak for hjælpen.
Avatar billede olebole Juniormester
18. april 2009 - 15:08 #5
<ole>

Det er måske ikke særlig smart at blande moderne teknikker som Ajax sammen med oldgammel og invalid kode som innerHTML - der jo intet har at gøre sammen med Ajax  ;o)

/mvh
</bole>
Avatar billede peturkirke Novice
19. april 2009 - 04:03 #6
nu er jeg flere gange stødt på advarsler mod innerHtml. Kan du lige forklare lidt mere detaljeret, hvad der er problemet med det ?

Jeg bruger det et sted i min kode, og det ser ud til at virke fint både i IE og FF.
Avatar billede olebole Juniormester
19. april 2009 - 12:50 #7
InnerHTML blev indført i IE 4 som et forsøg på at lave et værktøj til at manipulerer sidens elementer med. Der er masser af tekniske årsager (herunder namespace problematikken i forbindelse med XHTML) til, at W3C endnu aldrig har indlemmet den i en standard, men i stedet har indført en standardiseret DOM, som helt har overflødiggjort innerHTML.

Også af rent praktiske årsager bør man efter min mening undgå innerHTML. Jeg behandler et par stykker i:
    http://www.dengodekode.dk/artikler/DOM/no_innerhtml.php

Læg også mærke til, at det i allerbedste fald tager 4-5 gange så lang tid at HTML-formatere data på serveren, end det gør at JSON- eller XML-formatere de samme data.

Den bedste begrundelse for at fortsætte med innerHTML synes således at være, at man ikke gider lære noget nyt - og dét kan vel næppe kaldes en saglig begrundelse  =)
Avatar billede Slater Ekspert
19. april 2009 - 13:53 #8
Fyy, Ole. Du har jo brugt <q>-tags med quotes omkring på den side, stik imod specifikationen! :P
Avatar billede peturkirke Novice
19. april 2009 - 14:35 #9
hvordan omskriver jeg dette til DOM:

function stateChanged()
{
  if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
  {
      document.getElementById("mit_div").innerHTML=xmlHttp.responseText
  }
}
Avatar billede erikjacobsen Ekspert
19. april 2009 - 14:42 #10
Det kommer an på hvad der står i din tekst.
Avatar billede olebole Juniormester
19. april 2009 - 19:04 #11
viperine >> "Fyy, Ole. Du har jo brugt <q>-tags med quotes omkring på den side, stik imod specifikationen!" >> og så?
Avatar billede olebole Juniormester
19. april 2009 - 19:13 #12
viperine >> kan du forresten ikke lige forsyne os med et link til stedet i W3C's rekommandationer, hvor det skulle fremgå?
Avatar billede peturkirke Novice
19. april 2009 - 19:20 #13
min tekst indeholder en masse, formfelter, images osv.

og det bliver alt indsat i en div
Avatar billede erikjacobsen Ekspert
19. april 2009 - 20:07 #14
"indeholder en masse" ... så er det måske en forkert teknologi, du har valgt.
Avatar billede peturkirke Novice
19. april 2009 - 21:45 #15
hmm .. det fungerer i hvert fald fint indtil videre.

Men hvis innerHtml er så farligt, som du siger, så vil jeg selvfølgelig få det skiftet ud
Avatar billede olebole Juniormester
19. april 2009 - 22:18 #16
Det er vist kun strømstikket på din PC, der er farligt - men derfor kan det nu alligevel godt betale sig at undgå innerHTML  ;o)
Avatar billede peturkirke Novice
19. april 2009 - 23:01 #17
uhadada, jeg har en fejl i IE, som hedder: unknown runtime error

jeg er bange for at den har noget med innerHtml at gøre :)

men denne fejl har ikke noget med ajax koden at gøre

kender du årsagen til denne fejl, og kan du forklare den helt kort og pedagogisk ?
Avatar billede olebole Juniormester
20. april 2009 - 00:46 #18
Det kan skyldes rigtig mange ting. Det er ikke til at gætte sig til, hvad  =)
Avatar billede Slater Ekspert
20. april 2009 - 08:38 #19
Ole: Når du nu vælger at tage det som en fornærmelse i stedet for en venligt mobbende bemærkning, fordi du netop altid går så meget op i standarderne, så jo, det kan jeg da sagtens

http://www.w3.org/TR/html401/struct/text.html#h-9.2.2.1

"Authors should not put quotation marks at the beginning and end of the content of a Q element."
Avatar billede webweaver Praktikant
20. april 2009 - 11:24 #20
Hey drenge, tråden har allerede et accepteret svar.
Lad dog hinanden være og drop jeres offtopic :)

Dette spørgsmål er lukket.
Avatar billede lars_computerworld Seniormester
21. april 2009 - 00:44 #21
Nu har Admin brugt 15 minutter på at rydde op i denne tråd, som ellers startede meget fornuftigt. Næste gang overvejer Admin om ikke det er nemmere at blokere brugerne, som ikke kan finde ud af at opføre sig ordentligt, i stedet for at bruge tid på at fjerne deres skænderier. Det er *ikke* sådan man skal bruge Eksperten.

Det gælder *både* olebole og viperine - og jeg er ikke gårdvagt så jeg er ligeglad med hvem som startede!
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