syntax error unexpected T_PUBLIC

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

Softwareontwikkelaar Cleopatra

Functieomschrijving: De directie Verkeer en Openbare ruimte van de gemeente Amsterdam beschikt over een softwareapplicatie, "Cleopatra", waarmee geautomatiseerde handhaving plaatsvindt (op basis van kentekenherkenning) van bepaalde gebieden waarin toegangseisen worden gesteld aan het verkeer. Voorbeelden ervan zijn de milieuzones, de zone zwaar verkeer, handhaving van bromen snorfietser op het fietspad en autoluwe gebieden. Voor de doorontwikkeling en uitbreiding ervan zijn gespecialiseerde softwareontwikkelaars nodig die helpen bij het programmeren van de handhavingsmodules voor nieuwe gebieden en het verbeteren en bijwerken van de bestaande onderdelen van de softwareapplicatie.De opdracht bestaat uit: het programmeren van de diverse modules;het tijdens demo's tonen van de

Bekijk vacature »

Front-end developer (Angular)

Functie Het team bestaat uit een architect, fullstack developers, app developers, de product owner en projectmanager. Eenieder draagt vanuit zijn discipline bij aan een complete oplossing voor de klant. Uiteraard zul je hierin nauw samenwerken met je collega’s. Jij wordt verantwoordelijk voor de front-end implementatie en fungeert als lead op dit gebied binnen het team. Je kunt helder formuleren, ideeën uitdragen en overbrengen aan je collega’s. Qua technische stack is het vooral van belang dat je ervaren bent met Angular, HTML5, CSS en TypeScript. Verder is ervaring in NgRx, Bootstrap, BEM en Cypress een pré, evenals affiniteit met UX/UI Design!

Bekijk vacature »

.NET Developer te Naarden

Bedrijfsomschrijving Voor mijn klant ben ik op zoek naar een .NET Developer om het huidige team te komen versterken. Deze organisatie bevindt zich in de logistieke sector, en zij hebben een eigen ERP systeem ontwikkeld dat zij inzetten ter optimalisatie van de logistieke processen van haar eindklanten. Deze organisatie bestaat inmiddels al ruim 20 jaar, waarbij zij een duidelijke missie hebben, namelijk: het werk van de eindklant makkelijker maken door de systemen die zij leveren. Ze werken over heel de wereld, wat deze organisatie een echte internationale speler maakt. Binnen de organisatie kenmerken ze zich door een dynamische en professionele

Bekijk vacature »

C#.NET developer

Functieomschrijving Wij zijn op zoek naar een gepassioneerde Full Stack C#.NET Software Developer. Als Software Developer ben je verantwoordelijk voor het ontwikkelen van webapplicaties, apps en dashboards voor de eigen IOT-oplossingen. Je werkt samen met andere ontwikkelaars en engineers om de sensoren in machines uit te lezen en deze data om te zetten in management informatie voor jullie klanten. Taken en verantwoordelijkheden: Testen en valideren van de ontwikkelde software. Ontwikkelen en onderhouden van webapplicaties, apps en dashboards voor de eigen IOT-oplossingen. Je gaat aan de slag met diverse technologieën en frameworks. Denk hierbij aan C#, JS frameworks, HTML, CSS, TypeScript,

Bekijk vacature »

Fullstack Developer

Functieomschrijving Heb je kort geleden jouw HBO diploma ICT development behaald? Of zit je nog aan het begin van je carrière en heb je affiniteit met C#.NET? Voor een erkende werkgever in de omgeving van Oosterhout zijn wij op zoek naar een fullstack developer. Als C#.NET developer werk je samen met een vooruitstrevend team aan het ontwikkelen van maatwerk software voor klanten. Je hebt affiniteit met SQL, maar nog belangrijker is dat je kennis en ervaring hebt met C#.NET. Jouw werkzaamheden zien er als volgt uit: Het ontwikkelen van onze high-availability en high-performance backend; Je begint de dag rond 8:30

Bekijk vacature »

Software Developer C# .NET

Functie omschrijving Zoek jij een nieuwe uitdaging binnen development waar je komt te werken binnen een flexibel, jong en ondernemend bedrijf? Wij zijn voor deze functie op zoek naar een C# .NET Developer die enthousiast wordt van het aansluiten en begeleiden van (complexe) nieuwe klanten. Verder begeleid je complexe projecten, ben jij iemand die altijd kansen ziet? Dan zoeken wij jou! Verder ga jij je bezighouden met: Het verbeteren van functionaliteiten binnen het dataplatform; Meedenken in oplossingsrichtingen; Werken aan de architectuur; Ontwikkelen van nieuwe technologieën. Bedrijfsprofiel Waar ga je werken? De organisatie waar je voor gaat werken heeft een onafhankelijk

