unicode karakters opslaan

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Digitale Tovenaar Gezocht: Junior Low-code/No-code

Bedrijfsomschrijving Duik mee in een wereld vol innovatieve avonturen waar gegevens en technologie een magische symbiose aangaan! Al meer dan twee decennia lang zijn we de tovenaars achter de schermen die oplossingen creëren voor de meest complexe klantcontactvraagstukken en datagedreven software-uitdagingen. Bij ons draait het om de kracht van samenwerking en groei. We zijn een hechte vriendengroep die samen bergen verzet om elkaar én onze klanten te laten schitteren. Jouw succes is ons succes en we streven ernaar om elkaar naar nieuwe hoogten te tillen, niet voor even, maar voor altijd. We willen dat jij je helemaal thuis voelt in

Bekijk vacature »

PHP Developer (junior functie)

Functie omschrijving 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 leesbaar is. Je maakt voor bedrijven op maat

Bekijk vacature »

Senior PHP Developer

As a Senior PHP Developer at Coolblue, you ensure that our webshops work as optimal as possible and you choach other colleagues on the hard and soft skills. How do I become a Senior PHP Developer at Coolblue? As a PHP Developer you work together with other development teams to make our webshop work as optimal as possible and to make our customers happy. Although you are a PHP Developer, you are not averse to a little TypeScript or other technologies that might be used. Would you also like to become a PHP Developer at Coolblue? Read below if the

Bekijk vacature »

Java developer (remote)

Functie Wat ga je doen als Java Developer? Jij als Java ontwikkelaar komt te werken in 1 van onze SCRUM teams. Momenteel werken er zo’n 30 ontwikkelaars binnen onze organisatie waarbij jij de brug slaat tussen het bouwen van verschillende functionaliteiten binnen onze applicaties en deze vervolgens te integreren in onze centrale hub. Je start je dag om 9 uur met een stand up en dan pak je jouw taken op voor de dag. Hieronder een aantal taken die jij zal uitvoeren: – Het bedenken en uitbouwen van features binnen de verschillende applicaties – Onderhouden van CI/CD pipelines – Bezighouden

Bekijk vacature »

C# .NET developer voor innovatieve applicaties gez

Bedrijfsomschrijving Deze werkgever houdt zich al ruim 20 jaar bezig met het ontwikkelen van innovatieve software en dat willen ze graag nog lang doorzetten. En dat merk je ook als je als .NET developer hier aan de slag gaat. De applicaties worden continu doorontwikkeld met altijd als uitgangspunt dat zowel de kwaliteit als het gebruikersgemak van hoog niveau is. Het bedrijf telt inmiddels ruim 25 medewerkers waarvan meer dan de helft op de development afdeling werken. Meer weten over deze werkgever? Mail naar [email protected] of bel 0657578548 Functieomschrijving Je komt te werken in een Scrum team met andere .NET developers

Bekijk vacature »

Medior/senior front end developer

Functie Vanwege de groei binnen het bedrijf zijn ze op zoek naar een Technische front end developer. Momenteel hun front end back end team gescheiden aan het werk. Hier willen ze verandering in krijgen. Omdat ook veel interne applicaties ontwikkeld worden zoeken ze iemand die hen kan helpen om de interne applicaties te voorzien van de juiste Vue.js componenten. Zodoende willen ze de interactie tussen front end en back end versoepelen en de volgende stap binnen het platform gaan zetten. Deze componenten die jij ontwikkeld zullen in elk project gebruikt worden. Het back end team bestaat momenteel uit 8 ontwikkelaars

Bekijk vacature »

Medior .NET Ontwikkelaar

In het kort Als .NET ontwikkelaar ga je binnen onze business unit Transport en Logistiek aan de slag complexe maatwerk software voor bedrijf kritische systemen binnen de technische automatisering. Denk bijvoorbeeld een IoT-oplossing voor de logistieke sector waarbij we van ruim 200.000 machines de telemetrie en events verwerken. We zijn actief in de distributielogistiek, havenlogistiek en productielogistiek. Naast C# en .NET Core maken we ook gebruik van Azure technologie. En als trotse Microsoft Gold Partner leren we graag van en met jou. Wil jij jezelf blijven ontwikkelen binnen de technische automatisering met .NET, dan gaan we deze uitdaging graag met

Bekijk vacature »

Medior Mobile Developer iOS Amsterdam

Functie What will you be doing as Mobile Developer? As an iOS app developer you will work in a multidisciplinary team of app developers, web developers and designers. You will work on world-class apps that will be used by thousands of people. There is a lot of room for self-development on a technical and personal level. Together with the rest of the team you develop in the newest techniques and you go for the best quality. We work with Kotlin Multiplatform Mobile to develop hybrid apps and we guarantee quality with peer reviews, unit testing and we use a CI/CD.

Bekijk vacature »

Back-end Developer Java

