Avatar billede kischi Novice
15. december 2008 - 01:06 Der er 10 kommentarer og
1 løsning

oprette links automatisk

Hej, Jeg er igang med at lave en side hvor det er muligt at oprette en post og en beskrivelse tilhørende denne post.

Det jeg vil have er at hvis man udfylder noget i beskrivelses feltet, kommer der et link som hedder "læs mere" på en anden side.

Indtil videre kommer linket altid så den nogle gange linker til en tom side, hvis man ikke har tilknyttet en beskrivelse til posten.

I kan se det i praksis her, hvilket nok vil gøre det lidt næmmere at forstå:

Oprette post:
http://radio.web.surftown.dk/admin/indset_program.aspx

se posten, bemærk at datoen skal være efter dags dato før den kan ses:
http://radio.web.surftown.dk/udsendelser.aspx

I er velkommen til selv at prøve at oprette poste og se hvad jeg mener hvis i ikke helt forstår det.

Det her er min kode som opretter linket:

[code]<a href="viewpage.aspx?task=edit&id=<%# Eval ("id") %>">Læs mere...</a>[/code]

Sig til hvis i har brug for mere info.

Håber i kan forstå hvad jeg mener?

Mvh. Adam

Tak
Avatar billede Syska Mester
15. december 2008 - 01:54 #1
i din kode:
<% if(eval("beskrivelse").ToString().Length > 0){%>
<a href="viewpage.aspx?task=edit&id=<%# Eval ("id") %>">Læs mere...</a>
<% } %>

// ouT
Avatar billede Syska Mester
15. december 2008 - 01:56 #2
Ikke testet for fejl ... skrevet her ...

Eventuelt hvis beskrivelse kan være stor, kan du eventuelt lave din SQL om, så du får en bool med tilbage som du kan bruge til at teste om link skal oprettes, da det jo er spild af kræfter at hente beskrivelse med fra sql serveren for bare at smide de data væk igen ...

// oUIT
Avatar billede kischi Novice
15. december 2008 - 13:11 #3
Ja jeg kan godt se hvad du prøver på i din første post.
Men når jeg gør det kommer der en fejlmeddellelse på:
http://radio.web.surftown.dk/udsendelser.aspx

Den er inde i en repeater, og koden er på aspx siden.
Ved du hvad problemmet skyldes?

Mvh. Adam
Avatar billede Syska Mester
15. december 2008 - 13:22 #4
Hej,

Det har noget med havelågen "#" at gøre

Måske følgende virker ... er ikke lige i nærheden af min delvop computer ... men prøv følgende ...

<%# if(eval("beskrivelse").ToString().Length > 0){%>
<a href="viewpage.aspx?task=edit&id=<%# Eval ("id") %>">Læs mere...</a>
<%# } %>
Avatar billede kischi Novice
15. december 2008 - 14:45 #5
Hej, nu har jeg ændret koden til: <%# if( Eval("beskrivelse").ToString().Length > 0){%>
    <a href="viewpage.aspx?task=edit&id=<%# Eval ("id") %>">Læs mere...</a></div></div><br />
<%} %>

Som du sagde. Men nu kommer der en anden fejl.
http://radio.web.surftown.dk/udsendelser.aspx

Jeg tror nok også det har noget med havelågen at gøre, men jeg ved bare ikke hvor den ellers skal placeres?

Mvh. Adam
Avatar billede Syska Mester
15. december 2008 - 15:03 #6
Jeg tågede :-|

Følgende virker ... :-)

<asp:Repeater ID="re" runat="server">
            <ItemTemplate>
                <asp:Label ID="lbl" runat="server" Text='<%# Eval("Title") %>' />
                <%#
                    (Eval("Desc").ToString().Length > 0) ? "" : "her er en beskrivelse"
                %>
                <p></p>
            </ItemTemplate>
        </asp:Repeater>
Avatar billede Syska Mester
15. december 2008 - 15:04 #7
Så skal du selvf bare erstatte det med teksten/linket du ønsker at bruge ... og så kan jeg se at jeg har byttet rundt på min if ting ...
Avatar billede kischi Novice
15. december 2008 - 15:46 #8
Hej igen,

Nu har jeg skrevet noget af det kode du også skrev, men jeg har måske brugt den forkert.
Nu skriver den det stadig hver gang og den er ikke et link ligesom i min oprindelige kode.
Og jeg forstod ikke helt det med label, og den virkede ikke da jeg prøvede at indsætte den. Jeg tror måske det var fordi den var inde i en repeater.

sådan her ser min kode ud nu:
<%#
                    (Eval("titel").ToString().Length > 0) ? "" : "her er en beskrivelse"
                %>
               
    <a href="viewpage.aspx?task=edit&id=<%# Eval ("id") %>">Læs mere...</a>

Ved du hvad jeg har gjordt forkert?

Mvh. Adam
Avatar billede Syska Mester
15. december 2008 - 16:32 #9
Det er så meningen at du skal have linket ind der hvor der står beskrivelse:

<%#
(Eval("titel").ToString().Length > 0) ? "<a href=\"viewpage.aspx?task=edit&id=" + Eval ("id").ToString() + "\">Læs mere...</a>" : ""
%>
Avatar billede kischi Novice
15. december 2008 - 17:05 #10
Helt sikkert, perfekt nu virker det. :-D

Tusind tak.
Avatar billede Syska Mester
15. december 2008 - 17:13 #11
svar
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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