Avatar billede jakras Nybegynder
02. juli 2010 - 09:55 Der er 15 kommentarer og
1 løsning

tildel ID til contentheading

Hej

Er det muligt på en eller anden måde at få tildelt ID automatisk til class="contentheading"?

Nu hedder det
<td class="contentheading" width="100%">
                    title            </td>

Jeg vil gerne have at den automatisk skal sætte sidens ID (6) ind så det bliver:

<td id="6" class="contentheading" width="100%">
                    title            </td>


Dette skal ske automatisk hver gang der forekommer et tilfælde af contentheading.

Det må kunne lade sig gøre at rette det i php-filen.

På forhånd tak!
Avatar billede hypofysen Nybegynder
02. juli 2010 - 10:00 #1
<td id="<?php print @$_GET['id']; ?>" class="contentheading" width="100%">
Avatar billede repox Seniormester
02. juli 2010 - 10:03 #2
Først og fremmest vil jeg godt fremhæve det forkerte i at undertrykke fejl som #1 lægger op til - anvendelsen af @ til at undertrykke fejlmeddelelser i PHP er som at pisse i bukserne for at holde varmen...

Dernæst kan jeg da pointere at det ikke er nemt at finde ud af hvilket ID du snakker om, hvor du får det fra eller til hvilken anvendelse det skal bruges UDEN nogen som helst form for kildekode...
Avatar billede ggxdg Nybegynder
02. juli 2010 - 10:05 #3
Hvad resulterer i en content heading?

Du kan lave diverse loops, men hvis jeg husker ret må en ID ikke være et rent tal, og så skal du passe på med at du ikke får ens ID'er når du laver dem dynamisk.

$iV = 10;
for ($i=0; $i<10; $i++;) {
    echo "<td id='chid".$i."' class='contentheading' width='100%'>                    title            </td>"
}
Avatar billede ggxdg Nybegynder
02. juli 2010 - 10:07 #4
"$i<$iV" skulle der stå i for loopet i stedet for "$i<10"
Avatar billede repox Seniormester
02. juli 2010 - 10:08 #5
#3
Et ID må gerne være et tal og intet andet - det er en tilfældig attribut til et element; det giver dog problemer med CSS og scripting.

Typisk er det kun variabler og konstanter (klassenavne i CSS også) som vil fejle når du starter navngivelser med tal eller navngiver dem med tal alene.

Men som sådan må en attribut indeholde hvad du lyster.
Avatar billede jakras Nybegynder
02. juli 2010 - 10:20 #6
ID skal hentes fra det nummer min artikel får i article manager.

Det er fordi jeg vil bruge id'et til at lave anchors.

hvad er så den rigtige løsning?
Avatar billede jakras Nybegynder
02. juli 2010 - 10:23 #7
alternativt er det muligt at lave et anchor hvor man ved at hoppe til anchor styler det i css således at man hopper eksempelvis 20 px kortere ned end hvor anchor er placeret?
Avatar billede repox Seniormester
02. juli 2010 - 10:24 #8
Vi kan stadig ikke gætte os frem til hvordan dit ID fremkommer i din kode - så kan vi heller ikke fremsætte noget kode som du kan bruge...

Bare smit et a ind foran dit artikel id:
<td id="a<?php echo $id; ?>" class="contentheading" width="100%">
  title           
</td>


Og så linker du jo bare dit anchor med:
<a href="#a<?php echo $id; ?>">Blah</a>
Avatar billede repox Seniormester
02. juli 2010 - 10:25 #9
#7
Nej, adfærden af et anchor bestemmes af browseren - det er ikke noget du kan påvirke. Hvis du vil placeres 20px før noget, må du placere dit anchor id der på anden vis.
Avatar billede ggxdg Nybegynder
02. juli 2010 - 10:48 #10
#5

Iflg.
http://www.w3schools.com/tags/att_standard_id.asp


Naming rules:

- Must begin with a letter A-Z or a-z
- Can be followed by: letters (A-Za-z), digits (0-9), hyphens ("-"), underscores ("_"), colons (":"), and periods (".")
- Values are case-sensitive

Det kan godt være at et rent tal ID virker, som ID og anchor, men det er ikke god HTML :P
Avatar billede jakras Nybegynder
02. juli 2010 - 10:53 #11
tak repox,

ced du så hvilken fil i joomla jeg kan rette det i?
Avatar billede repox Seniormester
02. juli 2010 - 11:00 #12
#10
Jeg medgiver jeg tog fejl ;) attributterne name og id er særlige attributter og kan ikke navngives med tal som prefix. Årsagen er ganske simpelt bagudkompabilitet - som angivet her i punk C8: http://www.w3.org/TR/2002/REC-xhtml1-20020801/#guidelines

#11
Jeg kender heldigvis ikke Joomla, så jeg kan ikke sige hvordan eller hvor du skal hente det rette data ud og anvende dem.
Avatar billede jakras Nybegynder
02. juli 2010 - 11:02 #13
repox,

<?php echo $id; ?> finder ikke frem til artiklens id fra joomla.

der må mangle noget?
Avatar billede ggxdg Nybegynder
02. juli 2010 - 11:20 #14
$id er efter al sansynlighed en opdigtet variabel, du enten skal udskifte med en anden variabel for at give en korrekt værdi, eller også skal du selv definere og opdatere den.

en hurtig googling gav flg.:
http://www.learnwebdesignonline.com/tutorials/joomla/get-article-id

<?php echo JRequest::getVar('id'); ?>

prøv evt.:
<td id="a<?php echo JRequest::getVar('id'); ?>" class="contentheading" width="100%">  title            </td>

Jeg aner intet om Joomla, men hvis det virker; Hurra for google :P
Avatar billede jakras Nybegynder
02. juli 2010 - 15:19 #15
tak for jeres hjælp.

jeg endte med at finde ud af det ved at prøve mig frem...
Avatar billede jakras Nybegynder
15. december 2010 - 20:47 #16
slut
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