Bekijk vacature »

PHP Developer (junior functie)

Functie omschrijving Wij zijn op zoek naar een PHP Developer! Ben jij een starter en wil je werken bij een jong en leuk bedrijf? Lees dan verder! Wij zijn op zoek naar een PHP Developer binnen een junior functie. Binnen dit bedrijf gaat het om persoonlijke aandacht en ontwikkeling! Je komt te werken voor een leuk communicatiebureau die alles op het gebied van online en offline communicatie doet. Dit doen zij voor verschillende branches, waardoor je aan diverse soorten projecten mag werken, dit maakt deze baan erg leuk! Daarbij werk je aan een door hun zelf ontwikkeld framework welke goed

Bekijk vacature »

Junior .NET Developer

Dit ga je doen Als junior .NET Developer lever je met jouw oplossingen direct een bijdrage aan de bedrijfsprocessen van de klanten. Werkzaamheden waar jij je zoal mee bezig houdt zijn; Het ontwikkelen, onderhouden en optimaliseren van de draaiende platforms van de klanten; Softwareontwikkeling middels C#, .NET; Klantcontact om de wensen te bespreken en uit te werken; Optimaliseren van de (huidige) bedrijfsprocessen; De IT-afdeling bestaat uit 30 personen verdeeld over 3 teams. Het team waar je in terecht komt bestaat uit ongeveer tien man. Het is een team wat bestaat uit betrokken collega’s, waar iedereen bereidt is om elkaar te

Bekijk vacature »

Junior .NET Software Developer

Dit ga je doen Software development met behulp van C# .NET en / of PHP, je mag zelf kiezen waar jij je in wil specialiseren Meedenken over het nieuwe pakket, waar moet het aan voldoen? Unit-, integratie- en diverse andere tests schrijven en uitvoeren Nauw samenwerken met je IT collega's zoals Testers, Developers, DevOps Specialisten en Architecten Jezelf ontwikkelen met behulp van trainingen en cursussen Hier ga je werken Onze klant, een grote speler in de medische sector, is op zoek naar een enthousiaste junior (of meer ervaren) Software Developer die klaar is voor een nieuwe stap in zijn of

Bekijk vacature »

APEX Ontwikkelaar in een team van Oracle Developer

Bedrijfsomschrijving Wij zijn op zoek naar een APEX Ontwikkelaar om onze opdrachtgever in Den Haag te versterken. In deze rol zul je verantwoordelijk zijn voor het ontwikkelen en onderhouden van de front-end van onze applicaties met behulp van Oracle Application Express (APEX). Je werkt aan zowel inhouse als externe projecten. De sfeer binnen het Oracle team is gemoedelijk en men probeert elkaar te helpen én van elkaar te leren. Zo ontstaat er een prettige en plezierige werksfeer waar ruimte is voor persoonlijke ontwikkeling en groei. Er wordt gewerkt met de meest nieuwe technologieën waardoor je kennis up-to-date blijft. Het bedrijf

Bekijk vacature »

Back end developer Python, PHP

Functie Jij als full stack ontwikkelaar zult komen te werken samen met 1 PHP ontwikkelaar een PO en een flexibele schil aan ontwikkelaars . Samen ga je ervoor zorgen dat de huidige producten doorontwikkeld worden. De marketplace is geschreven in PHP Laravel en in de front end React. De roostersoftware is ontwikkeld in Python in combinatie met React in de front end. Jij zult voornamelijk (lees 75%) werken aan de roostersoftware. Momenteel ligt de uitdaging in het feit dat de roostersoftware breder schaalbaar moet worden zodat het voor meerdere flexwerkers ingezet kan worden. Verder willen ze financiële koppelingen gaan maken

Bekijk vacature »

Medior/senior Fullstack developer

Functie Onder begeleiding van 3 accountmanagers waarvan er 1 binnen jouw expertise je aanspreekpunt zal zijn ga je aan de slag bij diverse opdrachtgevers. Hij of zij helpt je bij het vinden van een passende en uitdagende opdracht. Hierin houden ze uiteraard rekening met jouw situatie, ervaring en (technische) ambities. De opdrachten duren gemiddeld één tot 2 jaar. Hierdoor kun je je ook echt vastbijten in een project en als consultant impact maken. Naast de opdracht ben je regelmatig met je collega’s van de IT-afdeling om bijvoorbeeld onderlinge kennis te delen, of nieuwe trends te bespreken. Ook worden er regelmatig

