Declaration error

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Web Developer

Dit ga je doen Je komt te werken in een samengesteld projectteam bestaande uit collega developers, testers, een devops engineer, scrum master/ projectleider, een product owner en marketing communicatie/ e-commerce specialisten. In totaal bestaat het team uit ongeveer 8 personen, waarbij je nauw gaat samenwerken met 1 collega developer op de locatie in regio Eindhoven. De rest van het team is gevestigd in het buitenland. Samen met je team ben je verantwoordelijk voor de doorontwikkeling van de branded website en de onlline shops die hieraan gekoppeld zijn (Magento2/Drupal gebaseerd). Het betreft een complexe omgeving met veel maatwerk aanpassingen en koppelingen

Bekijk vacature »

.NET Developer

Dit ga je doen Programmeren in .NET, Javascript & C# en ontwikkelen in Web Services, Windows Services en MS SQL Server; Zelfstandig verbanden maken Analyseren, testen, bugs fixen, reviewen en rapporteren; Juiste prioriteiten stellen en verantwoordelijkheid nemen; Op architectuur niveau meedenken; Af en toe klanten bezoeken. Hier ga je werken Voor onze relatie zijn wij opzoek naar een .NET ontwikkelaar met minimaal 3 jaar werkervaring. Je komt te werken in een groeiend bedrijf met betrokken collega's die zorgen voor een familiaire sfeer op de werkvloer. Als .NET ontwikkelaar word jij vanaf de eerste werkdag betrokken bij het gehele ontwikkelproces. De

Bekijk vacature »

.NET developer

Functie Voor jou als junior .NET ontwikkelaar staat er een flinke uitdaging klaar bij dit bedrijf waar jij veel van kan gaan leren. Zo willen zij een flinke uitbreiding doen op het webbased gedeelte dat zij nu hebben en willen zij het standaard deel gaan moderniseren. Jouw team is dan ook op zoek naar een junior .NET ontwikkelaar die het leuk vindt om op basis van research en development aan de slag te gaan. Jouw mening telt mee als het gaat om hoe en met wat deze applicaties gebouwd en herschreven gaan worden. Jouw functie bij dit bedrijf gaat dan

Bekijk vacature »

Medior Front-end Developer

Bij Getnoticed doen wij wat we leuk vinden, websites bouwen en online marketing. Voor veel van onze klanten doen we dan ook allebei. Wel zo fijn om campagnes te draaien voor conversiegerichte websites die in eigen beheer zijn. In onze vestiging in Nederweert zit onze development afdeling en worden de websites gebouwd. Op dit moment zijn we op zoek naar jou: dé Medior Front-end Developer die net als wij, het hoofd boven het maaiveld durft uit te steken! In het kort Even een paar punten die omschrijven wat deze toffe baan inhoudt: Het uitwerken van designs tot functionele layouts Je

Bekijk vacature »

Junior Lowcode developer / Modelleur

Dit ga je doen Je werkt in een team van modelleurs en verbetert de data stromen en webservice processen in een DevOps setting; Je ontwikkeld aan de webservices voor data uitwisseling; Je bent verantwoordelijk voor het ontwikkelen en configureren van verschillende koppelingen; Je werkt nauw samen met Business Analisten en andere mensen uit het Scrum/Agile team; Als modelleur ontwikkel je jouw kennis over o.a. Tripleforms gedurende je werk; Je schakelt met diverse stakeholders. Hier ga je werken Onze klant is een dynamische organisatie met internationale oriëntatie die in opdracht van de overheid werkt. Zij houden zich bezig met het onderhouden

Bekijk vacature »

Medior Java developer (backend)

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 »

Medior PHP Developer

Bij Getnoticed doen wij wat we leuk vinden, websites bouwen en online marketing. Voor veel van onze klanten doen we dan ook allebei. Wel zo fijn om campagnes te draaien voor conversiegerichte website die in eigen beheer zijn. In onze vestiging in Nederweert zitten onze development afdelingen en worden de websites gebouwd. Op dit moment zijn we op zoek naar jou: dé PHP/Back-end developer die net als wij, het hoofd boven het maaiveld durft uit te steken! In het kort Even een paar punten die omschrijven wat deze toffe baan inhoudt: Het bedenken van nieuwe functionaliteiten Het verbeteren van het

