Hoe kan ik ervoor zorgen dat 0356 als 0356 wordt opgeslagen en niet 356 zoals hij dit nu automatisch doet?
cijfers behoor je op te slaan in een int, dat doe je denk ik nu ook al. En in een int verdwijnen die nullen inderdaad.
Ovestappen naar een ander veldtype helpt wel, maar raad ik niet aan aangezien dat niet echt de bedoeling is en je de voordelen van het int veld ook niet hebt.

ik denk dat je aan de gang moet met een zelfgemaakte functie waar je je getallen door haalt die er automatisch een 0 voor zet alvorens het te echoën.
in principe ga ik niet rekenen met de waardes dan zou ik er in principe toch gewoon een varchar van kunnen maken?
Ja dat kan zeker, dan blijft die 0 wel staan omdat alles dan als tekst gezien wordt.
waarom wil je die 0 er voor hebben?

Je kunt ook gewoon bij het uit de database halen de string lengte bekijken, die van 4 aftrekken en dat aantal nullen ervoor plakken.
Die 0 is presentatie en presentatie sla je niet op in de database. Gebruik de php-functie number_format() om er voorloopnuller bij te zetten.

En een getal sla je nooit op als een stuk tekst, het is tenslotte geen tekst maar een getal. Ongeacht of je nu denkt dat je hier nooit mee gaat rekenen of niet. Wanneer het tekst is, kun je er bijvoorbeeld ook niet meer op sorteren.

Reageren