Bekijk vacature »

Back End Developer

Als Back End developer bij KUBUS houd je je bezig met het ontwikkelen van de (web)applicatie en services van BIMcollab. Je hebt een focus op de back end van onze software, daarvoor werken wij hoofdzakelijk met C# en .NET. Wij hanteren een full-stack benadering, wat betekent dat je naast de back-end ook meehelpt bij andere onderdelen van de code. Als softwarebedrijf bevindt KUBUS zich in een unieke positie. We bouwen aan onze eigen producten die wereldwijd door tienduizenden gebruikers worden gebruikt. Ons bedrijf heeft precies de juiste grootte: groot genoeg om echt impact te maken in de markt, maar klein

Bekijk vacature »

Software Developer PHP JavaScript Python HBO SQL

Samengevat: Wij zijn een softwarebedrijf voor Autodealers. Ben jij een Medior of Senior Software Developer? Heb je ervaring met PHP, JavaScript of Python? Vaste baan: Java.Developer Software HBO €3.000 - €5.200 Bij ons op de werkvloer is er een positieve en informele sfeer. Naast een goede begeleiding en een enthousiaste klantenkring biedt deze werkgever een prettige omgeving met zeer afwisselende werkzaamheden. Houd jij van aanpakken en denk je dat je deze uitdaging aankunt? Dan zoeken wij jou! Zij werken voor grote klanten. Zij doen omvangrijke projecten die we bij deze werkgever op kantoor realiseren (geen detachering). Zij werken met state-of-the-art

Bekijk vacature »

Pagina: 1 2 3 volgende »

Reshad F

Reshad F

08/06/2012 21:58:12
Quote Anchor link
hallo ik heb een functie om connectie tot stand te brengen gemaakt. alleen krijg ik de fout:
syntax error unexpected T_PUBLIC on line .. dat is dit stukje maar ik zie niet wat er fout is, zou er even iemand mee willen kijken :)

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
<?php

    public function openConnection()
    {

        # code...
        try
        {

            if($this->config->connector == "mysql")
            {

                $this->connection = mysql_connect($this->config->hostname, $this->config->username, $this->config->password);
                $this->selectdb = mysql_select_db($this->config->database);
            }

            elseif($this->config->connector == "mysqli")
            {

                $this->connection = mysql_connect($this->config->hostname, $this->config->username, $this->config->password);
                $this->selectdb = mysql_select_db($this->config->database);    
            }
            
        }

        catch (Exception $e)
        {

            return $e;
        }
    }


?>
 
PHP hulp

PHP hulp

01/12/2024 12:54:16
 
Erwin H

Erwin H

08/06/2012 22:22:26
Quote Anchor link
Bij dit soort meldingen zit de echte fout er altijd voor. Php verwacht namelijk geen public keyword, maar nog iets anders. Je mist dus een haakje, puntkomma oid ervoor.
 
Reshad F

Reshad F

08/06/2012 22:26:13
Quote Anchor link
hmm raar want ervoor heb ik alleen staan...maar zie niets fout daarin?

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
<?php
class config
{
    public $hostname;
    public $username;
    public $password;
    public $database;
    public $prefix;
    public $connector;

    function
__construct($hostname = NULL, $username = NULL, $password = NULL, $database = NULL, $prefix = NULL, $connector = NULL)
    {

        $this->hostname = !empty($hostname) ? $hostname : "";
        $this->username = !empty($username) ? $username : "";
        $this->password = !empty($password) ? $password : "";
        $this->database = !empty($database) ? $database : "";
        $this->prefix = !empty($prefix) ? $prefix : "";
        $this->connector = !empty($connector) ? $connector : "mysql";  //mysql of mysqli waarde opgeven (database)
    }

    function
__destruct()
    {

        #destruction!
    }
}



class db
{
    private $connection;
    private $selectdb;
    private $lastQuery;
    private $config;

    function
__construct($config)
    {

        # code...
        $this->config = $config;
    }

    function
__destruct()
    {

        #destruction!
    }
}

?>
 
- Ariën  -
Beheerder

- Ariën -

08/06/2012 22:28:42
Quote Anchor link
Welke PHP-versie heb je?
 
Reshad F

Reshad F

08/06/2012 22:31:00
Quote Anchor link
versie 5.3.6 ( draai dit lokaal op MAMP )
 
Erwin H

Erwin H

08/06/2012 22:32:10
Quote Anchor link
In welke class zit die functie? Beide classes zijn namelijk afgesloten, dus als dit erna komt dan kan die public niet. Een functie buiten een class kan je niet public maken.
 
