unicode karakters opslaan

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

KPN - Backend Developer - Product Master (Freelanc

Must: Scala and Akka Senior positon Start date: ZSM End date: 01-07-2023 Max hourly rate: 79,25€ Your job as a Backend Developer Many KPN employees in all different types of processes rely on accurate and complete product data. The product master will be a new master data management implementation within KPN for the business market. It supports the goals of KPN to become the best service provider, simplification in processes and IT, digitalization and most of all to become a data driven organization. The essence is to have a single master platform that embodies all the needed product data in

Bekijk vacature »

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 »

Junior Backend developer

Functie Binnen de organisatie bestaan er developer teams bestaande uit totaal 11 man. De verdeling van deze teams is opgebouwd tussen de backend en de frontend. Op dit moment zijn we op zoek naar een backend-developer die ons team kan komen versterken. Dit door de toename van opdrachtgevers. Je gaat je bezig houden met het koppelen van API’s, toevoegen van nieuwe features en het onderhouden van de huidige software. Je komt terecht in een klein multidisciplinair team. Hierbij zetten ze in op de nieuwste cloud technieken. De techstack waar ze mee werken is: PHP, Symfony, Kafka, Redis, MySQL, Elastic search.

Bekijk vacature »

PHP Developer

Dit ga je doen Professionaliseren van het plaform Bouwen aan mooie innovaties Testen van het plaform Werken in een Scrumteam Hier ga je werken Je komt als PHP ontwikkelaar te werken in een jonge, innovatieve én snel groeiende scale-up die een gespecialiseerde verkoopplatform heeft opgebouwd. De organisatie is in eerste instantie begonnen in de bouw. Het moederbedrijf bestaat nog steeds en heeft nu ruim 300 medewerkers. De organisatie waarvoor je komt te werken heeft nu 20 man in dienst, waarvan 8 man in het IT-team. Zij zoeken versterking in het IT-team, omdat ze de ambitie hebben om steeds meer te

Bekijk vacature »

Randstad - Fullstack Java Developer (Freelance/ZZP

Start date: ASAP Duration: 1 year initially Hours per week: 40 (32 minimum) Dutch is mandatory Max hourly rate: 85€ Strong communicator There is a vacancy in the Corporate Client Solutions (CCS) team. This team works closely together with the Online Client Solutions (OCS) team and the product owner on the client portal. Through the web portal, the various services from the business are delivered to the clients of Randstad Group Netherlands. CCS works for the corporate customers of Randstad and OCS works for customers in the SME segment. Both teams consist of a number of full stack developers, an

Bekijk vacature »

Senior Robotics Developer (Freelance/ZZP)

Duur opdracht: 12 mnd (met optie tot verlenging) We zoeken senior profielen. Die junioren kan bijscholen op de technische skills. Wordt 1x per week op kantoor (Eindhoven) gewerkt. Voertaal is Nederlands & Engels. Start datum: ZSM Max tarief: 74€ Wij zijn ter versterking van het RPA team van Operations Financieren per direct op zoek naar een RPA Engineer die ons kan helpen bij de ontwikkeling van de robots. Bij voorkeur kennis van cq. ervaring met Kofax Kapow en ervaring met het werken in grote organisaties met complexe systemen. Het RPA Team team zorgt voor de verdere optimalisatie van de processen

Bekijk vacature »

Software Developer / TypeScript / React / Big Data

Dit ga je doen Software development met technieken als TypeScript en React; Meedenken over architectuur en technisch ontwerp; Nieuwe features en flows uitwerken; Nieuwe mogelijkheden onderzoeken; Ondersteunen van junior collega's; Code reviews en bugfixing; Eigen ontwikkeling: waar ligt jouw interesse en waar wil je in groeien? Hier ga je werken Bij dit grote, innovatieve technische bedrijf wil men graag flink groeien dit jaar, namelijk van zo'n 100 naar 120 mensen. In de afgelopen jaren is er hard gewerkt om een nieuw software product op de markt te zetten ter ondersteuning van hun fysieke producten en omdat dit een groot succes

Bekijk vacature »

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 »

Wolters Kluwer - PHP Developer (Freelance/ZZP)

Voorstellen met CV en korte toelichting 2 dagen naar kantoor (di + do) Ontwikkelen van producten van Schulinck. Product: https://gripop.schulinck.nl/ Startdatum: ZSM Max tarief: 90€ per uur Procedure: Gesprek en test: code en analyse (oplossingsvermogen). Periode is tenminste 6 maanden met optie op verlenging Fullstack PHP Developer Ben jij een ervaren Fullstack PHP Developer die op zoek is naar een nieuwe uitdaging? Vind je het belangrijk om werk te doen waarmee je het verschil maakt in de maatschappij? En wil je onderdeel worden van ons ervaren IT-team? Lees dan snel verder! Schulinck, onderdeel van Wolters Kluwer Schulinck (onderdeel van Wolters

Bekijk vacature »

Senior Robotics Developer (Freelance/ZZP)

Duur opdracht: 12 mnd (met optie tot verlenging) We zoeken senior profielen. Die junioren kan bijscholen op de technische skills. Wordt 1x per week op kantoor (Eindhoven) gewerkt. Voertaal is Nederlands & Engels. Start datum: ZSM Max tarief: 74€ Wij zijn ter versterking van het RPA team van Operations Financieren per direct op zoek naar een RPA Engineer die ons kan helpen bij de ontwikkeling van de robots. Bij voorkeur kennis van cq. ervaring met Kofax Kapow en ervaring met het werken in grote organisaties met complexe systemen. Het RPA Team team zorgt voor de verdere optimalisatie van de processen

Bekijk vacature »

Randstad - Salesforce Developer (Freelance/ZZP)

Startdate: ASAP As part of our strategy, Randstad is strengthening its digital capabilities and strives to work more closely with the 38 Randstad countries in collective leadership. The program that will bring many of these developments together is Connect IT. The program will start with the implementation in the Netherlands and will become the main platform for all operating companies (opcos) of Randstad in the coming years. The platform is synchronized with omnichannel, data, marketing and IT service solutions and is based on Salesforce and Bullhorn technology. The challenge is to keep all roadmaps and priorities aligned as the core

Bekijk vacature »

C# .Net Developer

Dit ga je doen Het bouwen van Api's; Nieuwe oplossingen bouwen; De huidige software uitbouwen; Meewerken in projecten; Meedenken aan de toekomstplannen en verbeteringen; Onderdeel van het Scrum Team. Hier ga je werken Onze klant is een dienstverlenende organisatie voor diverse soorten organisaties in Nederland. Ze zijn van oorsprong een familiebedrijf en er is een open cultuur. Ze zijn vooruitstrevend op IT gebied en hebben een eigen inhouse development team van circa 11 man. Je komt hier te werken in het subteam .Net Core. Hier werken ze volgens scrum met de nieuwste technieken en zijn ze ver met development. Bij

Bekijk vacature »

Senior Robotics Developer (Freelance/ZZP)

Duur opdracht: 12 mnd (met optie tot verlenging) We zoeken senior profielen. Die junioren kan bijscholen op de technische skills. Wordt 1x per week op kantoor (Eindhoven) gewerkt. Voertaal is Nederlands & Engels. Start datum: ZSM Max tarief: 74€ Wij zijn ter versterking van het RPA team van Operations Financieren per direct op zoek naar een RPA Engineer die ons kan helpen bij de ontwikkeling van de robots. Bij voorkeur kennis van cq. ervaring met Kofax Kapow en ervaring met het werken in grote organisaties met complexe systemen. Het RPA Team team zorgt voor de verdere optimalisatie van de processen

Bekijk vacature »

Integratie Developer / Architect

Dit ga je doen Als Integratie Developer / Architect binnen deze organisatie krijg je echt de kans om impact te maken. De organisatie is groeiende maar houdt een corporate cultuur buiten de deur. Heb je een goede business case: zorg voor goede argumentatie en ga ervoor! Geen stroperig beslissingsproces dat jouw ideeën in de weg staat! Enkele van jouw taken: Je ontwerpt en ontwikkelt nieuwe integraties met behulp van interne tools (Boomi) of externe partners; Je vertaalt functionele specificaties naar technische oplossingen; Je denkt mee over strategische ontwikkelingen op het gebied van applicatie integratie; Je voert regie op leveranciers en

Bekijk vacature »

Senior Robotics Developer (Freelance/ZZP)

Duur opdracht: 12 mnd (met optie tot verlenging) We zoeken senior profielen. Die junioren kan bijscholen op de technische skills. Wordt 1x per week op kantoor (Eindhoven) gewerkt. Voertaal is Nederlands & Engels. Start datum: ZSM Max tarief: 74€ Wij zijn ter versterking van het RPA team van Operations Financieren per direct op zoek naar een RPA Engineer die ons kan helpen bij de ontwikkeling van de robots. Bij voorkeur kennis van cq. ervaring met Kofax Kapow en ervaring met het werken in grote organisaties met complexe systemen. Het RPA Team team zorgt voor de verdere optimalisatie van de processen

Bekijk vacature »
Jan R

Jan R

18/10/2021 11:48:37
Quote Anchor link
Hi

Ik probeer unicode karaters op te slaan zoals (als ik hier tekens toon wordt het bericht afgekapt:))

in de header staat <meta charset="utf-8">
Ik gebruik <form accept-charset="utf-8">
Ik heb de tabel en veld aangepast naar utf8mb4
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
ALTER TABLE trn_gamecomments CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE trn_gamecomments CHANGE `comment` `comment` TEXT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL;

De gegevens komen juist aan. Ik zie ze bij een print_r($_POST)
In de database staan ze juist (phpMyAdmin) maar na opvragen krijg ik ?

Jan
Gewijzigd op 18/10/2021 11:53:11 door Jan R
 
PHP hulp

PHP hulp

19/08/2022 01:30:03
 
- Ariën  -
Beheerder

- Ariën -

18/10/2021 11:55:16
Quote Anchor link
Ook al een UTF-8 header in PHP geplaatst?
 
Jan R

Jan R

18/10/2021 11:57:06
Quote Anchor link
wordt automatsch toegevoegd via htaccess: AddDefaultCharset utf-8

Toevoeging op 18/10/2021 12:00:35:

Gewoon voor de zekerheid nog eens in het phpscript geplaatst
header('Content-Type: text/html; charset=utf-8');
 
Ozzie PHP

Ozzie PHP

18/10/2021 13:15:17
Quote Anchor link
Jan R op 18/10/2021 11:57:06:
Gewoon voor de zekerheid nog eens in het phpscript geplaatst
header('Content-Type: text/html; charset=utf-8');

Wel handig als je dan ook even aangeeft of er iets is gewijzigd ... we hebben namelijk geen glazen bol ;)
 