Bekijk vacature »

Medior .NET developer

Functie Als medior .NET ontwikkelaar ga jij aan de slag bij een gave en bekende organisatie op het gebied van sportgames. Jij gaat aan de slag in een scrumteam met 6 developers die gepassioneerd en actief bezig zijn om spelers kwalitatieve en mooie spelervaringen aan te bieden. Als medior .NET developer ga jij werken aan een technisch hoogwaardig platform welke bezoekerspieken verwerkt van tienduizenden tot honderdduizenden gebruikers per minuut! Als scrumteam werken jullie in drie wekelijkse sprints en beginnen jullie iedere ochtend met een stand-up. Als full stack developer werk jij bij deze organisatie met C# .NET, .NET Core, React.JS,

Bekijk vacature »

C++ Developer

Dit ga je doen Taken: • Maken van technisch ontwerp; • Bouwen van kwalitatief goede en veilige software; • Uitvoeren van unittests; • Samenwerken in een scrumteam met developers, testers, PO; • Maken van incidentanalyses; • Code reviews; Hier ga je werken De afdeling bestaat uit twee scrumteams die zich met een inhouse ontwikkelteam richten nieuwe grote projecten en het bouwen nieuwe producten of functionaliteiten. Voor deze teams zijn zij op zoek naar een C++ Developer. De afdeling bouwt voor verschillende nationale en internationale klanten bedrijf kritisch systemen. Je gaat aan de slag met nieuwe functionaliteiten voor deze systemen, maar

Bekijk vacature »

Oracle PL/SQL ontwikkelaar voor maatschappelijke o

Bedrijfsomschrijving Dagelijks worden er in de zorg enorme aantallen data geproduceerd. Van medicijngebruik van patiënten tot aan loonkosten van personeel. Deze data bevat een schat aan informatie die pas zichtbaar wordt als ze op de juiste manier worden verzameld, opgeslagen, beheerd, bewerkt en vergeleken. Hiermee helpen zij medische instellingen om hun informatiepositie te verbeteren. Kijk bijvoorbeeld op het gebied van kwaliteit, bedrijfsvoering en marktpositie. Functieomschrijving Mijn klant heeft de huidige Oracle applicaties volledig binnen Forms reports en designer draaien. De bedoeling is dat al deze applicaties omgezet worden naar Apex applicaties in de toekomst. Daarom is mijn klant ter uitbreiding

Bekijk vacature »

WordPress developer / Remote

Functie Als ontwikkelaar kom je dus te werken in het – op dit moment – 5 man sterke development team. Ze werken op basis van 2-wekelijkse Scrum sprints. Doordat ze nog relatief klein zijn krijg je al snel veel verantwoordelijkheid. Zo werk je aan diverse klantvragen, welke onderverdeeld worden tijdens de scrum sessies. Alles wat ze bouwen is echt maatwerk en omdat ze in high-traffic omgevingen werken komen er ook veel andere uitdagingen bij kijken. Zo maken ze vaak eigen koppelingen en hechten ze veel waarde aan testing, en het toepassen van design patterns. Benieuwd naar een voorbeeld van hun

Bekijk vacature »

IT Trainee: Information Systems to keep the lights

Your contribution to TenneT The Trainee Program is all about the best start for your career, which future we see within TenneT. You will shape your own learning path and you are the director of your trainee program. The recipe for learning about Tennet, the world of Energy and yourself better is as following: Active involvement - We offer you an 18-month, individually designed entry and development program. Together with you, we plan your stations in three different departments across locations, departments and countries and set individual priorities together with you; Impact - During your time as a trainee, you

Bekijk vacature »

Mendix Developer/Consultant bij PostNL

