Ondersteuning » Code oplossingen gezocht » content in nieuwe pagina mysql

  • Hallo,

    Ik ben nog niet heel lang geleden begonnen met programmeren. Ik heb mijn eigen website nu online, maar ik loop tegen iets aan.
    Ik wil graag dat de disclaimer een link is, dit is gelukt, ik wil dat als je erop klikt, de inhoud te zien is. Dit is ook gelukt. Maar de inhoud opent niet in een lege pagina maar loopt nu dwars door de footer heen. De inhoud komt uit een database dus ik moet iets doen in de $fetch (denk ik). Het is waarschijnlijk een heel simpel klein dingetje. Maar ik weet het even niet meer. Hieronder de code:

    <!DOCTYPE html>
    <html>
    <head>
    <title>inarray</title>
    <meta charset=”UTF-8″,
    <link rel=”stylesheet”
    href=”blueprint/src/reset.css”
    type=”text/css”>
    <link rel=”stylesheet”
    href=”blueprint/src/typography.css”
    type=”text/css”>
    <link rel=”stylesheet”
    href=”blueprint/src/forms.css”
    type=”text/css”>
    <link rel=”stylesheet”
    href=”style.css”
    type=”text/css”>

    </head>

    <body>

    <?php

    $connection=mysqli_connect(‘localhost’, ‘root’, ”, ‘inarray’);

    if(!$connection)
    {
    echo ‘Pagina is niet verbonden met database.’;
    }

    $query = mysqli_query($connection, “SELECT * FROM inarray WHERE volgorde ORDER BY volgorde ASC”);

    echo ‘<div id=”container”>’;

    echo ‘<div id =”header”>’;
    echo ‘<IMG src=”header/InArray_trans_header.png”><width=”540″ height=”435″ alt=”responsive design image” class=”img”>’;
    echo ‘</div>’;
    echo ‘<div class=”clear”></div>’;

    echo ‘<div id=”content”>’;
    echo ‘<div id=”main”>’;
    echo ‘<div class=”text”>’;
    while ($fetch = mysqli_fetch_assoc($query))
    {
    echo ‘<div class=”‘ . $fetch[‘class’] . ‘”>’ . $fetch[’title’] . $fetch[‘content’] . ‘</div>’;

    if($fetch[‘class’] == ‘b’)
    {
    echo ‘<div class=”clear”></div>’;
    }

    if($fetch[‘class’] == ‘d’)
    {
    echo ‘<div class=”clear”></div>’;
    }

    }

    $aquery = mysqli_query($connection, “SELECT * FROM disclaimer”);
    while ($afetch = mysqli_fetch_assoc($aquery))
    {
    if($afetch[‘code’] == ‘disclaimer’)
    {
    echo ‘‘ .$afetch[’title’]. ‘‘;
    }

    if(isset($_GET[‘page’]))
    {
    $pagequery = mysqli_query($connection, “SELECT * FROM disclaimer WHERE code = ‘”.$_GET[‘page’].”‘”);

    $pagefetch = mysqli_fetch_assoc($pagequery);

    echo ‘<h1>’ .$pagefetch[’title’]. ‘</h1>’;
    echo ‘<div class=”clear”>’;
    echo ‘<p>’ .$pagefetch[‘content’] . ‘</p>’;

    }
    }

    /*text class*/
    echo ‘</div>’;

    /*main div */
    echo ‘</div>’;

    echo ‘</div>’;
    echo ‘<div id=”footer”>’;

    echo ‘<div class=”elisa”>’;
    echo ‘Powered by Elisa van Gerven owner’;
    echo ‘</div>’;

    echo ‘<div class=”logo”>’;
    echo ‘<IMG src=”header/footer_trans_1.png”>’;
    echo ‘</div>’;

    echo ‘<div class=”copyright”>’;
    echo ‘&copy 2015’;
    echo ‘</div>’;

    echo ‘</div>’;

    echo ‘</div>’;

    ?>

    </body>