Reshad F

Reshad F

08/06/2012 22:42:54
Quote Anchor link
hoe bedoel je als dit erna komt?

ik heb er private van gemaakt en dit werkte ook niet. ik ben niet zo lang met OOP bezigg dit is pas mijn 3e class ofzo dus ik zie ook niet zo snel wat er fout is. even voor de zekerheid hier hoe de hele code in elkaar zit..

http://pastebin.com/FArdQEqh
 
Erwin H

Erwin H

08/06/2012 22:45:14
Quote Anchor link
Dat is dus precies wat ik bedoelde :-)
De class db wordt afgesloten op regel 23, daarna definieer je echter nog functies die in die class horen. Omdat die nu buiten een class vallen, verwacht php geen public keyword. Het haakje van regel 23 moet dus ergens anders, ik gok regel 257.
 
Reshad F

Reshad F

08/06/2012 22:50:59
Quote Anchor link
ah dankjewel erwin! die melding krijg ik niet meer in mijn php log maar heb nog altijd een internal 500 error.
in mijn log zie ik het volgende

[08-Jun-2012 22:48:26] PHP Parse error: syntax error, unexpected T_ELSEIF, expecting T_CATCH in /Applications/MAMP/htdocs/library/class.db.php on line 227

dat is de function van countRows waarin ik mysql_num_rows uitvoer. waarom is dit fout?

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
<?php
public function countRows($result)
    {

        try
        {
            if($this->config->connector == "mysql")
                return mysql_num_rows($result);
        }

        elseif ($this->config->connector == "mysqli")
        {

            # code...
            return mysqli_num_rows($result);
        }

        catch(Exception $e)
        {

            return $e;
        }
    }

?>
 
Erwin H

Erwin H

08/06/2012 22:52:36
Quote Anchor link
Kijk goed naar de haakjes. De elseif staat nu achter het haakje sluiten van de try, dat klopt niet. Die elseif moet achter de if komen. Je if heeft nu helemaal geen haakjes.
 
Reshad F

Reshad F

08/06/2012 22:59:04
Quote Anchor link
ah helemaal overheen gekeken.. maar nu werkt alles :) dankjewel!

als je even naar het geheel kijkt. is dit een beetje goed OOP of zijn er dingen die ik echt anders moet doen?
 
Erwin H

Erwin H

08/06/2012 23:06:09
Quote Anchor link
Zonder echt alles door te kijken zijn er twee dingen die me opvallen.
Het eerste was het returnen van het exception object (return $e). Op zich kan dat uiteraard, alleen is het niet gebruikelijk. Meestal handel je de fout daar helemaal af, of gooi je opnieuw een exception, die je dan ergens anders dan weer kan afhandelen.
Het tweede is dat je door je hele object heen de mysql en mysqli functies gebruikt. In elke functie weer heb je een if en else staan zodat je beide functies kan gebruiken. Wat als je nu ook pdo wil gaan gebruiken, ga je dan al die functies af om een volgende optie erbij te bouwen? Wat ik zou proberen is de mysql/mysqli/pdo functies er compleet uit te halen en dat in aparte classes te plaatsen. Een class voor mysql, een class voor mysqli, een class voor pdo, een class voor.... wat er dan ook nog later kan komen. De class die je nu hebt krijgt gewoon een object van een van die classes meegegeven (maakt niet uit welke) en gebruikt dat object om echt de functie uit te voeren. Deze class die je nu hebt kan dus naar de rest van je applicatie als 'het' database object gezien worden, maar eronder kan je verschillende methodes toepassen.
 
Reshad F

Reshad F

08/06/2012 23:12:48
Quote Anchor link
oke dan heb ik nu 2 vraagjes en ik hoop dat je me daar ook antwoord/uitleg op kan geven :)

- kan je me een voorbeeld geven van zown foutafhandeling?
- bedoel je met dat apart maken van die classes en een aparte db classe en dan welke db class ik gebruik hierop extenden?
 
Erwin H

Erwin H

08/06/2012 23:19:19
Quote Anchor link
Die eerste is lastig om zo even te doen. Dat ligt compleet aan hoe jij verder met onverwachte fouten om gaat. Wat ik elke keer mezelf afvraag is: 'Kan de class de fout zelf oplossen, of moet een hogere class het doen'.
Kan de class het zelf, dan moet je dat doen. Bijvoorbeeld als er foute input is gegeven, dan kan je dat vervangen door een default waarde. Doe dat en geef weer een normale return waarde terug.
Kan de class het niet zelf, als er bijvoorbeeld echt helemaal geen database connectie mogelijk is, dan zal er een fout pagina getoond moeten worden. Dat kan deze class niet, dus gooi je een nieuwe exception, zodat dat later weer kan worden opgevangen.