Mendix Developer/Consultant Den Haag HBO/WO IT - software development Professional "Werk samen met ons om van PostNL een 'logistical tech (driven) company' te maken door Mendix applicaties te bouwen voor onze kritieke logistieke processen". Wat ga je doen? Als Mendix developer kom je te werken in een scrum team binnen onze afdeling 'Pakketten en Logistiek'. Vanuit hier bouwen we alle logistieke software waarmee we gemiddeld 1.1 miljoen pakketten per dag versturen. We hebben met deze afdeling de ambitie om uit te groeien tot het meest efficiënte en innovatieve logistieke post en e-commerce platform in de Benelux. Jouw werk heeft dus

Bekijk vacature »

Back-end Developer

Dit ga je doen Het ontwikkelen van een nieuw platform; Het ontwikkelen van nieuwe tooling; Het doorontwikkelen van de reeds bestaande software; Het uitvoeren van de benodigde testen; Het oplossen van incidenten; Het leveren van 3e lijns gebruikersondersteuning. Hier ga je werken Deze organisatie is internationaal georiënteerd, maar de projecten die je op zal pakken vinden met name binnen Nederland plaats. Wereldwijd hebben zij 2500+ medewerkers. Het DevOps team waarbinnen je komt te werken bestaat uit 7 personen. Door het ontwikkelen van software en tooling lever je een directe bijdrage aan het verbeteren van het klimaat, de verkeersdoorstroming en de

Bekijk vacature »

Software Developer

Collega’s maken het verschil. Daarom is het leuker werken bij Bending The Rules. Want naast dat we serieuze software vraagstukken oplossen, zijn wij niet het typische IT bedrijf. Naast programmeurs zijn we ook bevlogen BBQ chefs, bierbrouwers, competitieve gewichtheffers en houden we van een festivalletje. Kortom, we zoeken een leuke collega die ook nog eens echt goed is in zijn werk. Ben jij die persoon? ANDERE VOORDELEN VAN WERKEN BIJ BENDING THE RULES We starten altijd met een contract van 7 maanden. Waren deze succesvol? Dan belonen wij jou met een vast contract én een loonsverhoging of een lease auto

Bekijk vacature »
Niels K

Niels K

03/02/2010 21:30:00
Quote Anchor link
Haai,

Ik krijg bij het volgende de script de volgende error


Fatal error: Declaration of MySQL::query() must be compatible with that of Database::query() in C:\wamp\www\gastenboek\gastenboek.class.php on line 168

