INSERT MySQLi lukt niet

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

.NET developer

Functie Als .NET developer start jij in een development team met één Senior .NET developer en één junior .NET developer. Als team zijn jullie verantwoordelijk voor het schrijven van software voor onze toonaangevende Automatiseringssystemen. Jij gaat aan de slag met de onderhoud van de kernsoftware, ondersteund de software van derden door het gebruik van onze webservices en als team zijn jullie verantwoordelijk voor het ontwikkelen van onze backend oplossingen. Wij maken op dit moment veel gebruik van .NET met ASP.NET. Komend kwartaal gaan wij wel gedeeltelijk overstappen naar .NET Core. Verder werken wij ook met SOAP, REST, JSON, HTML5, CSS3

Bekijk vacature »

OutSystems developer

Dit ga je doen Klanten adviseren over de mogelijkheden van OutSystems; OutSystems oplossingen ontwikkelen en implementeren; Stakeholdermanagement; Kennis en expertise up to date houden en delen met het team. Hier ga je werken Onze opdrachtgever, gevestigd in regio Amsterdam, is een innovatieve dienstverlener die zich richt op grote corporates in verschillende sectoren. Doordat je bij veel verschillende klanten aan de slag zal gaan is geen enkel project hetzelfde. De organisatie kenmerkt zich door hoge mate van professionaliteit en innovatieve oplossingen. In de rol van OutSystems developer zal jij verschillende grote klanten helpen om efficiënte OutSystems oplossingen te ontwikkelen en implementeren.

Bekijk vacature »

Database ontwikkelaar

Functieomschrijving Wil jij aan gave logistieke softwareprojecten werken en bij een uniek softwarebedrijf in de regio van Tilburg? Wacht niet langer en reageer snel op deze vacature. Als Database ontwikkelaar ga je aan de slag het schrijven van stored procedures en verder uitbouwen van de SQL database. Je werkt in een database team, met allemaal mensen die energie krijgen van software en techniek. Verder krijg je als taak: Optimaliseren en uitbouwen van de MS SQL databases die gebruikt worden; Optimaliseren van query's, waardoor er efficiënter gewerkt kan worden; Je werkt met de technieken T-SQL of PL/SQL; Bij interesse kan je

Bekijk vacature »

PHP developer

Functie Voor een opdrachtgever in omgeving Leiden zijn wij op zoek naar een PHP developer die affiniteit heeft met C++. Ben jij reeds afgestudeerd of heb je al een paar jaar ervaring? Lees snel verder en kijk of dit iets voor jou is! Hoe kan jouw dag er straks uitzien? Je gaat software en webapplicaties ontwikkelen met behulp van de talen C / C++ / PHP. Je gaat technische klussen uitvoeren op locatie bij klanten. Je onderhoudt contact met de projectleider om er zeker van te zijn dat een projecten goed verlopen. Je gaat klanten ondersteunen op het gebied van

Bekijk vacature »

Fullstack Software Developer

Functieomschrijving Voor een ambitieuze werkgever in regio Roosendaal zijn wij op zoek naar een Full Stack C#.NET Developer. Als software programmeur ben je verantwoordelijk voor het bouwen van webapplicaties, apps en dashboards voor de eigen IOT-oplossingen. Je werkt samen met andere developers 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: Verder ontwikkelen en onderhouden van webapplicaties, dashboards en apps voor de eigen IOT-oplossingen; Testen en goedkeuren van de software; Je gaat aan de slag met de volgende technologieën en frameworks: C#, JS frameworks,

Bekijk vacature »

Embedded Software Developer

Functie omschrijving Ben jij een Embedded Software Developer die affiniteit heeft met de allernieuwste technieken? Voor een mooi softwarebedrijf in omgeving Gouda zijn wij op zoek naar een Embedded Software developer. Binnen deze rol houdt jij je bezig met alle werkzaamheden die nodig zijn om een functionaliteit te bouwen. Denk aan ontwerpen, architectuur, programmeren en algoritmes. Je voert test en validatie werkzaamheden uit bij de implementatie bij de klant. Ben jij enthousiast en een echte team player? Lees dan snel verder en laat wat van je horen! Bedrijfsprofiel Onze opdrachtgever bestaat uit een groot aantal creatieve en ambitieuze ontwikkelaars. Ze

