Avatar billede greenie Nybegynder
02. juni 2012 - 17:11 Der er 7 kommentarer og
1 løsning

Breadcrumbs

Hvordan får jeg mine breadcrumbs til at vise æ i stedet for ae osv. for ø og å samt hvis det er store bogstaver?

// Breadcrumbs
function breadcrumb() {

$root = 'http://psykoterapeut-nyborg.dk/'; // Domænet på dit website.
$dirs = explode('/', $_SERVER['PHP_SELF']); // Split ved slashes. Altså mellem mapper.
$size = sizeof($dirs)-1; // Antal biblioteker.
$outp = 'Du er her: <a href="' . $root . '">Forside</a>'; //Start-linket/roden.
$div = ' - '; // Tegn ved adskillelse af links mellem biblioteker i output.
$fnam = substr($dirs[$size], 0, strrpos($dirs[$size], '.')); // Filnavn (mellem begyndelse af sidste element i $dirs-array'et og (sidste) punktum).

for ($i = 1; $i < $size; $i++) {

$outp .= $div . '<a href="' . $root . $dirs[$i] . '/">' . ucwords(strtr($dirs[$i], '_', ' ')) . '</a>'; // adskillelse og link til det aktuelle bibliotek ($dirs[$i]) .
$root .= $dirs[$i] . '/'; // Føj det aktuelle bibliotek til $root.
}
//$outp .= $div . '<a href="' . $root . $dirs[$size] . '">' . ucwords(strtr($fnam, '_', ' ')) . '</a>'; // Skriver link til filnavn.
$outp .= $div . '' . ucwords(strtr($fnam, '_', ' ')) . ''; // Skriver link til filnavn.
$out = str_replace("_", " ", $out);
return $outp;
}
?>
Avatar billede olebole Juniormester
02. juni 2012 - 17:27 #1
<ole>

$aRepl = array(
    '_' => ' ',
    'ae' => 'æ',
    'oe' => 'ø',
);
// Breadcrumbs
function breadcrumb() {
    $root = 'http://psykoterapeut-nyborg.dk/'; // Domænet på dit website.
    $dirs = explode('/', $_SERVER['PHP_SELF']); // Split ved slashes. Altså mellem mapper.
    $size = sizeof($dirs)-1; // Antal biblioteker.
    $outp = 'Du er her: <a href="' . $root . '">Forside</a>'; //Start-linket/roden.
    $div = ' - '; // Tegn ved adskillelse af links mellem biblioteker i output.
    $fnam = substr($dirs[$size], 0, strrpos($dirs[$size], '.')); // Filnavn (mellem begyndelse af sidste element i $dirs-array'et og (sidste) punktum).
   
    for ($i = 1; $i < $size; $i++) {
        $danish = ucwords(strtr($dirs[$i], $aRepl));
        $outp .= $div . '<a href="' . $root . $dirs[$i] . '/">' . $danish . '</a>'; // adskillelse og link til det aktuelle bibliotek ($dirs[$i]) .
        $root .= $dirs[$i] . '/'; // Føj det aktuelle bibliotek til $root.
    }
    //$outp .= $div . '<a href="' . $root . $dirs[$size] . '">' . ucwords(strtr($fnam, '_', ' ')) . '</a>'; // Skriver link til filnavn.
    $outp .= $div . '' . ucwords(strtr($fnam, '_', ' ')) . ''; // Skriver link til filnavn.
    $out = str_replace("_", " ", $out);
    return $outp;
}

/mvh
</bole>
Avatar billede greenie Nybegynder
03. juni 2012 - 14:40 #2
Det ændrede ikke noget, jeg har skiftet det du skrev ud med det der var i forvejen.

Jeg vil gerne have at selvom filnavnet hedder noget med ae så skal breadcrumbs vise det som æ osv med ø å
Avatar billede olebole Juniormester
03. juni 2012 - 16:33 #3
Naturligvis har det ændret noget. Koden ændrer jo linkteksterne, så de indeholder mellemrum og æ, ø og å
Avatar billede greenie Nybegynder
03. juni 2012 - 19:03 #4
Så må der være noget galt med siden ud over den kode du har lavet, for den viser det ikke ændret..

