sqlite gegevens uit meerdere tabellen

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

PHP developer (Symfony, Doctrine)

Functie Als PHP developer wordt er een hoge mate van zelfstandigheid verwacht, maar ook dat je goed opereert in een team waar kennis wordt gedeeld en dingen als codereviews erg veel voorkomen. Kwaliteit staat voorop, mede hierom werken ze bijvoorbeeld zonder echte deadlines in hun sprints. De SaaS-applicatie wordt volledig ontwikkeld in PHP en Symfony. De module bestaat uit een stuk informatie verrijking en intelligentie wat resulteert in een medische check. De logica wordt daarom in de code geïntrigeerd. Je bent onder andere bezig met complexe databases waar meer dan 80.000 medicijnen op verschillende niveaus in staan, die maandelijks worden

Bekijk vacature »

Delphi Programmeur

Functie omschrijving Onze opdrachtgever is gespecialiseerd in kantoor-bedrijfssoftware en zit gevestigd in omgeving Numansdorp. Als programmeur ben jij bij dit bedrijf met het volgende bezig; Je vertaalt technische en functionele ontwerpen naar kwalitatieve software. Je ontwikkelt, ontwerpt en test software. Je maakt daarbij veel gebruik met de volgende tools & technologieën: Delphi 10.3 (Rio), QuickReport 6. Je krijgt in deze rol veel vrijheid en verantwoordelijkheid. Je levert projecten van A - Z op, en werkt daarbij projectmatig en gestructureerd. Bedrijfsprofiel Dit bedrijf richt zich op maatwerk software oplossingen. Deze software oplossingen worden ingezet in de financiële branche. Het betreft een

Bekijk vacature »

Senior Front end developer

Functie Wij zijn op zoek naar een ambitieuze, zelfsturende Front-end Expert die ons (internationale) team komt versterken. Onze huidige software development afdeling bestaat uit 7 developers en designers. Wij zijn een écht softwarehuis, dus ervaring in software development is wel echt een must. Er wordt tegelijkertijd aan meerdere projecten gewerkt, voor mooie toonaangevende klanten. Je hebt dus regelmatig te maken met deadlines en opleveringen. Een deel van onze omgeving is in Angular.JS. Dit deel wordt langzamerhand omgebouwd naar de nieuwste versie van Angular. Jouw werkzaamheden zullen bestaan uit: Het aansturen en begeleiden van jouw collega’s Het implementeren van visuele elementen

Bekijk vacature »

Oracle Apex developer

Bedrijfsomschrijving My client is a technology company based in Den Bosch, the Netherlands. They specialize in providing innovative software solutions to clients, and they are currently looking for an experienced Oracle Apex developer to join the IT team. Functieomschrijving As an Oracle Apex developer, you will be responsible for designing, developing, and maintaining web-based applications using Oracle Apex. You will work closely with project managers, business analysts, and other developers to ensure that clients' needs are met and that the software solutions are of the highest quality. Responsibilities: Design, develop, and maintain Oracle Apex applications. Work with project managers and

Bekijk vacature »

Traineeship Full Stack Java developer

Dit ga je doen Start jij op 7 augustus bij de Experis Academy dan kickstart jij jouw IT-carrière! We leiden je op tot een gewilde Full Stack Java Developer met alle kennis en vaardigheden die nodig zijn om de arbeidsmarkt te betreden. Wat kun je verwachten, hoe zit een dag in het leven van een Trainee eruit? Periode 1 Als Full Stack Java Developer Trainee volg je vanuit huis een op maat gemaakte onlinetraining die in het Engels wordt gegeven. De tijd die je kwijt bent aan het volgen van de training kun je vergelijken met een fulltime werkweek. In

Bekijk vacature »

Medior Java developer (fullstack)

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

Lead Front-end developer

Functie Hun huidige applicatie worden ontwikkeld in o.a. React, Redux, TypeScript. Ze werken graag met de nieuwste technieken en tooling en zoeken ook developers die hier proactief op zoek naar gaan. Als senior/lead developer ben je een kartrekker in het team. Naast het meedenken over bijvoorbeeld de architectuur of toepassing van nieuwe technieken krijg je ook veel tijd om de meer junior (front-end) developers te begeleiden. Zo kun je bijvoorbeeld 1 dag in de week met 2 collega’s bezig zijn om samen met hen te kijken naar hun ontwikkeling, doelstellingen en uiteraard de gewenste begeleiding hierin. Hiernaast sta je als

Bekijk vacature »

Robot Programmeur