Dit ga je doen Het (door)ontwikkelen van een zelfgebouwde applicatie in Java, Spring Framework, SQL, HTML, CSS en Javascript; End-to-end beheer m.b.t. de applicatie en koppelen van applicaties binnen het landschap; Ontwikkelen van rapportages voor de interne organisatie; Ontwikkelen van aanvullende functionaliteiten m.b.t. de applicatie; Uitvoeren van testen en code reviews. Hier ga je werken Binnen deze organisatie kom je te werken op de afdeling die medische gegevens verzamelt vanuit het hele land. Denk hierbij aan vertrouwelijke persoonsgegevens. Het team verwerkt al deze data met als doel het waarborgen en verbeteren van de kwaliteit van de zorg in heel Nederland.

Bekijk vacature »

Junior .NET developer

Functie Als junior .NET Developer start jij in een team met 15 developers. In het team is er genoeg senioriteit om ervoor te zorgen dat jij de juiste begeleiding krijgt. Jij begint als eerst alle software pakketten en processen eigen te maken. Vervolgens ga jij deze software programmeren, onderhouden en testen. Ook ga jij research doen naar nieuwe mogelijkheden en zoek jij uit hoe je dit kan implementeren. Jullie werken intern op project basis en afhankelijk van het project werken jullie wel of niet iedere ochtend met een standup. Je gaat als Full stack developer aan de slag en gaat

Bekijk vacature »

Low Code Developer - Consultant

Functie omschrijving Wil jij fungeren als een spin in het web en samenwerken met klanten? Voor een leuke en interessante opdrachtgever in omgeving Leiden zijn wij op zoek naar een Low Code developer die zich bezig gaat houden met het optimaliseren van bedrijfsprocessen bij klanten en het leiden van projecten. Ben jij toe aan een nieuwe uitdaging en heb jij verstand van datamodellering en NO CODE Platformen? Lees dan snel verder! Bij deze rol horen de volgende werkzaamheden: Je gaat geen code kloppen maar bedenken hoe applicaties eruit moet komen te zien. Je gaat werken met een non code platform,

Bekijk vacature »

Front-End Developer

Als Front-End Developer bij Coolblue verbeter je de gebruiksvriendelijkheid van onze webshop voor miljoenen klanten. Wat doe je als Front-End Developer bij Coolblue? Als Front-end Developer werk je aan de gebruiksvriendelijkheid van onze webshop voor miljoenen klanten. Je vindt het leuk om samen te werken met de UX designer om stories op te pakken. Je krijgt energie van het bedenken van creatieve oplossingen en presenteert dit graag binnen het team. Daarnaast ben je trots op je werk en verwelkomt alle feedback. Ook Front-end Developer worden bij Coolblue? Lees hieronder of het bij je past. Dit vind je leuk om te

Bekijk vacature »

Frontend Developer Vue Nuxt HBO Javascript

Samengevat: Deze werkgever levert elke dag betere digitale gebruikerservaringen. Ben jij geschikt als frontend Developer? Heb je ervaring met Vue en Nuxt? Vaste baan: Front-End Developer HBO €3.100 - €4.600 Zij bieden opdrachtgevers een complete dienstverlening op gebied van ontwerpen en ontwikkelen van websites, zoekmachine optimalisatie, online adverteren, content marketing en conversie verbetering. Zij werken met een eigen ontwikkeld CMS. Bij bij hun werk je aan onze eigen bedrijfsapplicaties. Je ontwikkelt met ons de meest nieuwe software. Wij blinken uit als het gaat om de inzet van technologie. Deze werkgever staat open voor elke nieuwe trend. Onze systemen zijn groot

Bekijk vacature »

Dynamics Ontwikkelaar

Dit ga je doen Ontwikkelen van Dynamics 365 voor de interne uitrol; Samen met de consultants sparren met klanten over de wensen en eisen; Ontwikkelen van Dynamics 365 voor verschillende grote klanten; Technische analyse en testen; Meedenken over het gebruik en de richting van Dynamics binnen de organisatie. Hier ga je werken Onze opdrachtgever, gevestigd in regio Eindhoven, levert een compleet dienstenpakket op het gebied van IT. Zij pakken verschillende (complexe) vraagstukken van grote organisaties op. De sfeer intern is gezellig en informeel. Men houdt van hard werken maar gezelligheid door middel van een borrel of gezamenlijke lunch komt er

Bekijk vacature »

Machine Software Developer

Bij een bedrijf in de machinebouw, regio Roosendaal, zijn we op zoek naar een: Machine Software Developer Waar ga je werken? Onze opdrachtgever is gespecialiseerd in de grondverzetmachines. Al meer dan 50 jaar leveren ze zowel nationaal als internationaal diverse machines. Het is een familiebedrijf met een informele werksfeer. Wat ga je doen? Als Machine Software Developer ben je verantwoordelijk voor: - Je ontwerpt, ontwikkelt en debugt software voor machinebesturingssystemen en complexe landbouwmachines; - Je stelt gebruikersinterfaces op (cabinedisplays); - Op termijn ga je softwareprojecten leiden voor specifieke machines; - Inclusief planning, documentatie en validatie; - Om specificaties te verifiëren

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

26/02/2024 12:42:00
 
- 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.