se eks. http://psykoterapeut-nyborg.dk/adfaerdsterapi.php
Avatar billede olebole Juniormester
03. juni 2012 - 19:16 #5
Nej, men der er fejl i din PHP-opsætning, da du ikke får en fejl med den kode  =)

Inde i funktionen kan $aRepl ikke findes, da den er defineret i det globale scope. Derfor skal arrayet enten gøre globalt inde i funktionen eller medsendes som argument. Jeg foretrækker det sidste:

$aRepl = array(
    '_' => ' ',
    'ae' => 'æ',
    'oe' => 'ø',
);
// Breadcrumbs
function breadcrumb($aRepl) {
    $root = 'http://psykoterapeut-nyborg.dk/'; // Domænet på dit website.
    $dirs = explode('/', $_SERVER['PHP_SELF']); // Split ved slashes. Altså mellem mapper.
    $size = sizeof($dirs)-1; // Antal biblioteker.
    $outp = 'Du er her: <a href="' . $root . '">Forside</a>'; //Start-linket/roden.
    $div = ' - '; // Tegn ved adskillelse af links mellem biblioteker i output.
    $fnam = substr($dirs[$size], 0, strrpos($dirs[$size], '.')); // Filnavn (mellem begyndelse af sidste element i $dirs-array'et og (sidste) punktum).
   
    for ($i = 1; $i < $size; $i++) {
        $danish = ucwords(strtr($dirs[$i], $aRepl));
        $outp .= $div . '<a href="' . $root . $dirs[$i] . '/">' . $danish . '</a>'; // adskillelse og link til det aktuelle bibliotek ($dirs[$i]) .
        $root .= $dirs[$i] . '/'; // Føj det aktuelle bibliotek til $root.
    }
    //$outp .= $div . '<a href="' . $root . $dirs[$size] . '">' . ucwords(strtr($fnam, '_', ' ')) . '</a>'; // Skriver link til filnavn.
    $outp .= $div . '' . ucwords(strtr($fnam, '_', ' ')) . ''; // Skriver link til filnavn.
    $out = str_replace("_", " ", $out);
    return $outp;
}

echo breadcrumb($aRepl);
Avatar billede greenie Nybegynder
06. juni 2012 - 15:30 #6
Jeg bruger Dreamweaver cs5.5, og den reagerer med fejl i følgende linjer når jeg indsætter koden i dit sidste svar:

18    $dirs = explode('/', $_SERVER['PHP_SELF']);
20    $outp = 'Du er her: <a href="' . $root . '">Forside</a>';
22    $fnam = substr($dirs[$size], 0, strrpos($dirs[$size], '.'));

og siden melder: Parse error: syntax error, unexpected T_STRING in /home/../head.php on line 18

Hvis jeg så ændrer første linje til:
    $root = 'http://psykoterapeut-nyborg.dk/'; (...)

Så forsvinder de andre fejl, men denne linje melder stadig fejl...

Og så driller den lidt ved det ' du har sat i kommentaren
// Filnavn (mellem begyndelse af sidste element i $dirs-array'et og (sidste) punktum).


Hele headeren ser således ud:

<?php

if (!isset($page_title)) {
$page_title = "Psykoterapeut Nyborg.dk";
} else {
$page_title = "$page_title";
}