In het kort Drie redenen waarom deze vacature uniek is! Modern, innovatief en Informeel bedrijf waar veel mogelijk is Werken met diverse robot merken Meehelpen met inbedrijfstellingen bij de klant De organisatie Hier ga je aan de slag Dit groeiende bedrijf van totaaloplossingen in de automatisering van productieprocessen, is hoofdzakelijk actief in de Benelux. Vanuit het kantoor in regio Amersfoort worden veel oplossingen geboden in de vorm van robotica. Geen project is hetzelfde wat garant staat voor bijzonder veel afwisseling. De bedrijfsgrootte is ongeveer 80 man. Van gerobotiseerde machinebeladingen tot aan assemblage automatiseringen wordt vanuit krachtige engineering maatwerk equipment geleverd.

Bekijk vacature »

High level C++ QT Developer

Vacature details Vakgebied: Software/IT Opleiding: Senior Werklocatie: Eindhoven Vacature ID: 13486 Introductie Would you like to be involved in every aspect of software development for our exceptional products, from specification and design to testing and integration? If you're passionate about software development and eager to apply your programming skills to create customer-focused deliverables, then this is the perfect chance for you to expand your expertise. You can become a member of our Machine Control department's data-driven development team, where you'll design and build software solutions that optimize machine productivity. As a senior software design engineer, you'll participate in all phases

Bekijk vacature »