Maar ik snap niet wat er nu fout is, Dit is de code

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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
<?php

    ### Gastenboek class ###

    class Gastenboek
    {
    
        private $_Adapter;
                
            public function __construct (GastenboekAdapter $Adapter)
            {

            
                $this->_Adapter = $Adapter;
            
            }

            
            public function weergeven ()
            {

            
                $Reacties = $this->_Adapater->alle_reacties ();

                $Resultaat = '<div id="gastenboek">';

                    foreach ($Reacties as $Reactie)
                    {

                    
                        $Gebruiker = new Gebruiker ($Reactie['gebruiker_naam'], NULL, $Reactie['gebruiker_website']);
                        $Reactie = new Reactie ($this->_Adapter, $Reactie['reactie'], $Gebruiker, $Reactie['datum'], $Reactie['tijd']);
                    
                        $Resultaat = $Reactie->weergeven ();
                        
                    }

                    
                return $Resultaat . '</div>';
                
            }
    
    }

    
    class Gebruiker
    {
    
        private $_Naam;
        private $_Email;
        private $_Website;
        
            public function __construct($Naam, $Email, $Website)
            {

                
                $this->_Naam = $Naam;
                $this->_Email = $Email;
                $this->_Website = $Website;
            
            }

            
            public function reactie_plaatsen (GastenboekAdapter $Adapter, $Reactie)
            {

            
                $Reactie = new Reactie ($Adapater, $Reactie, $this, date ('Y-m-d'), date ('H:i'));
                $Reactie->opslaan ();
            
            }

            
            public function weergeven ()
            {

            
                if ($this->_Website != NULL)
                {

                
                    return '<a href="' .$this->_Website. '">' .$this->_Naam. '</a>';
                
                }

                else
                {
                
                    return $this->_Naam;
                
                }
            
            }

            
            public function geef_gegevens ()
            {

            
                return array
                        (
                            'naam' => $this->_Naam,
                            'email' => $this->_Email,
                            'website' => $this->_Website
                        );
            
            }

    }

    
    class Reactie
    {
    
        private $_Adapter;
        private $_Gebruiker;
        private $_Reactie;
        private $_Datum;
        private $_Tijd;
        
            public function __construct (GastenboekAdapter $Adapater, $Reactie, $Gebruiker, $Datum, $Tijd)
            {

            
                $this->_Adapter = $Adapter;
                $this->_Reactie = $Reactie;
                $this->_Gebruiker = $Gebruiker;
                $this->_Datum = $Datum;
                $this->_Tijd = $Tijd;
                
            }

            
            public function weergeven ()
            {

            
                return
                '
                    <div class="reactie">
                    
                        <span class="geplaats">Geplaatst door '
.$this->_Gebruiker->weergeven. ' op <strong>' .$this->_Datum. '</strong> om <strong>' .$this->_Tijd. '</strong></span>
                
                        <p>'
.$this->_Reactie. '</p>
                '
;
            
            }

            
            public function opslaan ()
            {

            
                $Gebruiker = $this->_Gebruiker->geef_gevens ();
                
                $this->_Adapter->reactie_toevoegen
                (
                    $this->_Reactie,
                    $Gebruiker['naam'],
                    $Gebruiker['email'],
                    $Gebruiker['website'],
                    $this->_Datum,
                    $this->_Tijd
                );
            
            }
    
    }

    
    interface Database
    {
    
        public function maak_verbinding ($Host, $Gebruikersnaam, $Wachtwoord, $Naam);
        public function query ();
    
    }

    
    interface DatabaseResult
    {
    
        public function fetch_assoc ();
        public function fetch_alles ();
        public function aantal_regels ();
    
    }

    
    class MySQL implements Database
    {
    
        private $_Connectie;
        
            public function maak_verbinding ($Host, $Gebruikersnaam, $Wachtwoord, $Naam)
            {

            
                if (!$this->_Connectie = mysqli_connect($Host, $Gebruikersnaam, $Wachtwoord, $Naam))
                {

                    
                    throw new DatabaseExeception ('Kan geen verbinding met de database leggen');
                
                }
            
            }

            
            public function query ($Query)
            {

            
                $Resultaat = mysqli_query ($this->_Connectie, $Query);
                
                    if ($Resultaat)
                    {

                    
                        throw new DatabaseExeception ('Er is een fout opgetreden met het uitvoeren van de query');
                    
                    }

                    
                return new MySQLResult ($Resultaat);
            
            }
    
    }

    
    class MySQLResult implements DatabaseResult
    {
    
        private $_Resultaat;
        
            public function __construct ($Resultaat)
            {

            
                $this->_Resultaat = $Resultaat;
            
            }

            
            public function fetch_assoc ()
            {

            
                return mysqli_fetch_assoc ($this->_Resultaat);
            
            }

            
            public function fetch_alles ()
            {

            
                $Resultaat = array ();
                
                    while ($Regel = $this->fetch_assoc ())
                    {

                    
                        $Resultaat[] = $Regel;
                    
                    }

                    
                $Resultaat;
            
            }

            
            public function aantal_regels ()
            {

            
                return mysqli_num_rows ($this->_Resultaat);
            
            }
    
    }

    
    class DatabaseException extends Exception
    {
    
    }

    
    interface GastenboekAdapter
    {
    
        public function reactie_toevoegen ($Reactie, $Gebruiker_naam, $Gebruiker_email, $Gebruiker_website, $Datum, $Tijd);
        public function alle_reacties ();
    
    }

    
    abstract class DatabaseGastenboekAdapter implements DatabaseAdapter
    {
        
        protected $_Database;
        
            public function __construct (Database $Database)
            {

            
                $this->_Database = $Database;
            
            }

            
            public function reactie_toevoegen ($Reactie, $Gebruiker_naam, $Gebruiker_email, $Gebruiker_website, $Datum, $Tijd)
            {

            
                $Query =
                "
                    INSERT INTO
                        reactie
                    (
                        reactie,
                        gebruiker_naam,
                        gebruiker_email,
                        gebruiker_website,
                        datum,
                        tijd
                    )
                    VALUES
                    (
                        '"
.mysqli_real_escape_string ($this->_Connectie, $Reactie). "',
                        '"
.mysqli_real_escape_string ($this->_Connectie, $Gebruiker_naam). "',
                        '"
.mysqli_real_escape_string ($this->_Connectie, $Gebruiker_email). "',
                        '"
.mysqli_real_escape_string ($this->_Connectie, $Gebruiker_website). "',
                        '"
.mysqli_real_escape_string ($this->_Connectie, $Datum). "',
                        '"
.mysqli_real_escape_string ($this->_Connectie, $Tijd). "'
                    )
                "
;
                
                $this->_Database->query ($Query);
            
            }

            
            public function alle_reacties ()
            {

            
                $Query =
                "
                    SELECT
                        reactie,
                        gebruiker_naam,
                        gebruiker_website,
                        datum,
                        tijd
                    FROM
                        reactie
                    ORDER BY
                        datum
                    DESC
                        tijd
                    DESC
                "
;
                
                    return $this->_Database->query ($Query)->fetch_alles ();
            
            }
    
    }

    
    class MySQLGastenboekAdapter extends DatabaseGastenboekAdapter
    {
    
        public function __construct (MySQL $MySQL)
        {

        
            parent::__construct ($MySQL);
        
        }
    
    }

    
    $Database = new MySQL ();
    $Database->maak_verbinding ('localhost', 'root', '', 'gastenboek');
    $Adapter = new MySQLGastenboekAdapter ($Database);
    
    $Gastenboek = new Gastenboek ($Adapter);
    
    echo $Gastenboek->weergeven ();
    
        if ($_SERVER['REQUEST_METHOD'] == 'POST')
        {

        
            $Gebruiker = new Gebruiker ($_POST['gebruiker_naam'], $_POST['gebruiker_email'], $_POST['gebruiker_website']);
            $Gebruiker->reactie_plaatsen ($Adapter, $_POST['reactie']);
        
        }