// Breadcrumbs
$aRepl = array(
    '_' => ' ',
    'ae' => 'æ',
    'oe' => 'ø',
);
// Breadcrumbs
function breadcrumb() {
    $root = 'http://psykoterapeut-nyborg.dk/'; // Domænet på dit website.
    $dirs = explode('/', $_SERVER['PHP_SELF']); // Split ved slashes. Altså mellem mapper.
    $size = sizeof($dirs)-1; // Antal biblioteker.
    $outp = 'Du er her: <a href="' . $root . '">Forside</a>'; //Start-linket/roden.
    $div = ' - '; // Tegn ved adskillelse af links mellem biblioteker i output.
    $fnam = substr($dirs[$size], 0, strrpos($dirs[$size], '.')); // Filnavn (mellem begyndelse af sidste element i $dirs-array'et og (sidste) punktum).
 
    for ($i = 1; $i < $size; $i++) {
        $danish = ucwords(strtr($dirs[$i], $aRepl));
        $outp .= $div . '<a href="' . $root . $dirs[$i] . '/">' . $danish . '</a>'; // adskillelse og link til det aktuelle bibliotek ($dirs[$i]) .
        $root .= $dirs[$i] . '/'; // Føj det aktuelle bibliotek til $root.
    }
    //$outp .= $div . '<a href="' . $root . $dirs[$size] . '">' . ucwords(strtr($fnam, '_', ' ')) . '</a>'; // Skriver link til filnavn.
    $outp .= $div . '' . ucwords(strtr($fnam, '_', ' ')) . ''; // Skriver link til filnavn.
    $out = str_replace("_", " ", $out);
    return $outp;
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title><? echo $page_title; ?></title>
<link rel="stylesheet" type="text/css" href="/css/style.css">
<link rel="shortcut icon" href="http://anakin.dk/favicon.ico">
</head>
<body>
<table width="980" align="center" border="0">
  <tr>
    <td valign="top">
<?php
  $ugedage = array("Søndag","Mandag","Tirsdag","Onsdag",
    "Torsdag","Fredag","Lørdag");

  $maaneder = array("januar","februar","marts","april","maj",
    "juni","juli","august","september","oktober",
    "november","december");

  $dato_array = getdate();

  echo $ugedage[$dato_array[wday] ] . " d. " ;
  echo $dato_array[mday] . ". " ;
  echo $maaneder[($dato_array[mon]-1)] . " ";
  echo $dato_array[year];
?>
    </td>
    <td valign="top" align="right"><?php print breadcrumb(); ?></td>
  </tr>
  <tr>
    <td colspan="2" align="center"><br /><img src="/images/redwoman.jpg" width="" height="" border="1" /><br /><br /></td>
  </tr>
  <tr>
    <td colspan="2" align="center">
<?php
        echo "<a href='/'>Forside</a> &nbsp; &nbsp; ";
        echo "<a href='/hvem_er_jeg.php'>Hvem er jeg</a> &nbsp; &nbsp; ";
        echo "<a href='/lokaler.php'>Lokaler</a> &nbsp; &nbsp; ";
        echo "<a href='/terapiformer.php'>Terapiformer</a> &nbsp; &nbsp; ";
        echo "<a href='/adfaerdsterapi.php'>Adfærdsterapi</a> &nbsp; &nbsp; ";
        echo "<a href='/nlp.php'>NLP</a> &nbsp; &nbsp; ";
        echo "<a href='/hypnose.php'>Hypnose</a> &nbsp; &nbsp; ";
        echo "<a href='/essensforvandling.php'>Essensforvandling</a> &nbsp; &nbsp; ";
        echo "<a href='/droemmetydning.php'>Drømmetydning</a> &nbsp; &nbsp; ";
        echo "<a href='/priser.php'>Priser</a> &nbsp; &nbsp; ";
        echo "<a href='/kontakt.php'>Kontakt</a>";
?>
    </td>
  </tr>
  <tr>
    <td colspan="2" valign="top"><hr />


og jeg fatter minus :(
Avatar billede olebole Juniormester
06. juni 2012 - 16:06 #7
Jamen, den linje er jo smadret af Ekspertens URL-parser. Der skal stå:

$root = 'http://psykoterapeut-nyborg.dk/'; // Domænet på dit website.

- og du skal naturligvis også rette URL'erne i din HTML-kode, hvis de ser ud som dem i #6  =)
Avatar billede greenie Nybegynder
17. oktober 2013 - 10:21 #8
:)
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