Bekijk vacature »

.NET developer WO niveau voor predictive software

Bedrijfsomschrijving Dit bedrijf uit Den Bosch is om precies te zijn 15 medewerkers groot en ze ontwikkelen (predicitve) planning software. Dit doen zij voor allerlei mooie en bekende organisaties (bierbrouwerijen, gemeentes, oliemaatschappijen en diverse multinationals). Wegens meer en grotere vraag vanuit de klanten komen er nu posities vrij voor onder andere een .NET developer. Het bedrijf is goed met openbaar vervoer te bereiken. Functieomschrijving Je komt hier te werken in een team van 3 .NET developers en bent betrokken bij het gehele ontwikkelproces. Dus van idee naar ontwerp en van ontwikkeling tot testen en implementatie. Bij voorkeur ben je niet

Bekijk vacature »

Lead C++ Developer

De rol van Lead C++ Developer Als Lead C++ developer bij KUBUS word je verantwoordelijk voor het implementatie design van requirements en de software architectuur van de desktop applicaties van BIMcollab, ons platform voor 3D model-validatie en issue-management bedoeld om de kwaliteit van 3D design-modellen voor gebouwen te verbeteren. Betere 3D modellen leiden tot betere gebouwen, dus zo draag je bij aan verduurzaming van de gebouwde omgeving met slimmer gebruik van materialen, minder verspilling en energie-efficiënte gebouwen. Een goede gebruikerservaring staat bij ons hoog in het vaandel; we gaan in onze ontwikkeling voor innovatie en kwaliteit. In je rol als

Bekijk vacature »

Applicatie Ontwikkelaar

Bedrijfsomschrijving DUO verzorgt als uitvoeringsorganisatie, zijnde onderdeel van het Ministerie van Onderwijs, Cultuur en Wetenschap de uitvoering van complexe wet- en regelgeving en heeft een uitgebreid dienstenpakket. DUO financiert en informeert onderwijsdeelnemers en onderwijsinstellingen. Voor verdere informatie zie www.duo.nl Functieomschrijving Wie zoeken we? Jij bent een enthousiaste, flexibele OPS’er die het leuk vindt om het bestaande examenlandschap te vernieuwen. Je bent leergierig en hebt interesse in cloud- en containertechnieken zoals OpenShift, Docker en Helm. Je gaat een uitdaging niet uit de weg en wil je nieuw opgedane kennis graag delen met de collega’s binnen en buiten het team. Doordat de

Bekijk vacature »

Full stack ontwikkelaar Laravel, Vue.js

Functie Als ontwikkelaar binnen deze organisatie hou jij je voornamelijk met lopende projecten voor de verschillende klanten. Zo bouw je de ene dag aan prijsschifting systemen en de andere dag onderzoek je crawlers en stel je ze zo in dat de data goed binnen komt binnen het systeem. Daarnaast bouw je mee aan dashboards en ben je dus constant bezig met het verbeteren van het platform. Er is een vaste werkwijze, zo werken ze met Trello kaarten en onderverdelen ze deze aan het begin van iedere week onder de developers. Dit wordt door de lead developer gedaan, maar in samenspraak

Bekijk vacature »

Applicatie ontwikkelaar

Functie omschrijving Zelfstandige applicatie ontwikkelaar gezocht voor familiair bedrijf in omgeving Capelle ad Ijssel Ben jij op zoek naar een nieuwe uitdaging en zoek jij een informele werkgever waar je zelfstandig kunt werken binnen een leuk IT team, lees dan snel verder want wie weet zijn wij op zoek naar jou! Een deel van jouw werkzaamheden: Onderhouden en ontwikkelen van de IT systemen; Opzetten van Azure Cloud systemen, denk aan interfaces, hardware op de Cloud, webportalen of BI functies; Werken aan scripts binnen verschillende software applicaties, denk aan ERP en CAD; Ontwikkelen en implementeren van MS PowerApps en Power BI.

Bekijk vacature »

Technisch Applicatie ontwikkelaar