Medior front-end developer gezocht (€3.300 -

Functie Wat ga je doen? Jij als front-end developer gaat werken binnen de teams van/voor onze klant. Je werkt in een team met starters en ervaren ontwikkelaars met allemaal 1 overeenkomst; passie voor het vak. Maak je een fout? Geen probleem, leer ervan en ga dan weer door. Door de variëteit aan werk kun je in verschillende omgevingen een kijkje nemen en jezelf dus snel ontwikkelen. Wat hebben we jou te bieden? • Uitdagende projecten bij mooie klanten (bij jou in de buurt, of binnenkort intern vanuit ons kantoor!) • Een jonge organisatie met talentvolle collega’s • Veel ruimte voor

Bekijk vacature »

Fullstack JavaScript developer (ReactJS, NodeJS, T

Functie Het team bestaat momenteel uit ruim 15 collega’s, waarvan ruim de helft in het ontwikkelteam werkzaam is. Er zijn gave plannen om het platform ook te gaan toepassen op bijv. vliegvelden, maar ook internationale groei zit in het verschiet en daarom zijn ze op zoek naar versterking. Als Fullstack JavaScript developer werk je nauw samen met 9 fullstack (Python en .NET) developers. Binnen het team ga jij je toespitsen op het creeren van de optimale toegankelijkheid en user experience. Om dit voor elkaar te krijgen zul je ontwerpen, programmeren, testen en implementeren. Het hele proces dus! Maar ook bijvoorbeeld

Bekijk vacature »

Junior .NET Developer

Dit ga je doen Ontwikkelprocessen verder optimaliseren en verder ontwikkelen met C#; CI/CD-pipelines automatiseren; Ontwikkelen van herbruikbare componenten; Front-end pagina's gebruiksvriendelijk maken. Hier ga je werken Als junior .NET Developer kom je terecht binnen een grote en internationale organisatie. Zij streven naar een positieve impact op de mens, milieu en maatschappij. Het bedrijf is oorspronkelijk een familiebedrijf en werkt aan de productie van hoogwaardige en technische systemen voor de gezondheidszorg. Momenteel willen zij betere ontwikkelprocessen creëren op internationaal gebied en staat kwaliteit en veiligheid voor hun op nummer 1! Als junior .NET Developer werk je aan het ontwikkelen van verbeterde

Bekijk vacature »

Junior Back end developer PHP, Symfony

Functie Wij hebben onlangs onze eerste collega’s aangenomen, waardoor ons development team momenteel uit 4 personen bestaat. We bouwen onze software op basis van een PHP-framework (wat op zichzelf een Symfony framework is). Qua ontwikkeling focussen wij ons op 3 focus velden; – API-ontwikkeling/ Component Creatie – Implementatie – Framework ontwikkeling; het toevoegen van nieuwe functionaliteit of interne microservices Onze senior software engineer focust zich momenteel op de laatste twee punten, maar wij komen handen te kort op het eerste veld. Daarom zijn wij op zoek naar een enthousiaste junior software engineer die graag de kneepjes van het vak wil

Bekijk vacature »

.Net Ontwikkelaar

Dit ga je doen Het ontwerpen en ontwikkelen van software voor klanten; Het bijdragen van kennis en ervaring; Het integreren van van de software en afstemmen met klanten; Het functioneel testen van de ontwikkelde software. Hier ga je werken Voor onze relatie zijn wij momenteel op zoek naar een .Net Developer die wilt werken aan software die draait op machines wereldwijd. De organisatie produceert software voor applicaties die gebruikt worden in verschillende branches. De software wordt geleverd aan fabrikanten van verschillende robotica en machines. Als .Net ontwikkelaar ben je intern onderdeel van het team wat de applicatie omgevingen ontwikkeld en

Bekijk vacature »

Medior/senior Back-end developer gezocht!

Functie Vanwege de groei binnen het bedrijf zijn we op zoek naar versterking in het devlopmenttean. Als back-end developer bouw je aan de bedrijfssoftware die ons helpt bij de primaire processen. Een leuk (intern) project dus waarbij je de software continu doorontwikkeld! Je werkt in een klein team, we hebben dagelijks stand-ups en iedere twee weken een scrum-sessie, begeleid door onze Scrum Master. Hierin krijg je uitgebreid de kans om je ideeën te presenteren, en te overleggen met je mede-ontwikkelaars en de Product Owner. Binnen de ontwikkelteams gebruiken we Trello, Gitlab, Jiira, Confluence en Boockstack. Hiernaast werken ze met de

Bekijk vacature »
NIne Viaene

NIne Viaene

28/02/2016 19:33:02
Quote Anchor link
Hallo,

Zou er iemand mij verder op weg kunnen helpen met volgend probleem?

Ik heb een tabel boeken en een tabel categorieën. De tabel boeken bevat allerlei detailgegevens zoals de titel, het isbn-nummer,.... en een categorie_id.
De tweede tabel categorieën bevat dan een primary key (categorie_id) en de naam van de categorie.

Allereerst heb ik query gemaakt die een lijst geeft met al de titels van de boeken, aanwezig in mijn bibliotheek. Wanneer ik op die titel klik, zou ik een nieuwe pagina moeten krijgen met al de details van dat ene boek.

Volgende query heb ik hiervoor geschreven :

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
public function getDetails($id)
        {

            $sql ='SELECT boeken.*, categorieen.categorie, categorieen.categorie_id FROM boeken
                   JOIN categorieen WHERE boek_id=?'
;
            $statement = $this->db->prepare($sql);
            $data = array($id);
            $statement = $this->makeStatement($sql, $data);
            $model = $statement->fetchObject();
            return $model;
        }

?>


Het lukt met echter niet om de categorie_id uit de boekentabel om te zetten in de naam van de categorie.

Het zou superfijn zijn als iemand me een hint zou kunnen geven!
 
PHP hulp

PHP hulp

27/04/2024 23:50:53
 
- SanThe -

- SanThe -

28/02/2016 20:02:39
Quote Anchor link
Zo te zien haal je de categorienaam helemaal niet op.
 
NIne Viaene

NIne Viaene

28/02/2016 20:10:31
Quote Anchor link
Bedankt voor je reactie!

Ik haal hem inderdaad niet op en zie niet hoe ik dat wel kan doen.
Ik selecteer de naam in de query met categorieen.categorie (ik had dit misschien om verwarring te voorkomen beter categorienaam genoemd), maar dan loopt er iets mis.
 
- SanThe -

- SanThe -

28/02/2016 20:14:36
Quote Anchor link
Oke, is dat de naam?
Maar die kan je dan toch echoen.
 
NIne Viaene

NIne Viaene

28/02/2016 20:25:30
Quote Anchor link
Misschien is het handiger als ik de rest van mijn code er ook even bij zet.

De twee bestand uit mijn model :

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php

    class tabel
    {
        protected $db;

        public function __construct($db)
        {

            $this->db = $db;
        }


        protected function makeStatement($sql,$data = null){
            $statement = $this->db->prepare($sql);
            try{
                $statement->execute($data);
            }
catch (Exception $e) {
                $msg = "<p>You tried to run this query: $sql</p>
                        <p>Exeption: $e</p>"
;
                trigger_error($msg);
            }

            return $statement;
        }

 ?>



Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?php

include_once "models/Table.class.php";

class Book_Table extends Tabel
{
    public function getAllBooks()
    {

        $sql = "SELECT * FROM boeken";
        $statement = $this->makeStatement($sql);
        return $statement;
    }


    public function getDetails($id)
    {

        $sql = 'SELECT boeken.*, categorieen.categorie, categorieen.categorie_id FROM boeken
                   JOIN categorieen WHERE boek_id=?'
;
        $statement = $this->db->prepare($sql);
        $data = array($id);
        $statement = $this->makeStatement($sql, $data);
        $model = $statement->fetchObject();
        return $model;
    }
}

?>




Mijn controllers :

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php

    include_once 'models/Book_Table.class.php';

    $bookTable = new Book_Table($db);
    $books = $bookTable->getAllBooks();
    $booksAsHTML = include_once "views/admin/books_html.php";

    return $booksAsHTML;
?>


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php

    include_once 'models/Book_Table.class.php';
    $bookTable = new Book_Table($db);

    $isBookClicked = isset($_GET['id']);
        if($isBookClicked){
            $bookId = $_GET['id'];
            $bookData = $bookTable->getDetails($bookId);
            $bookOutput = include_once "views/admin/details_html.php";
        }
else {
            $books = $bookTable->getAllBooks();
            $bookOutput = include_once "views/admin/books_html.php";
        }


    return $bookOutput;
?>



en mijn views :


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
<?php

    $booksFound
= isset ($books);
    if ($booksFound === false){
        trigger_error ( 'views/admin/books_html.php needs $books' );
    }


    $booksAsHTML = "

            <div class='container'>
                <form method='post' action='index.php?page=search' id='search-form'>
                    <input type='search' name='search-term' class='form-control'>
                    <button type='submit' value='Search' class='form-control' id='button-zoek'>Zoek</button>
                </form>
            <div id='booklistAdmin' class='table-responsive'>
                <h2>Boekenlijst</h2>
                <table id='adminTableBooks' class='table table-striped borderless '>
                    <thead>
                        <tr>
                        <td>Titel</td>
                        <td>Details</td>
                        <td>Aanpassen</td>
                        <td>Verwijderen</td>
                        </tr>
                    </thead>
                    <tbody>
            "
;

            while($book = $books->fetchObject()){
                $href  =  "admin.php?page=details&amp;id=$book->boek_id";
                $booksAsHTML .= "
                    <tr>
                        <td>$book->titel</td>
                        <td><a class='fa fa-info-circle' href=\"$href\" ></a></td>
                        <td><a class='fa fa-wrench'></a></td>
                        <td><a class='fa fa-trash-o'></a></td>
                    </tr>
                "
;
            }


    $booksAsHTML .= "
                </tbody>
                </table>
            </div>
            </div>
            "
;

return $booksAsHTML;
?>



Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<?php

    $bookFound
= isset($bookData);

    if($bookFound === false) {
        trigger_error('views/entry-html.php needs an $bookData object');
    }


    return "
        <div class='container'>
            <h2>Boekfiche van : $bookData->isbn</h2>
            <div class='info-onderdeel'>
                <table id='boekdetails'>
                    <tr>
                        <td>IISBN :</td>
                        <td>$bookData->isbn</td>
                    </tr>
                    <tr>
                        <td>Prijs :</td>
                        <td>€ $bookData->prijs</td>
                    </tr>
                    <tr>
                        <td>Categorie :</td>
                        <td><$bookData->categorie_id></td>
                    </tr>
                </table>
            </div>
            <div class='info-onderdeel'>


            </div>
            <div class='info-onderdeel'>
                <img src='' alt='$bookData->titel'>
            </div>
        </div>
    "
;
?>


Als resultaat krijg ik al mijn gegevens, alleen bij de categorie krijg ik het id 1 waar eigenlijk kookboek zou moeten komen.
 
- SanThe -

- SanThe -

28/02/2016 20:31:56
Quote Anchor link
Je zet daar het categorie_id neer.
Verabder dat in de veldnaam van de naam.
 
NIne Viaene

NIne Viaene

28/02/2016 20:34:33
Quote Anchor link
In dat geval krijg ik helemaal geen output meer.

Toevoeging op 28/02/2016 20:36:49:

Even corrigeren en beter formuleren : al mijn details worden weergegeven, maar bij de categorie blijft alles leeg.
 
- SanThe -

- SanThe -

28/02/2016 20:51:32
Quote Anchor link
Gebruik je wel de juiste naam?
Anders zou ik het zo even ook niet weten.
 
Thomas van den Heuvel

Thomas van den Heuvel

28/02/2016 21:23:02
Quote Anchor link
Hoe fiets je die twee tabellen aan elkaar? Ik zie alleen een JOIN zonder argumenten? Wordt het verband tussen die twee tabellen automatisch opgepikt in sqlite?

Ik zou zoiets verwachten als JOIN categorieen ON (categorieen.categorie_id = boeken.categorie_id) maar mogelijk is de syntax/het verband tussen tabellen in sqlite iets anders?
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.