Op het tweede punt wil ik morgen wel een voorbeeld geven. Het is me nu even te laat :-)
 
Reshad F

Reshad F

08/06/2012 23:24:42
Quote Anchor link
ah ik snap de logica van het eerste! zal het proberen uit te werken.

en de tweede zie ik morgen graag tegenmoet :)
Gewijzigd op 08/06/2012 23:51:10 door Reshad F
 
Wouter J

Wouter J

08/06/2012 23:49:41
Quote Anchor link
Van het tweede punt, het Adapter pattern, heb ik nog wel een paar voorbeelden:
deze van Niels en deze van mijzelf.

Over het eerste:
- een goed artikel
- dit topic (vanaf de gelinkte reactie, daarvoor zeg ik allemaal onwetende domme dingen... ;)
 
Reshad F

Reshad F

08/06/2012 23:51:15
Quote Anchor link
edit: ik probeerde wat dingetjes uit om te kijken of alles werkt. nu loop ik ergens raars tegenaan. ik doe hetvolgende

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
<?php
$sql
= $db->query("SELECT
                                    id, username, password, age, gender
                            FROM
                                    {testTable}
                        "
);
    if($sql === false)
    {

        echo "<br>de tabel werd niet benaderd :(";
    }

    else
    {

        $hasRows = $db->hasRows($sql);

        echo "<br>Het Heeft: " . $hasRows . " rijen";
    }

?>

maar ik krijg: de tabel werd niet benaderd. Wanneer ik dan in de php_log kijk dan zie ik geen foutmelding en ook met de display_errors zie ik niets. volgens mij ligt het aan de function waarin ik de slashes toevoeg dat dit fout gaat. of waarin ik de table eruit haal met str_replace. kan iemand in het linkje naar deze 2 functies kijken voor me of hier iets fout in zit?

Toevoeging op 08/06/2012 23:52:33:

editedit: bedankt wouter! ik ga even naar de linkjes kijken :) -> ik heb er naar gekeken en vond jou manier iets duidelijker ik ga het even proberen zoals daar beschreven en post hier dan wel even een linkje van hoe het geworden is. dat andere is mij nu veel te laat voor geworden ga ik morgen zeker doornemen als ik er tijd voor vind naast het voetbal kijken en werken!
Gewijzigd op 08/06/2012 23:59:41 door Reshad F
 
Erwin H

Erwin H

09/06/2012 08:45:02
Quote Anchor link
Zou je in de SQL query niet {$testTable} moeten gebruiken in plaats van {testTable}? Ik neem aan dat je daar namelijk een variabele wil invoegen. Anders moet je die {} weglaten.

Voor de objecten wacht ik nu even af waar je zelf mee komt, daar kunnen we dan verder op door.
Gewijzigd op 09/06/2012 08:45:50 door Erwin H
 
Reshad F

Reshad F

09/06/2012 19:02:00
Quote Anchor link
hmm ik heb er weer naar gekeken, waarom variabele toevoegen erwin? ik gebruik toch gewoon de tabelnaam op dat zou goed moeten zijn toch? (de variabele doet het trouwens sowieso niet heb het even geprobeerd) en hier doe ik het ook en die connectie lukt hier wel gewoon.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
$config
= new config("127.0.0.1", "****", "****", "testData", "{testTable}", "mysql");
?>
 
Erwin H

Erwin H

09/06/2012 20:03:54
Quote Anchor link
Ik zeg niet dat je een variabele moet gebruiken, in tegendeel, en in elk geval niet zo. Maar wat je nu hebt vind ik erg vreemd met die accolades erom heen. Ik ken dat in elk geval niet als SQL syntax, wel als PHP syntax om een variabele in te voegen.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
"SELECT id, username, password, age, gender
FROM {testTable}"

?>

Dus wat wil je hier mee? Zoals je het nu hebt krijg je een foutmelding.
 
Reshad F

Reshad F

09/06/2012 20:10:00
Quote Anchor link
ja dat heb ik als een prefix gedaan. ( las ik in een tutorial.) weet niet of het slim is om te doen eigenlijk maar de brackets worden weer weggehaald met

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
    $query
= str_replace("}", "", $query);
    $query = str_replace("{", "", $this->config->prefix, $query);
?>
 

Pagina: 1 2 3 volgende »



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.