Functie omschrijving Ben jij op zoek naar een nieuwe uitdaging en zoek jij een informele werkgever waar je zelfstandig kunt werken binnen een leuk IT team, lees dan snel verder want wie weet zijn wij op zoek naar jou! In deze functie werk jij voornamelijk aan: Het onderhouden en ontwikkelen van de IT systemen; Het opzetten van Azure Cloud systemen, denk aan interfaces, hardware op de Cloud, webportalen of BI functies; Werk je aan scripts binnen verschillende software applicaties, denk aan ERP en CAD; Ontwikkel en implementeren je MS PowerApps en Power BI. Bedrijfsprofiel Je komt terecht bij een familiair

Bekijk vacature »

Software Programmeur PHP

Functie Wij zijn op zoek naar een PHP programmeur voor een leuke opdrachtgever in omgeving Alblasserdam. Heb jij altijd al willen werken bij een bedrijf dat veilige netwerkverbindingen levert door middel van veilige oplossingen? Lees dan snel verder. Hoe kan jouw dag er straks uitzien? Je gaat software en webapplicaties ontwikkelen met behulp van de talen C / C++ / PHP. Je gaat technische klussen uitvoeren op locatie bij klanten. Je onderhoudt contact met de projectleider om er zeker van te zijn dat een projecten goed verlopen. Je gaat klanten ondersteunen op het gebied van geleverde software en webapplicaties. Tevens

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 »

Senior Lead Front End Developer

Functieomschrijving Voor Stichting Waternet zijn wij op zoek naar een senior Lead Front End Developer. Binnen het DevOps team Online zijn we op zoek naar een Senior Lead Front End developer met kennis van toegankelijkheid. Deze developer zal zich bezighouden met development van webpaginas die in verbinding staan met systemen uit het back office. Taken Ontwerpen, ontwikkelen, implementeren, documenteren en beheren van webapplicaties in een Azure-omgeving Debuggen, analyseren en oplossen van problemen in de OTAPomgevingen Je participeert in het DevOpsTeam Online voor het verder uitwerken en implementeren van gebruikerswensen Je bent betrokken bij toegankelijkheid audits en het implementeren van WCAG

Bekijk vacature »
Rene Zwolsman

Rene Zwolsman

04/12/2014 20:36:10
Quote Anchor link
Voorheen gebruikte ik altijd de MySQL querys maar nu wil ik over gaan naar MySQLi maar zelfs met een simpele test krijg ik geen resultaat.

Ik heb de volgende 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
<?php
$conn
= new mysqli('localhost', 'root', 'password', 'ResolDB');
// Check connection
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}

echo "Connected successfully <br>";

$veld1 = '2014-01-01 00:01:00';
$veld2 = 11.0;
$resultaat = mysqli_query($conn, "INSERT INTO test (Timestamp, TS1) VALUES ('" . $veld1 . "','" . $veld2 . "');");
if ($resultaat == false)
{

    echo "Query mislukt. Foutmelding is: " . mysqli_error();
}

else
{
    echo "Query gelukt!";
}


mysqli_close($conn);
?>


met het volgende resultaat:

Connected successfully
Query mislukt. Foutmelding is:


Er komt dus niet eens een foutmelding. Waar gaat het fout?
Gewijzigd op 04/12/2014 20:39:30 door Rene Zwolsman
 
PHP hulp

PHP hulp

02/05/2024 07:25:23
 
Daan Slagter

Daan Slagter

04/12/2014 20:42:20
Quote Anchor link
Volgens mij moeten de haakjes aan het eind van je query weg er staan er nu namenlijk 2

dit: "');");
moet zijn: "')");
 
- Ariën  -
Beheerder

- Ariën -

04/12/2014 20:44:36
Quote Anchor link
Je mist $conn in je mysql_error, en je hoeft geen afsluitende punt-komma in je query zelf te plaatsen.
 
Rene Zwolsman

Rene Zwolsman

04/12/2014 22:14:53
Quote Anchor link
Code aangepast naar:

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

$conn
= new mysqli('localhost', 'root', 'password', 'ResolDB');
// Check connection
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}

echo "Connected successfully <br>";

