10. november 2003 - 23:31Der er
20 kommentarer og 2 løsninger
Hvordan INCLUDE kommandoer i koden
Hej Alle
Kæmpe problem:
Jeg har en hjemmeside, med en masse forskellige sider. De er delt op i franske, engelske og danske sider.
På hjemmesiden er der også et betalingsmodul, ligeledes med sider på alle tre sprog.
Til betalingsmodulet hører en "kreditkort" side, hvor man angiver kortnummer, udløbsdato med mere.....
Denne side har jeg desværre kun én af - derfor er det nødvendigt for mig, at alt afhængig af hvilken side brugeren kommer fra (DK, GB eller F) - at han kun ser tekst med sit eget sprog.
Kreditkort siden hedder pay.asp og den skal vel kaldes med nogle include benævnelser ???
At lave include sider/filer kan jeg overhovedet ikke finde ud af !!!!
Så mit spørgsmål er:
1. Hvad skal jeg angive som links til pay.asp og 2. Hvordan ser koden ud i pay.asp, når tekstindholdet skal være afhængigt af includekommandoerne der kommer fra linket ???
TAK - Håber mit spørgsmål er forståeligt, ellers vil jeg med glæde uddybe.
<% LANGUAGE=Request.QueryString("lang") If LANGUAGE = "DK" Then %><!-- #include file="dinSprogfil_DK.asp" --><% Else If LANGUAGE = "GB" Then %><!-- #include file="dinSprogfil_GB.asp" --><% Else If LANGUAGE = "F" Then %><!-- #include file="dinSprogfil_F.asp" --><% Else %><!-- #include file="dinSprogfil_Standard.asp" --><% End If %>
Jeg går ud fra, at pay.asp filen skal kaldes nogenlunde sådan her: pay.asp?sprog='dk'
..og inde i pay.asp filen, skal der så være noget kode, der alt afhængig af, om det er DK, GB eller F der føres over, skriver noget tekst forskellige steder på siden i det respektive sprog. Er det sådan har man gør ??
If sprog = "DK" Then Response.Write="Kreditkortnummer"
Else If sprog = "GB" Then Response.Write="Paymentcardnumber"
osv.....
Men hvordan er det lige, det skal gøres nemmest og pænest ???
<!-- #include file="dinSprogfil_DK.asp" --><% Else If LANGUAGE = "GB" Then
<% select case LCase(request.querystring("sprog")) case "dk" %> <!-- #include file="dinSprogfil_dk.asp" --> <% case "gb" %> <!-- #include file="dinSprogfil_gb.asp" --> <% case "f" %> <!-- #include file="dinSprogfil_f.asp" --> <% case else %> <!-- #include file="dinSprogfil_standard.asp" --> <% end select %>
Select Case er hurtigere end IF-sætninger.
mm12010> Når du skal sammenligne 2 strenge, skal du huske at sætte dem i samme case, dvs entet store bogstaver ("UCase"), eller små bogstaver ("LCASE").
Fordi: "Dk" er ikke det samme som "DK" eller "dK".
<% select case LCase(request.querystring("sprog")) case "dk" Response.Write("Kreditkort#") case "gb" Response.Write("Creditcard#") case "f" Response.Write("Noget på fransk") case else Response.Write("Noget på et sprog alle kan forstå") end select %>
<% select case LCase(request.querystring("sprog")) case "dk" Response.Write("<strong>Kreditkort#</strong>") 'mere asp case "gb" Response.Write("<strong>Creditcard#</strong>") 'mere asp case "f" Response.Write("<strong>Noget på fransk</strong>") 'mere asp case else Response.Write("<strong>Noget på et sprog alle kan forstå</strong>") 'mere asp end select %>
Jeg vil anbefale at du ALTID bruger Option Explicit i toppen (allerøverst) af dine asp filer. Det gør at du altid skal definere dine variabler, og på den måde kan den finde stavefejl i variabelnavne, idet du bruger en navn den ikke kender.
Dette spørgsmål mangler input. Det kan f.eks. være at spørgeren mangler at acceptere/afvise svar/komme med feedback, eller af en svarer mangler at lægge et svar/komme med feedback.
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.