Seneste forumindlæg
Køb / Salg
 * Uofficiel Black/White liste V2
Login / opret bruger

Forum \ Programmering og webdesign \ Programmering

ÆØÅ vises ikke fra PHP/MySQL database

Af Elitebruger pazia | 15-12-2019 14:28 | 1077 visninger | 10 svar, hop til seneste
Hej folkens Jeg har et mindre problem med min MySQL database, som ikke ønsker at vise ÆØÅ når data'en præsenteres via PHP. Tegnsæt (charset) for tabellen står til utf8_general_ci - jeg har forsøgt at ændre det til utf8_danish_ci, men den ønsker ikke at fremvise det korrekt alligevel. Bogstaverne bliver vist sådan her: ??? Jeg har forsøgt med Internet Explorer, Microsoft Edge, Google Chrome - som alle viser ??? Jeg har også forsøgt at ændre meta charset, som heller ikke påvirker det. Er jeg nødt til at slette databasen + tabellen og genoprette dem igen?
--
:o

--
Sidst redigeret 15-12-2019 14:28
#1
Dare_Devil
Supporter
15-12-2019 14:33

Rapporter til Admin
I første omgang kan du tilgå DBen via en standard client for at fastslå, om fejlen ligger i dataene eller i viewet. Er fejlen i data, må du lave DB forfra (på den rigtige måde). Er fejlen i viewet, hjælper det ikke noget at rode med DBen :)
--
#2
Ronson
HOL Moderator
15-12-2019 16:49

Rapporter til Admin
Men behandler du data som utf8 (i PHP) og vises de på en side med utf8 tegnsæt?
--
Klik her for evig lykke: http://chipsguiden.dk[...] Klik her for HOL Bladet: http://chipsguiden.dk[...]
#3
thecakei
Ny på siden
15-12-2019 18:55

Rapporter til Admin
Du skal blot sætte din database op til at gøre udfra UTF-8 ligesom Ronson siger, og derefter validere om tegnene skrives rigtigt i browseren hvis du echo'er dem ud; echo "ÆÅØ";
--
#4
sorenwp
Supporter
15-12-2019 19:03

Rapporter til Admin
Prøv kigge på denne :) https://www.w3schools.com[...]
--
#5
pazia
Elitebruger
15-12-2019 20:07

Rapporter til Admin
#2: Jeps, siden er indstillet med <meta charset="UTF-8"> #3: Der er ikke fejl, når jeg laver den klassiske <?php echo "æøå"; ?> #4: Tak for tippet. Det kigger jeg lige på. Jeg er efterhånden ved at tro, at jeg har lavet noget forkert ved oprettelsen af tabellen i databasen.
--
:o
#6
Ronson
HOL Moderator
15-12-2019 23:38

Rapporter til Admin
Du kan prøve denne på de data du henter ud af databasen https://www.php.net[...]
--
Klik her for evig lykke: http://chipsguiden.dk[...] Klik her for HOL Bladet: http://chipsguiden.dk[...]
#7
ZulfoDK
Supporter
16-12-2019 06:54

Rapporter til Admin
#0 Find først ud af om din database faktisk kører UTF8: SELECT default_character_set_name FROM information_schema.SCHEMATA S WHERE schema_name = "databasenavn"; Og for tabellerne: SELECT CCSA.character_set_name FROM information_schema.`TABLES` T,information_schema.`COLLATION_CHARACTER_SET_APPLICABILITY` CCSA WHERE CCSA.collation_name = T.table_collation AND T.table_schema = "databasenavn" AND T.table_name = "tabelnavn" Så kan du i hvert tilfælde konkludere om du har oprettet dem korrekt. Hvis det viser sig at de står forkert, kan du prøve med: ALTER DATABASE databasenavn CHARACTER SET utf8 COLLATE utf8_general_ci; Men det kan også være noget så simpelt som at du skal prøve at utf8_encode de strenge du indlæser fra databasen.
--
----------------- Lars B. / ZulfoDK
--
Sidst redigeret 16-12-2019 06:55
#8
pazia
Elitebruger
16-12-2019 20:56

Rapporter til Admin
Det hjalp simpelthen at smide mysqli_set_charset($con,"utf8"); kommandoen ind, som #4 foreslog. #7: Det prøver jeg lige senere, tak for tippet. Tak for hjælpen, drenge!
--
:o
#9
mclemme
Monsterbruger
17-12-2019 10:59

Rapporter til Admin
#8 Ved ikke om du får brug for at tekst også kan indeholde emojis, men hvis du gør, så tag et kig på https://dev.mysql.com[...] - Mener utf8mb4 er default i MySQL 8.x
--
https://randomx.jir.dk[...] - RandomX benchmarks
#10
inckie
Guru
17-12-2019 14:40

Rapporter til Admin
#8 Jeg vil anbefale dig at bruge et database abstraktionslag, typisk er den slags viden indarbejdet ind i koden, så man slipper for at tænke på det. Basalt set - bruger du "vanilla PHP", så der en masse ting du selv skal have styr på. https://github.com[...] er anbefalingsværdigt
--
https://twitter.com[...] https://linuxmint.com[...] - Få dit privatliv tilbage. https://cinnamon-spices.linuxmint.com[...]

Opret svar til indlægget: ÆØÅ vises ikke fra PHP/MySQL database

Grundet øget spam aktivitet fra udlandet, er det desværre ikke muligt for dig, at oprette svar som gæst.

Hvis du ønsker at deltage i debatten, skal du oprette en brugerprofil.

Opret bruger | Login
NYHEDSBREV
Afstemning