8 reacties aan het bekijken - 1 tot 8 (van in totaal 8)
  • Heb je een link naar een website waar we naar kunnen kijken ?

    En waarom echo je alles ? zoveel meer werk….

    Thread starter Elisa van Gerven

    (@elisa-van-gerven)

    http://www.inarray.nl
    Ik heb nu alles online gezet zonder correcties (ook de speciale tekens heb ik nog niet aangepast) maar ik wilde dat je snel kan zien waar ik tegenaan loop. Ik doe dit in een verborgen samenwerking en ben nog bezig met leren en een cursus. Ik ben 2 maanden geleden pas begonnen met programmeren. Geen basis what so ever hierin. Vandaar dat ik nog niet alles weet.

    Echo is idd veel werk. Dit is zoals ik het geleerd heb om eenzelfde structuur aan te houden en nog niet gelijk teveel details op te werpen over nog kortere schrijfwijzen. Is het makkelijker om na de te maken database connectie php af te sluiten en door te gaan in html zodat ik niet meer hoef te echo-en?

    Zodra ik de disclaimer (na de klik) in de class disclaimer zet, pakt deze het wel goed op.

    Dan komt de pagina disclaimer boven de footer uit.
    de disclaimer staat nu tussen <p> </p> tags.

    $pagefetch = mysqli_fetch_assoc($pagequery);
    
    echo '<h1>' .$pagefetch['title']. '</h1>';
    echo '<div class="clear">';
    echo '<p>' .$pagefetch['content'] . '</p>';

    Probeer dit eens te veranderen in :

    $pagefetch = mysqli_fetch_assoc($pagequery);
    
    echo '<h1>' .$pagefetch['title']. '</h1>';
    echo '<div class="disclaimer">';
    echo '<p>' .$pagefetch['content'] . '</p>';

    Ik moet zeggen dat ik wel heel erg benieuwd ben naar de training / cursus die jij volgt.
    Ben benieuwd waarom je in deze cursus leert om content in een database te plaatsen.

    jij hebt nu de volgende code :

    <?php
    
    $connection=mysqli_connect('localhost', 'root', '', 'inarray');
    
    if(!$connection)
    {
    echo 'Pagina is niet verbonden met database.';
    }
    
    $query = mysqli_query($connection, "SELECT * FROM inarray WHERE volgorde ORDER BY volgorde ASC");
    
    echo '<div id="container">';
    
    echo '<div id ="header">';
    echo '<IMG src="header/InArray_trans_header.png"><width="540" height="435" alt="responsive design image" class="img">';
    echo '</div>';
    echo '<div class="clear"></div>';
    
    echo '<div id="content">';
    echo '<div id="main">';
    echo '<div class="text">';

    Wat je ook had kunnen doen

    `<?php

    $connection=mysqli_connect(‘localhost’, ‘root’, ”, ‘inarray’);

    if(!$connection)
    {
    echo ‘Pagina is niet verbonden met database.’;
    }

    $query = mysqli_query($connection, “SELECT * FROM inarray WHERE volgorde ORDER BY volgorde ASC”); ?> // PHP END TAG HIER!!

    <div id=”container”>

    <div id =”header”>
    <IMG src=”header/InArray_trans_header.png”><width=”540″ height=”435″ alt=”responsive design image” class=”img”>
    </div>
    <div class=”clear”></div>

    <div id=”content”>
    <div id=”main”>
    <div class=”text”>

    <?php hier nog wat PHP code ?> <!– en weer de afsluiting van php –>

    Het grote nadeel van alles echo-en is dat als je een ‘ ; ‘ (semicolon) vergeet aan het einde je pagina zal crashen. deze manier van coderen is dus veel “gevoeliger” voor een crash.

    Ook zie ik dat je in je css de class a , b ,c & d heb aangemaakt.
    Ik raad je aan (en dit doe ik uit ervaring) om jezelf vanaf nu duidelijkheid aan te leren.

    Nu gaat het om 4 classes, maar wat doe je als je er 100 of meer hebt? Juist, dan ga je creatief doen. dan wordt het AB, AC etc.

    Als je na een jaar of misschien wel 2 een update moet doen zoek je je eigen helemaal rot naar de juiste classes. En dat kost veel te veel tijd. (wat je als ondernemer natuurlijk anders kan besteden 😉 )

    Heb je een sectie contact op je pagina noem deze dan <div class = “contact”>
    Wat nu “meer” werk lijkt kan je in de toekomst echt helpen.

    Thread starter Elisa van Gerven

    (@elisa-van-gerven)

    Wauw wat een super uitgebreide uitleg. Leer ik echt veel van. Ik kan het nu niet testen op een pc maar dat ga ik zo snel mogelijk doen. Waarom zou jij de content niet in een database zetten? Wat is het voordeel ervan om alles in pages te zetten?

    Stel je update je database, of je wachtwoord / gebruikersnaam. (dit is ook een issue die regelmatig op het WP forum voorbij komt)

    Indien er dan geen connectie meer gemaakt kan worden krijg je de volgende melding

    if(!$connection)
    {
    echo <strong>'Pagina is niet verbonden met database.</strong>';
    }

    en “weg” is je website. Klanten die langs komen zien dit en zijn je per direct vergeten, omdat ze door gaan naar de eerst volgende hit op google. (die het hoogst waarschijnlijk wel doet)

    HTML & PHP werkt altijd (ok php kan bij een typfout ook grijze haren veroorzaken), zelfs al voer je dagelijks updates uit aan je mysql server.

    Waarom plaatst jij de content wel in de database? Wat zeggen ze in de cursus/ training?

    Thread starter Elisa van Gerven

    (@elisa-van-gerven)

    Sorry voor de late respons. Ik ben ondertussen ook met vakantie. Hij gebruikt zelf heel veel databases voor zijn werk en maakt heel veel dingen met mysql. Je kan er zoveel mee! Het voordeel van databases vind ik persoonlijk dat er niet tig php pages zijn waar je dingen in moet veranderen. Aan de andere kant hebben die pages ook weer hun voordelen. Foutgevoelig ben ik inmiddels ook achter als het via databases gaat. Ik ben nog een beetje zoekende wat ik zelf het prettigst vind werken. Ik weet wel dat ik navigatiesystemen maken met een database veel makkelijker vindt dan met arrays werken. En met een forum zoals dit leer ik ook weer heel veel.

    Uiteraard moet je doen wat je zelf fijn vindt!

    Met php (en zo werkt wordpress ook) kan je ook php files (bijv footer.php) aan elkaar koppelen.

    In je index.php kan je onderaan <?php include(‘footer.php’); ?> doen.

    Hierbij koppel je de index.php en de footer.php. Een wijziging in de footer, maak je dan alleen in de footer.php.

    Maargoed, kijk wat jezelf het prettigste vind , maar ik zou dit er wel bij “leren” als je een klant krijgt die WordPress(opencart, drupal, magento etc..) wilt zal je toch deze manier dienen toe te passen.

    Oh nog 1 dingetje!

    In je footer overlappen de “powered by” & de image elkaar op mobiel en (in ieder geval op) kleinere schermen (13 t/m 19 inch)

    Fijne vakantie

8 reacties aan het bekijken - 1 tot 8 (van in totaal 8)
  • Het onderwerp ‘content in nieuwe pagina mysql’ is gesloten voor nieuwe reacties.