Jan R

Jan R

18/10/2021 14:41:55
Quote Anchor link
Blijkbaar niet anders had ik wel iets gezegd zoals opgelost. Niet dus.
 
Ozzie PHP

Ozzie PHP

18/10/2021 14:53:58
Quote Anchor link
Jan R op 18/10/2021 14:41:55:
... anders had ik wel iets gezegd zoals opgelost ...

Wat jij zou hebben gezegd kunnen we uiteraard niet raden ;-)

Maar goed, nog niet opgelost dus. Dan is dat in ieder geval duidelijk.
 
Ad Fundum

Ad Fundum

18/10/2021 20:08:31
Quote Anchor link
Heb je de tut al snel gescand op mogelijke issues? Bijvoorbeeld heb je de mysqli client (in PHP) in UTF8 gezet?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
$db
= new mysqli($host, $account, $password, $database);
$db->set_charset('utf8mb4');
?>

Sorry voor deze be'tut'eling ;-)
Gewijzigd op 18/10/2021 20:09:24 door Ad Fundum
 
- Ariën  -
Beheerder

- Ariën -

18/10/2021 20:46:27
Quote Anchor link
Vergeet ook zeker niet deze tutorial van Thomas van den Heuvel.

http://fangorn.thijma.nl/news/latin1-vs-utf8