$veld1 = '2014-01-01 00:01:00';
$veld2 = 11.0;
$resultaat = mysqli_query($conn, "INSERT INTO test (Timestamp, TS1) VALUES ('" . $veld1 . "','" . $veld2 . "')");
if ($resultaat == false)
{

    echo "Query mislukt. Foutmelding is: " . mysqli_error($conn);
}

else
{
    echo "Query gelukt!";
}


mysqli_close($conn);

?>


maar het resultaat is hetzelfde...
 
Dos Moonen

Dos Moonen

04/12/2014 23:41:31
Quote Anchor link
Je gebruikt de OOP interface en de procedurele interfaces door elkaar.
Over het algemeen niet erg, behalve bij het controleren of de verbinding tot stand is gekomen.

http://nl3.php.net/manual/en/mysqli.construct.php

OOP:
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
// DIT GEBRUIK JIJ
$mysqli = new mysqli('localhost', 'my_user', 'my_password', 'my_db');

/*
 * This is the "official" OO way to do it,
 * BUT $connect_error was broken until PHP 5.2.9 and 5.3.0.
 */

if ($mysqli->connect_error) {
    die('Connect Error (' . $mysqli->connect_errno . ') '
            . $mysqli->connect_error);
}


echo 'Success... ' . $mysqli->host_info . "\n";

$mysqli->close();
?>


Procedureel:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
$link
= mysqli_connect('localhost', 'my_user', 'my_password', 'my_db');

// DIT GEBRUIK JIJ
if (!$link) {
    die('Connect Error (' . mysqli_connect_errno() . ') '
            . mysqli_connect_error());
}


echo 'Success... ' . mysqli_get_host_info($link) . "\n";

mysqli_close($link);
?>


Volgens de gelinkte documentatie:
Quote:
Note:
OO syntax only: If a connection fails an object is still returned. To check if the connection failed then use either the mysqli_connect_error() function or the mysqli->connect_error property as in the preceding examples.
 
Rene Zwolsman

Rene Zwolsman

07/12/2014 08:39:33
Quote Anchor link
Het is gelukt! De fout zat in een hoofdletter ipv kleine letter van de databasenaam. Maar deze kwam blijkbaar niet als foutmelding naar voren in de oorspronkelijke code.

Resultaat:

Success... Localhost via UNIX socket
Query gelukt!

Bedankt!
 
Rene Zwolsman

Rene Zwolsman

22/12/2014 15:35:20
Quote Anchor link
Toch nog een vraag over de INSERT in de database. Ik wil 49 waarden per regel toevoegen in de database. De eerste kolom van de database is "id" met een auto_increment zodat elke regel die wordt toegevoegd een hoger nummertje krijgt. Totaal heb ik dus 50 kolommen. De variabelen die ik insert, staan in de volgorde van de kolommen waardoor ik, volgens mij, niet alle kolomnamen hoef te omschrijven in mijn INSERT query. Maar als ik 49 variabelen in mijn query opneem, geeft hij als resultaat dat het aantal kolommen niet overeenkomt met het aantal waarden. Ik moet voor de kolom id een variabele opgeven om het te laten werken maar ik dacht dat dat juist niet hoeft omdat deze kolom automatisch gevuld wordt. Is dit een instelling in de database?
 
- Ariën  -
Beheerder

- Ariën -

22/12/2014 15:36:30
Quote Anchor link
Je kan ook een lege string voor het ID-kolom invullen, want AutoIncrement regelt toch de juist oplopende waarde.

Maar... waarom 50 kolommen? Dit klinkt als een database-normaliseringsfout.
Gewijzigd op 22/12/2014 15:37:39 door - Ariën -
 
Rene Zwolsman

Rene Zwolsman

22/12/2014 15:49:22
Quote Anchor link
ja met een lege waarde werkt het, maar ik dacht dat dat niet nodig was.

Ik heb een datalogger welke in een JSON output geeft van 47 verschillende sensoren. (20*temperatuur / 6*druk / 6*stroomsnelheid / 1*straling / 14*pompvermogen ) Deze waarden wil ik per minuut opslaan in een database om vervolgens grafieken van de maken. Tips voor andere oplossingen?
 
- Ariën  -
Beheerder

- Ariën -

22/12/2014 15:55:46
Quote Anchor link
Op voorbereiding voor de toekomst zou ik kiezen om een tabel te maken met sensors, met de velden:
Sensors:
ID (PK) AutoIncrement
Sensor - varchar(50)