?>

<html>
<head>
<body>

<form method="POST" action="
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php basename($_SERVER['PHP_SELF']); ?>
">

<table>

<tr>
<td>Naam </td><td><input type="text" name="gebruiker_naam" value="" size="30" /></td>
</tr>

<tr>
<td>Email </td><td><input type="text" name="gebruiker_email" value="" size="30" /></td>
</tr>

<tr>
<td>Website </td><td><input type="text" name="gebruiker_website" value="" size="30" /></td>
</tr>

<tr>
<td>Reactie </td><td><textarea name="reactie"></textarea></td>
</tr>

</table>

</form>

</body>
</head>
</html>
 
PHP hulp

PHP hulp

01/10/2022 20:58:05
 
Wim E

Wim E

03/02/2010 21:55:00
Quote Anchor link
dan heeft het weinig zin om alles te gaan posten.
Heb je al error handeling aangezet? Errors naar boven gekomen?
Post alleen relevante code aub:) (aan html code hebben we neit zoveel)
 
- -

- -

03/02/2010 22:00:00
Quote Anchor link
Het lezen van de error zou al voldoende moeten zijn, zeker in dit geval is het zeer duidelijk:

Fatal error: Declaration of MySQL::query() must be compatible with that of Database::query().
Fatale fout: declaratie van MySQL::query() moet compitabel zijn met die van Database::query().

Wat zien we? De klasse MySQL implementeert de interface Database. Bij de klasse MySQL zien we een method query($Query), maar in de interface Database enkel query(). Je moet de parameter $Query dus ook even in de interface Database zetten.
 
Niels K

Niels K

03/02/2010 22:10:00
Quote Anchor link
@Jonathan..

Heeeel erg bedankt. Dat was hem idd:)
 



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.