Waar is hij eigenlijk?
 
Jan R

Jan R

19/10/2021 06:02:57
Quote Anchor link
Ad Fundum op 18/10/2021 20:08:31:
Heb je de tut al snel gescand op mogelijke issues? Bijvoorbeeld heb je de mysqli client (in PHP) in UTF8 gezet?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
$db
= new mysqli($host, $account, $password, $database);
$db->set_charset('utf8mb4');
?>

Ook niet gelukt. Zelfs de totale db omgezet naar utf8mb4 hielp niet. Toch zou het mogelijk moeten zijn want staat juist in phpMyAdmin

Toevoeging op 19/10/2021 06:09:09:

Bij de export van phpMyAdmin staat alles OK
https://www.janr.be/sql/sql.sql
Na de import nog steeds OK in phpMyAdmin

Toevoeging op 19/10/2021 06:23:44:

Extra info:
Mijn data komt van 4 tabellen waarvan 1 dubbel dus 5.
Als ik enkel de tabel met smileys opvraag dan krijg ik per smiley 3 ruitjes met een vraagteken
Gewijzigd op 19/10/2021 07:00:25 door Jan R
 
Ad Fundum

Ad Fundum

19/10/2021 09:20:50
Quote Anchor link
Als ik maar 1 voorbeeld noem hoeft je dat natuurlijk niet te weerhouden de rest van de tutorial te lezen.
Want die is sluitend, als je alles volgt heb je geen problemen met die vraagtekens.
Dus dan nog een andere 'educated guess': snapt je browser dat-ie UTF-8 ontvangt? Die meta tag is alleen handig voor HTML-bestanden die op zichzelf staan. Als je ze via een webserver aanbiedt dan kan je beter de goede HTTP header meegeven.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
header('Content-Type: text/html; charset=utf-8'); /** @link http://www.w3.org/International/O-HTTP-charset */
?>

Controleer ook of je webserver niet stiekum een andere encoding meestuurt, bijvoorbeeld via de developertools in de browser (F12).