En dan een tabel met de metingen:
Measures:
ID (PK) AutoIncrement
SensorID INT(6)
Value
DateMeasuring - DATETIME

Mocht er een nieuwe sensor komen, kan je die toevoegen aan de Sensors-tabel.
Gewijzigd op 22/12/2014 15:56:35 door - Ariën -
 
Rene Zwolsman

Rene Zwolsman

22/12/2014 16:05:29
Quote Anchor link
Bedankt voor het meedenken! De tabel met sensoren blijft dan hetzelfde zolang er geen sensoren bijkomen?
In de 50 sensoren die er nu gelogd worden, zitten er ca 20 die nog niet aangesloten zijn en als standaard waarde 888 °C of 0% geven. Dit zit vastgebakken in de API en kan ik dus niet aanpassen, hooguit niet opslaan (wat ik nu dus wel doe als voorbereiding voor uitbreiding in de toekomst) Meer sensoren dan die 50 is op het apparaat niet mogelijk dus verdere uitbreiding kan niet.

Maar misschien ga ik het toch eens proberen met 2 tabellen. Maar hoe selecteer ik dan een Value behorende bij een bepaalde sensor?
 
- Ariën  -
Beheerder

- Ariën -

22/12/2014 16:11:57
Quote Anchor link
Je hoeft de structuur van je tabellen niet meer aan te passen als er een nieuwe sensor bij komt. Een extra record toevoegen is het enige wat je hoeft te doen.

SELECT Value,DateMeasuring FROM Measures WHERE SensorID=4
En dan heb je alle gegevens van de sensor die ID 4 heeft in de Sensor-table.

Je kan bijvoorbeeld een extra veld (active) )aanmaken in de Sensor-table die aangeeft of een sensor actief is. Zo kan je foutieve waardes filteren die steeds 888°C graden zijn.
Gewijzigd op 22/12/2014 16:12:33 door - Ariën -
 
Ivo P

Ivo P

22/12/2014 21:50:51
Quote Anchor link
Quote:
De variabelen die ik insert, staan in de volgorde van de kolommen


Die kolommen staan NU in een volgorde en daarop baseer jij je code.

Een paar mogelijkheden:
* er wordt een aanpassing gedaan en er komt een kolom bij (aan het einde)
* er wordt een anderzins gerommeld aan de tabel en hoewel alle kolommen blijven zijn er 2 van plek verwissseld
* iemand denkt dat ze op alfabet zetten zinnig is.

En ineens valt je code om. Met wat geluk met een foutmelding, met wat pech merk je pas na 2 maanden dat de email adressen nu in een kolom varchar 10 staan en de telefoonnummers in de kolom die voor de email adressen was.

Het is 2 minuten werk om ze even uit te typen, of een halve minuut als je een beetje handig bent met copy-paste uit een create-query in je database beheertool.

Het is uren werk om je corrupte data te herstellen.
 
Rene Zwolsman

Rene Zwolsman

24/12/2014 15:16:05
Quote Anchor link
Omdat ik de kolomnamen vanuit de JSON in een array heb gezet, is het niet zo moeilijk om ze uit te typen maar het was meer om de code in te korten.

Toch snap ik de toegevoegde waarde nog niet zo van 2 tabellen. Tabel 1 met de sensoren snap ik. Een extra sensor is een extra regel. Maar zodra er een extra sensor is, moet ik in de tabel Measures toch nog steeds een kolom toevoegen? En dat is niet anders dan ik zou moeten doen bij mijn huidige opzet? Alleen heet de kolom dan bv SensorID 21 ipv Temperature_sensor_21. Of zie ik dit verkeerd?
 
- Ariën  -
Beheerder

- Ariën -

24/12/2014 15:32:10
Quote Anchor link
Je hoeft een enkel record toe te voegen met de sensornaam, waarna een while-loop deze sensor meteen meeneemt bij het loggen, en het scheelt weer een aanpassing aan je script per sensor.

Velden toevoegen voor extra sensoren is nergens voor nodig.
Gewijzigd op 24/12/2014 15:43:32 door - Ariën -
 



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.