IK wil graag gegevens vanuit mijn database op het scherm tonen.

Daarvoor heb ik dit PHP-bestand gemaakt:

<?php
    include_once 'connectionul.php';
?>

<!DOCTYPE html>    
<html>
<head>
    <title>Test</title>
</head>
<body>

<?php
    require_once "connectionul.php";
    $sql = "SELECT* FROM Fontys_HDM ";";
    $result = mysqli_query ($conn, $sql);
    $resultCheck = mysqli_num_rows($result);

    if ($resultCheck > 0)
    {
        while($row = mysqli_fetch_assoc($result))
        {
           echo $row ['bestandshoofdstuk'] . '<br>';
        }
    }
?>

</body>
</html>



Echter ik krijg een foutmelding. Iemand een idee wat dit kan zijn?


https://postimg.cc/8FF2hvFT

[size=xsmall]Toevoeging op 24/08/2023 12:44:07:[/size]

Foutmwlding:

Parse error: syntax error, unexpected end of file in D:\Website\USB WebServer\root\Website\Fontys\HDM\test1.php on line 28

Lijn 14 gaat erg mank.
Zo is het beter:

    $sql = "SELECT* FROM Fontys_HDM";


Maar wat is het nut van twee keer hetzelfde bestand includeren?
Hoi

Het dubbel includen was mijn fout. Is nergens voor nodig!

Echter ik wil echter een menu maken waarin ik van het enen naar het andere bestande kan. In HTML lukt me dat goed, maar aks ik meer bestande wil gaa ngebruiken moet ik dat bij alle bestanden gaan doen. DAt is en wordt veel te veel werk en ook van het goede

Bijgaand de code tot zover ik hem heb. Kan iemand dit aanvullen want ik krijg nog steeds foutmeldingen!






            <?php
                include_once 'connectionul.php';
            ?>


            <ul>

            <?php
                require_once "connectionul.php";
                $sql = "SELECT* FROM Fontys_HDM;";
                $result = mysqli_query ($conn, $sql);
                $resultCheck = mysqli_num_rows($result);

                if ($resultCheck > 0)
                {
                    while($row = mysqli_fetch_assoc($result))
                    {
                        echo $row ['bestandshoofdstuk'] . '<br>';
                        
                        echo '<li><a href= $row ['bestandshoofdstuk'] > $row ['titel']</a></li>' . '<br>';
                        // <li><a href= "blabla.php">Tekst</a></li>
                    }
                }
            ?>
            

            </ul>

Is een basiscursusje PHP, en met name het hoofdstuk over strings en variabelen, een idee om door te lezen?
Klopt Arien! De code heb ik aangepast echter de eerste foutmelding heb ik opgelost. Er komt echter weer en foutmelding opduiken. Ik heb al opgezocht dat di met implode() moet, maar ik geen flauw idee hoe!

Wie kan me helpen?

            <?php
                require_once "connectionul.php";
                $sql = "SELECT* FROM Fontys_HDM;";
                $result = mysqli_query ($conn, $sql);
                $resultCheck = mysqli_num_rows($result);

                if ($resultCheck > 0)
                {
                    while($row = mysqli_fetch_assoc($result))
                    {                       
                       echo "<li><a href= $row ['bestandshoofdstuk'] > $row ['titel']</a></li>" . '<br>';
                    }
                }
            ?>


[size=xsmall]Toevoeging op 24/08/2023 19:26:02:[/size]

De foutmelding:

Notice: Array to string conversion in D:\Website\USB WebServer\root\Website\Fontys\HDM\Fontys_HDM_BoekH1.php on line 39
Kom even met relevante code op en rond die lijn, en geef aan welke lijn het is.


            <?php
            session_start();

            if(isset($_SESSION['username']))
            {

            ?>

            <!DOCTYPE html>
            <html>
            <head>
            <link rel="stylesheet" href="../../sidebar3.css">
            <link rel="icon" href="../../../../../favicon.ico" type="image/x-icon"/>
            <title>HDM</title>
            </head>
            <body>

            <?php
                include_once 'connectionul.php';
            ?>


            <div id="container">
              <div id="sidebar">

            <ul>

            <?php
                require_once "connectionul.php";
                $sql = "SELECT* FROM Fontys_HDM;";
                $result = mysqli_query ($conn, $sql);
                $resultCheck = mysqli_num_rows($result);

                if ($resultCheck > 0)
                {
                    while($row = mysqli_fetch_assoc($result))
                    {                       
                       echo "<li><a href= $row ['bestandshoofdstuk'] > $row ['titel']</a></li>" . '<br>';
                    }
                }
            ?>
            


Lijn 39!
Dubbele quote voor bij je href-attribuut. String beëindigen met een single-quote. Variabele koppelen met een punt.
En geen spaties in variabelen!

Lees aub eens een tutorial.
https://www.w3schools.com/php/php_variables.asp
Ik maak nog een denkfout. Zie de foutmelding:

Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given in D:\Website\USB WebServer\root\Website\Fontys\HDM\Fontys_HDM_BoekH1.php on line 65


            <?php
            session_start();

            if(isset($_SESSION['username']))
            {

            ?>

            <!DOCTYPE html>
            <html>
            <head>
            <link rel="stylesheet" href="../../sidebar3.css">
            <link rel="icon" href="../../../../../favicon.ico" type="image/x-icon"/>
            <title>HDM</title>
            </head>
            <body>

            <?php
                include_once 'connection.php';
            ?>


            <div id="container">
              <div id="sidebar">

            <ul>
            <li><a href= "../../userhome.php">Home</a></li>
            <?php
                require_once "connectionul.php";
                $sql = "SELECT* FROM Fontys_HDM;";
                $result = mysqli_query ($con, $sql);
                $resultCheck = mysqli_num_rows($result);

                if ($resultCheck > 0)
                {
                    while($row = mysqli_fetch_assoc($result))
                    {                       
                       echo "<li><a href=$row[bestandshoofdstuk]>$row[titel]</a></li>.<br>";
                    }
                }
            ?>
            

            </ul>
            <div id="sidebar-content" style="height: 50px"></div>
            </div><!--
            --><div id="content">
            <br>
            <!DOCTYPE html>
            <html>

            <body>
                <a href ="index.php"></a>
                <?php

                    require_once "connection.php";

                    $query  = "SELECT * FROM Fontys_HDM_Boek_H1 ORDER BY id ASC";


                    $resultaat = mysqli_query($conn, $query);
                    print_r ($resultaat);

                    if(mysqli_num_rows($resultaat)> 0)
                    {
                        while($images = mysqli_fetch_assoc($resultaat))
                        {
                        print_r ($images);



                ?>

                <div class = "alb">
                    <img src = "images/<?php echo $images['image']; ?>"><!--Plaatje-->
                    <?php echo $images['title']; ?><!--Titel-->
                </div>

                <?php    }

                }
                ?>
            </body>
            <html>

            <br>


Daarnaast heb ik nog 2 connectiebestanden:

connection.php

<?php
//verbinding maken met de database
$conn = mysqli_connect('localhost', 'root', 'usbw', 'boeken');// de laatste is de naam van de dadatabase

?>


connectionul.php

<?php
//verbinding maken met de database
$con = mysqli_connect('localhost', 'root', 'usbw', 'connectionul');// de laatste is de naam van de dadatabase

?>


Wat ik mezelf afvraag moeten die in 1 databases staan of mogen die ook in een andere database staan?

Groetjes
Ed


Met alle respect dat je wilt programmeren, maar heb je de foutmeldingen al eens door Google gehaald?

Voor de rest kan je alles prima in één database opslaan.

Graag zie ik dat je in het vervolg wat meer zelfredzaamheid laat zien. We willen graag helpen, maar het niveautje komt nu meer op 'afhaalbalie', terwijl we uiteindelijk toch wat meer dan dat verwachten.

Fontys is een hogeschool. Dit lijkt te gaan om een schoolopdracht. Klopt dat Ed?

Reageren