Toevoeging op 19/10/2021 09:25:32:

- Ariën - op 18/10/2021 20:46:27:
Waar is hij eigenlijk?

Hij doet het rustiger aan nadat hij hier onjuiste dingen ging beweringen.
Zo heel af en toe heb ik nog wel een post van Thomas gezien.
 
Adoptive Solution

Adoptive Solution

19/10/2021 10:12:16
Quote Anchor link
Zonder base64 zoals hieronder beschreven, krijg ik ? te zien ipv emojis.

Bewaar je comment voortaan als base64 en decode het weer in PHP
Met gebruik van je demo database, voer deze queries uit

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
UPDATE trn_gamecomments SET comment = TO_BASE64(comment);
SELECT * FROM trn_gamecomments;
SELECT *, FROM_BASE64(comment) FROM trn_gamecomments;


Database ziet er dan zo uit :

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
-- Adminer 4.8.1 MySQL 5.5.5-10.3.29-MariaDB dump

SET NAMES utf8;
SET time_zone = '+00:00';
SET foreign_key_checks = 0;
SET sql_mode = 'NO_AUTO_VALUE_ON_ZERO';

SET NAMES utf8mb4;

DROP TABLE IF EXISTS `trn_gamecomments`;
CREATE TABLE `trn_gamecomments` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `gameid` int(11) NOT NULL,
  `w_b` enum('white','black') COLLATE utf8mb4_unicode_ci NOT NULL,
  `comment` text COLLATE utf8mb4_unicode_ci NOT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `gameid` (`gameid`,`w_b`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

INSERT INTO `trn_gamecomments` (`id`, `gameid`, `w_b`, `comment`) VALUES
(1,    4145,    'white',    'V2l0'),
(2,    4145,    'black',    'WndhcnQ='),
(38,    3876,    'black',    'TWlqbiB2ZXJzbGFnIG1ldCBbYl1ib2xkWy9iXSBlbiBbaV1pdGFsaWNbL2ldIGthcmFrdGVycw0K\nOikgOnAgOigNCvCfmJgJ8J+YmQnwn5iaCfCfmJsJ8J+YnAnwn5idCfCfmJ4J8J+Ynw==');

-- 2021-10-19 07:57:27


Dan in HTML/PHP :

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
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>Emojis uit database</title>
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
</head>
<body>
<?php
$db
= new mysqli(localhost, 'user', 'password', 'database');
$query = 'SELECT * FROM trn_gamecomments WHERE id = 38;';
$result = $db->query($query);
$row = $result->fetch_object();
echo '<pre>' . print_r( $row, TRUE ) . '</pre>';
echo $row->comment . '<br />';
echo base64_decode($row->comment);
?>

</body>
</html>


Bij een INSERT doe je in PHP base64_encode($comment)
Gewijzigd op 19/10/2021 10:28:10 door Adoptive Solution
 
Jan R

Jan R

19/10/2021 11:08:47
Quote Anchor link
Werkt perfect. Bedankt.
Wel nog een stripslashes toegevoegd. Je weet maar nooit :)

utf8mb4 is dan ook niet meer nodig en utf8_unicode_ci kan dus blijven. tenzij er een reden is om over te stappen naar utf8mb4?

Voor mij was de tabel update niet nodig. Die 3 testlijntjes kan ik wel opnieuw schrijven en in productie kent niemand deze functie. Nog niet:)

Jan
 
- Ariën  -
Beheerder

- Ariën -

19/10/2021 11:37:04
Quote Anchor link
Utfmb8 heeft ondersteuning voor emoji's.
Waarom zou je die aan de kant willen zetten?
 
Jan R

Jan R

19/10/2021 11:39:23
Quote Anchor link
Omdat base64 deze gecodeerd heeft en nog maar uitsluitend 6 bits gebruikt als ik het juist begrepen heb.

PS je moet zelf eens testen op phphulp om een bericht MET eomji's te posten
 
Ad Fundum

Ad Fundum

20/10/2021 11:57:29
Quote Anchor link
Weet je wat zo leuk is van base64 encoderen? Je hebt niet eens meer Latin1 nodig! Super handig!
Je weet altijd waar je aan toe bent met CHAR, geen lastige lengtes meer, je maakt alles gewoon ASCII.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
CREATE TABLE t1 (
  c1 CHAR(1) CHARACTER SET ascii
);

En als je zeker wilt weten dat al die geinige lachebekjes doorkomen op je browser, doe je eenvoudig base64_encode(htmlentities($emoji)) voordat je het opslaat, succes gegarandeerd.

En het allermooiste is: met slechts twee functies en ASCII kan je echt alles, je hoeft geen enkele tutorial te lezen. Simpeler kan het niet.
 



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.