Hét vraag- en antwoordplatform van Nederland

Hoe voeg ik links bij mijn header in PHP?

Hoi iedereen,

ik wil graag een header in PHP maken, en ik weet dat dit makkelijk kan door "$headeritems = array("de", "items", "in", "je", "header");" en vervolgens "

", maar ik weet niet hoe ik links bij die headeritems kan voegen. Weet er iemand hoe?

Noot: Ik ben een beginner met heel weinig PHP-kennis.

Verwijderde gebruiker
8 jaar geleden
1K
Verwijderde gebruiker
8 jaar geleden
Je vraag is wat onduidelijk. Wat bedoel je met een header? Je maakt een bulleted list met 1 item in je voorbeeld. Wil je dat alle woorden uit je array hyperlinks worden? Dan moet je iets doen als:


  • foreach ($headeritems as $item)
    {
    echo ''.$item.'';
    }
    ?>

Nogmaals, ik twijfel of dit is wat je bedoelt, maar misschien brengt deze code je op ideeen!
Verwijderde gebruiker
8 jaar geleden
Nee, normaal gezien zou je 5 items in die list moeten krijgen, namelijk
- de
- items
- in
- je
- header En met CSS kan je die dingen dan naast elkaar zetten enz. Maar wat ik wil, is voor ze allemaal een afzonderlijke link, en ik weet niet hoe dat moet. Dat is mijn vraag :)

Heb je meer informatie nodig om de vraag te beantwoorden? Reageer dan hier.

Het beste antwoord

Ik zou er twee arrays van maken, één met de headeritemteksten en één met de links, en er in een for-loop voor zorgen dat de twee elementen samen met wat extra code worden ge-echoot. Dit is mijn opzet:

$headeritems = array("de", "items", "in", "je", "header");
$headerlinks = array("de.php", "links.html", "in.jpg", "je.php", "http://mijnsite.nl/header.php");

echo "
    ";
    for($x=0;$x if(isset($headerlinks[$x]) && $headerlinks[$x]!=""){
    echo "
  • $headeritems[$x]
  • ";
    }
    else{
    echo "
  • $headeritems[$x]
  • ";
    }
    }
    echo "
";

Aangezien je beginner bent zal ik het even uitleggen:
In de eerste twee rregels maak dus de twee arrays aan. De eerste link hoort natuurlijk bij het eerste item, de tweede link bij het tweede item enz. Je kunt zoveel items en links toevoegen als je wilt. Als je een item zonder link wilt maken (wat me onwaarschijnlijk lijkt in een header, maar wie weet), mag je een link leeg laten, dus "".
Daarna echo'en we het begin van onze unordered list (
    );
    Een for-loop stelt een variabele $x op 0, checkt de voorwaarde ($x moet kleiner zijn dan het aantal items in $headeritems), voert de code tussen { en } uit en voegt tot slot 1 aan $x toe ($x++).
    Elke keer dat we een item willen echo'en checken we eerst of er nog wel een headerlink aanwezig is (anders krijg je errors als je (per ongeluk) $headerlinks minder items geeft dan $headeritems) en of die link niet leeg ("") is. Als er een link is, echo'en we gewone HTML-code, met daarin twee variabelen: we willen natuurlijk dat onze tekst zichtbaar is ($headeritems[$x]) en we moeten de a-tag natuurlijk een href-attribuut met als waarde onze link geven (want daar gaat dit geheel over). Aangezien ik met dubbele aanhalingstekens werk mag ik gewoon de naam van een variabele tussen " en " zetten (php herkent aan $ dat het een variabele is). Als je enkele aanhalinkstekens zou gebruiken, zou je strinngs en variabelen met een punt aan elkaar moeten koppelen, maar dat ter zijde.
    Mocht er nou geen link zijn ($headerlinks op of leeg), echo'en we hetzelfde, maar nu zonder a-tag en dus ook zondder href-attribuut.
    Wanneer al onze lijstitems zijn ge-echoot is $x groter dan het aantal $headeritems (count($headeritems)) en dus wordt er niet meer aan de voorwaarde voldaan en dus wordt de for-loop beëindigd. De laatste regel wordt dan uitgevoerd. We moeten onze ul immers nog sluiten

    Succes!

    Toegevoegd na 3 minuten:
    nog twee plaatjes
    imgur.com/ARwLFIh
    imgur.com/UAzfsXn
(Lees meer...)
Verwijderde gebruiker
8 jaar geleden
Antoni
8 jaar geleden
De plaatjes bij je antwoord zijn niet aan te klikken.
http://i.imgur.com/ARwLFIh.png
http://i.imgur.com/UAzfsXn.png
Verwijderde gebruiker
8 jaar geleden
Ik heb geen verstand van PHP, maar als ik in de code lees: $headerlinks[$x]!="" dan denk ik dat het zijn moet: "$headerlinks[$x]!<>"" ".
Ik ga het toch maar eens leren.
Verwijderde gebruiker
8 jaar geleden
@Axel: + (zelfs ik stak er nog wat van op ;)
@Theo:
!= betekent "niet gelijk aan"
Verwijderde gebruiker
8 jaar geleden
Dank je Jack. Dat was ik vergeten.
Verwijderde gebruiker
8 jaar geleden
Dankje! Ik geloof dat ik nu verder kan :)

Weet jij het beter..?

Het is niet mogelijk om je eigen vraag te beantwoorden Je mag slechts 1 keer antwoord geven op een vraag Je hebt vandaag al antwoorden gegeven. Morgen mag je opnieuw maximaal antwoorden geven.

0 / 2500
Gekozen afbeelding