いくつかの html コードを mysql データベースに挿入しようとすると、å、ä、または ö (スウェーデン文字) が最初に出現したところでテキストが切り取られます。なぜこれが起こるのかわかりません。
以下を実行して、mysql 接続が UTF-8 用に設定されていることを確認します。
if(!mysql_set_charset('utf8', $link)) die(mysql_error());
$result = mysql_query("set names 'utf8'");
私のphpドキュメントはすべてUTF-8でコーディングされています。文字列に対して mb_detect_encoding() を実行すると、「UTF-8」が返されました。私のデータベースにはデフォルトのエンコーディングとして UTF-8 があり、私のテーブルは照合で utf8_swedish_ci です (私も utf8_unicode_ci を試しました)。
mysql はエラーを返しません。私のテーブルでは、挿入された文字列の 0 からスウェーデン文字の最初の出現までの部分を取得します。
私の挿入機能:
function mysql_insert($table, $inserts) {
$values = array_map('mysql_real_escape_string', array_values($inserts));
$keys = array_keys($inserts);
return mysql_query('INSERT INTO `'.$table.'` (`'.implode('`,`', $keys).'`) VALUES (\''.implode('\',\'', $values).'\')');
}
スウェーデン語の文字を削除すると、文字列全体が正しく挿入されます。
なぜこうなった?
アップデート:
@david berra: クエリは非常に長いですが、ここに投稿しました。
INSERT
INTO `content`
(
`text`,
`added`,
`updated`,
`ref`,
`headers`,
`ID`,
`groups`
)
VALUES
(
'\r\n<div style=\"width: 1078.1568px;height: 785.8944px;\">\r\n <div style=\"vertical-align: top;position: absolute;z-index: -244;left: 1px;top: 0px;width: 1075px;height: 29px;\" id=\"page1block0\" class=\"building_block\">\r\n <p>\r\n <span>\r\n Sida\r\n </span>\r\n <span>\r\n 1\r\n </span>\r\n <span>\r\n . Copyright Erik Boberg\r\n </span>\r\n </p>\r\n </div>\r\n <div style=\"vertical-align: top;position: absolute;z-index: 6;left: 0px;top: 7px;width: 1075px;height: 34px;\" id=\"page1block1\" class=\"building_block\">\r\n <h1 style=\"text-align: center;\">\r\n <span>\r\n Hjärtmuskelischemi\r\n </span>\r\n <a name=\"Hjrtmuskelischemi\"></a>\r\n </h1>\r\n </div>\r\n <div style=\"position: absolute;z-index: 8;left: 153px;top: 120px;width: 443px;height: 252px;\" id=\"page1block2\" class=\"building_block\">\r\n <img width=443 height=252 src=\"images/akuta_coronara_syndrom/image298.png\" />\r\n </div>\r\n <div style=\"position: absolute;z-index: 9;left: 116px;top: 113px;width: 192px;height: 62px;\" id=\"page1block3\" class=\"building_block\">\r\n <img width=192 height=62 src=\"images/akuta_coronara_syndrom/image299.png\" />\r\n </div>\r\n <div style=\"position: absolute;z-index: 10;left: 288px;top: 165px;width: 154px;height: 106px;\" id=\"page1block4\" class=\"building_block\">\r\n <img width=154 height=106 src=\"images/akuta_coronara_syndrom/image300.png\" />\r\n </div>\r\n <div style=\"position: absolute;z-index: 11;left: 227px;top: 267px;width: 72px;height: 73px;\" id=\"page1block5\" class=\"building_block\">\r\n <img width=72 height=73 src=\"images/akuta_coronara_syndrom/image304.png\" />\r\n </div>\r\n <div style=\"position: absolute;z-index: 12;left: 417px;top: 225px;width: 69px;height: 73px;\" id=\"page1block6\" class=\"building_block\">\r\n <img width=69 height=73 src=\"images/akuta_coronara_syndrom/image308.png\" />\r\n </div>\r\n <div style=\"position: absolute;z-index: 13;left: 437px;top: 171px;width: 69px;height: 72px;\" id=\"page1block7\" class=\"building_block\">\r\n <img width=69 height=72 src=\"images/akuta_coronara_syndrom/image312.png\" />\r\n </div>\r\n <div style=\"vertical-align: top;position: absolute;z-index: 14;left: 120px;top: 39px;width: 216px;height: 71px;\" id=\"page1block8\" class=\"building_block\">\r\n <p class=Brödtext>\r\n <span style=\"font-weight: bold;\">\r\n Kranskärl (stora epikardiella artärer)<br />\r\n </span>\r\n <span>\r\n - Utgör ej någon signifikant källa till flödesresistens sålänge de ej ockluderats av aterosklerotiska plack.\r\n </span>\r\n </p>\r\n </div>\r\n <div style=\"vertical-align: top;position: absolute;z-index: 15;left: 340px;top: 40px;width: 251px;height: 126px;\" id=\"page1block9\" class=\"building_block\">\r\n <p class=Brödtext>\r\n <span style=\"font-weight: bold;\">\r\n Prearteriolära kärl samt Arterioler och intramyokardiella kapillärer<br />\r\n </span>\r\n <span>\r\n - Utgör huvudsakliga resistensen till flödet i hjärtats cirkulation hos den friska individen.<br />\r\n - De kan dilateras som svar på metabola stimuli och autoreglering vid ökat syrebehov och kan på så sätt kraftigt minska sin resistens och därmed öka blodflödet till den behövande hjärtmuskeln.\r\n </span>\r\n </p>\r\n </div>\r\n <div style=\"position: absolute;z-index: 16;left: 185px;top: 116px;width: 42px;height: 12px;\" id=\"page1block10\" class=\"building_block\">\r\n <img width=42 height=12 src=\"images/akuta_coronara_syndrom/image318.png\" />\r\n </div>\r\n <div style=\"position: absolute;z-index: 17;left: 237px;top: 219px;width: 144px;height: 153px;\" id=\"page1block11\" class=\"building_block\">\r\n <img width=144 height=153 src=\"images/akuta_coronara_syndrom/image319.png\" alt=\"Text Box: \" />\r\n </div>\r\n <div style=\"position: absolute;z-index: 18;left: 202px;top: 122px;width: 68px;height: 101px;\" id=\"page1block12\" class=\"building_block\">\r\n <img width=68 height=101 src=\"images/akuta_coronara_syndrom/image320.png\" />\r\n </div>\r\n <div style=\"position: absolute;z-index: 19;left: 119px;top: 219px;width: 118px;height: 68px;\" id=\"page1block13\" class=\"building_block\">\r\n <img width=118 height=68 src=\"images/akuta_coronara_syndrom/image321.png\" alt=\"Text Box: \" />\r\n </div>\r\n <div style=\"position: absolute;z-index: 20;left: 114px;top: 121px;width: 27px;height: 100px;\" id=\"page1block14\" class=\"building_block\">\r\n <img width=27 height=100 src=\"images/akuta_coronara_syndrom/image322.png\" />\r\n </div>\r\n <div style=\"position: absolute;z-index: 21;left: 392px;top: 220px;width: 191px;height: 169px;\" id=\"page1block15\" class=\"building_block\">\r\n <img width=191 height=169 src=\"images/akuta_coronara_syndrom/image323.png\" alt=\"Text Box: \" />\r\n </div>\r\n <div style=\"position: absolute;z-index: 22;left: 42px;top: 93px;width: 73px;height: 59px;\" id=\"page1block16\" class=\"building_block\">\r\n <img width=73 height=59 src=\"images/akuta_coronara_syndrom/image324.png\" />\r\n </div>\r\n <div style=\"position: absolute;z-index: 23;left: 0px;top: 136px;width: 121px;height: 231px;\" id=\"page1block17\" class=\"building_block\">\r\n <img width=121 height=231 src=\"images/akuta_coronara_syndrom/image325.png\" alt=\"Text Box: \" />\r\n </div>\r\n <div style=\"position: absolute;z-index: 24;left: 871px;top: 44px;width: 119px;height: 115px;\" id=\"page1block18\" class=\"building_block\">\r\n <img width=119 height=115 src=\"images/akuta_coronara_syndrom/image326.png\" />\r\n </div>\r\n <div style=\"position: absolute;z-index: 25;left: 604px;top: 44px;width: 119px;height: 115px;\" id=\"page1block19\" class=\"building_block\">\r\n <img width=119 height=115 src=\"images/akuta_coronara_syndrom/image333.png\" />\r\n </div>\r\n <div style=\"position: absolute;z-index: 26;left: 604px;top: 200px;width: 120px;height: 115px;\" id=\"page1block20\" class=\"building_block\">\r\n <img width=120 height=115 src=\"images/akuta_coronara_syndrom/image337.png\" />\r\n </div>\r\n <div style=\"position: absolute;z-index: 27;left: 653px;top: 168px;width: 26px;height: 26px;\" id=\"page1block21\" class=\"building_block\">\r\n <img width=26 height=26 src=\"images/akuta_coronara_syndrom/image343.png\" />\r\n </div>\r\n <div style=\"position: absolute;z-index: 28;left: 733px;top: 251px;width: 126px;height: 24px;\" id=\"page1block22\" class=\"building_block\">\r\n <img width=126 height=24 src=\"images/akuta_coronara_syndrom/image344.png\" />\r\n </div>\r\n <div style=\"vertical-align: top;position: absolute;z-index: 29;left: 743px;top: 34px;width: 109px;height: 72px;\" id=\"page1block23\" class=\"building_block\">\r\n <p class=Brödtext>\r\n <span style=\"font-weight: bold;\">\r\n Lipid-ackumulering i intima:\r\n </span>\r\n <span>\r\n Börjar under första 10 levnadsåren\r\n </span>\r\n </p>\r\n </div>\r\n <div style=\"vertical-align: top;position: absolute;z-index: 30;left: 710px;top: 175px;width: 172px;height: 69px;\" id=\"page1block24\" class=\"building_block\">\r\n <p style=\"text-align: center;\" class=Brödtext>\r\n <span style=\"font-weight: bold;\">\r\n Inducering av inflammation, aktivering av SMCs:\r\n </span>\r\n <span>\r\n Ger bildning av aterosklerotiska plack. Börjar efter 30 års ålder.\r\n </span>\r\n </p>\r\n </div>\r\n <div style=\"position: absolute;z-index: 31;left: 868px;top: 199px;width: 120px;height: 115px;\" id=\"page1block25\" class=\"building_block\">\r\n <img width=120 height=115 src=\"images/akuta_coronara_syndrom/image347.png\" />\r\n </div>\r\n <div style=\"position: absolute;z-index: 32;left: 913px;top: 167px;width: 26px;height: 26px;\" id=\"page1block26\" class=\"building_block\">\r\n <img width=26 height=26 src=\"images/akuta_coronara_syndrom/image353.png\" />\r\n </div>\r\n <div style=\"vertical-align: top;position: absolute;z-index: 33;left: 977px;top: 137px;width: 97px;height: 104px;\" id=\"page1block27\" class=\"building_block\">\r\n <p class=Brödtext>\r\n <span style=\"font-weight: bold;\">\r\n Fissurbildning eller ruptur med efterföljande trombos:\r\n </span>\r\n <span>\r\n Sker vanligen efter 40 års ålder.\r\n </span>\r\n </p>\r\n </div>\r\n <div style=\"position: absolute;z-index: 34;left: 662px;top: 70px;width: 79px;height: 115px;\" id=\"page1block28\" class=\"building_block\">\r\n <img width=79 height=115 src=\"images/akuta_coronara_syndrom/image355.png\" />\r\n </div>\r\n <div style=\"vertical-align: top;position: absolute;z-index: 35;left: 1px;top: 401px;width: 269px;height: 368px;\" id=\"page1block29\" class=\"building_block\">\r\n <h4>\r\n <span>\r\n Hjärtmuskelischemi\r\n </span>\r\n </h4>\r\n <p>\r\n <span>\r\n - Inträffar när hjärtats näringsbehov inte kan mötas av dess näringstillförsel.<br />\r\n - Ökade behov: Takykardi, ökad väggtension (pga ökad pre-/afterload), ökad kontraktilitet<br />\r\n - Minskad syretillförsel: Anemi, minskat CPP, förkortad diastole, kranskärlssjukdom, trombogenes<br />\r\n - Ofta samverkar flera faktorer för att skapa ischemin, tex en begynnande ocklusion av kränskärlen med ateroskleros + ett ökat behov till följd av hypertrofi.<br />\r\n - Anemi är sällan ensam utlösare av ischemi, men kan vara den tuva som stjälper lasset om den näringsgivande förmågan är nedsatt till följd av andra faktorer.<br />\r\n - I början av sjukdomen fås oftast besvär endast vid fysisk ansträngning då detta ställer krav på förmågan hos hjärtats cirkulation att leverera näring till den arbetande muskulaturen.\r\n </span>\r\n </p>\r\n <h4>\r\n <span>\r\n Ischemi pga ateroskleros\r\n </span>\r\n </h4>\r\n </div>\r\n <div style=\"vertical-align: top;position: absolute;z-index: 36;left: 271px;top: 401px;width: 269px;height: 369px;\" id=\"page1block30\" class=\"building_block\">\r\n <p>\r\n <span>\r\n - När en stenos minskar lumen i ett kranskärl med 50% begränsas förmågan att öka flödet för att möta ett ökat behov hos hjärtmuskulaturen.<br />\r\n - När stenosen minskar lumen med 80% kan blodflödet begränsas även i vila.<br />\r\n - En stenos kan utvecklas gradvis till följd av långsam placktillväxt. När ischemin på detta sätt börjar bli kritisk stimuleras angiogenes och kollateralkärl bildas i området. Dessa kan ofta försörja den nedströms muskulaturen i vila, trots stenosen, men kan sällan möta de krav som ställs vid fysisk ansträngning. Patienten får stabil angina.<br />\r\n - Stenoser kan även utvecklas plötsligt till följd av att ett mindre plack eroderar i sin yta varpå trombogena substanser exponeras för blodet som passerar. Trombocyter ansamlas då och koagulationskaskaden startar så att en trombos bildas som snabbt kan täppa till kärllumen.Då kollateraler i dessa fall saknas utvecklas en kritisk ischemi av nedströms försörjd hjärtmuskulatur och en infarkt kan uppstå.<br />\r\n </span>\r\n </p>\r\n </div>\r\n <div style=\"vertical-align: top;position: absolute;z-index: 37;left: 539px;top: 401px;width: 269px;height: 368px;\" id=\"page1block31\" class=\"building_block\">\r\n <p style=\"text-indent: 0pt;\">\r\n <span>\r\n - Den subendokardiella hjärtmuskulaturen är sämst kärlförsörjd och drabbas oftast hårdast av ischemi.\r\n </span>\r\n </p>\r\n <p>\r\n <span>\r\n - Långt ifrån alla med ischemi får symptom. Det beräknas att 25% av hjärtinfarkter aldrig får någon uppmärksamhet av sjukvården.\r\n </span>\r\n </p>\r\n <h4>\r\n <span>\r\n Effekter av ischemi\r\n </span>\r\n </h4>\r\n <p>\r\n <span style=\"font-weight: bold;\">\r\n - Stör ventrikelns kontraktilitet lokalt\r\n </span>\r\n <span>\r\n (ischemi till följd av ateroskleros har ett distinkt utbredningsområde motsvarande det område som försörjs av den stenoserade artären).<br />\r\n -\r\n </span>\r\n <span style=\"font-weight: bold;\">\r\n Störning av kontraktilitet leder till akinesi\r\n </span>\r\n <span>\r\n eller dyskinesi (väggen buktar utåt) av hjärtmuskelväggen\r\n </span>\r\n <span style=\"font-weight: bold;\">\r\n efter bara några minuter\r\n </span>\r\n <span>\r\n . Försämrar hjärtats kontraktilitet.<br />\r\n - Om\r\n </span>\r\n <span style=\"font-weight: bold;\">\r\n papillarmuskulaturen\r\n </span>\r\n <span>\r\n involveras kan patienten få\r\n </span>\r\n <span style=\"font-weight: bold;\">\r\n mitralisinsufficiens\r\n </span>\r\n <span>\r\n .<br />\r\n </span>\r\n <span style=\"font-weight: bold;\">\r\n - Ischemin kan vara övergående\r\n </span>\r\n <span>\r\n och enbart ge angina pectoris, eller\r\n </span>\r\n <span style=\"font-weight: bold;\">\r\n mer långvarig\r\n </span>\r\n <span>\r\n och då leda till en\r\n </span>\r\n <span style=\"font-weight: bold;\">\r\n infarkt\r\n </span>\r\n <span>\r\n . <br />\r\n </span>\r\n </p>\r\n </div>\r\n <div style=\"vertical-align: top;position: absolute;z-index: 38;left: 808px;top: 401px;width: 269px;height: 368px;\" id=\"page1block32\" class=\"building_block\">\r\n <p style=\"text-indent: 0pt;\">\r\n <span style=\"font-weight: bold;\">\r\n - Efter 15 minuter\r\n </span>\r\n <span style=\"font-weight: bold;\">\r\n av ischemi\r\n </span>\r\n <span>\r\n utan kollateralflöde\r\n </span>\r\n <span style=\"font-weight: bold;\">\r\n blir myokardet ischemiskt\r\n </span>\r\n och\r\n <span style=\"font-weight: bold;\">\r\n efter 20-40\r\n </span>\r\n minuter tycks\r\n <span style=\"font-weight: bold;\">\r\n irreversibla skador\r\n </span>\r\n börja uppstå\r\n <span>\r\n (hjärtmuskelcellerna börjar gå i nekros)\r\n </span>\r\n .\r\n <span>\r\n <br />\r\n - Ischemin\r\n </span>\r\n <span style=\"font-weight: bold;\">\r\n hämmar betaoxidation av fettsyror\r\n </span>\r\n <span>\r\n (vilken kräver syre), varpå hjärtmuskelcellerna övergår till\r\n </span>\r\n <span style=\"font-weight: bold;\">\r\n anaerob glykolys\r\n </span>\r\n <span>\r\n . Detta ger laktatproduktion och pH sjunker. ATP-nivåer minskar. <br />\r\n -\r\n </span>\r\n <span style=\"font-weight: bold;\">\r\n Cellernas membranpumpar fungerar sämre\r\n </span>\r\n <span>\r\n och joner börjar läcka över deras membran (K läcker ut, Na läcker in). Dessutom ökar cytosolens [Ca].<br />\r\n </span>\r\n <span style=\"font-weight: bold;\">\r\n - Viabelt myokradium som kan räddas med reperfusion\r\n </span>\r\n kvarstår dock i flera timmar efter den initiala ocklusionen.\r\n </p>\r\n <h4>\r\n <span>\r\n Mekanismer\r\n </span>\r\n </h4>\r\n <p>\r\n <span>\r\n - Både instabil angina pectoris, NSTEMI och STEMI är oftast resultatet av ruptur av ett plack med efterföljande trombbildning i kranskärlet. <br />\r\n - Små subendokardiella infarkter kan dock uppstå enbart till följd av svår diffus ateroskleros av\r\n </span>\r\n </p>\r\n </div>\r\n <div style=\"vertical-align: top;position: absolute;z-index: 237;left: 0px;top: 136px;width: 119px;height: 252px;\" id=\"page1block33\" class=\"building_block\">\r\n <p class=Brödtext>\r\n <span style=\"font-weight: bold;\">\r\n Blodflöde till hjärtat:\r\n </span>\r\n <span>\r\n Blod strömmar till ffa under diastole.\r\n </span>\r\n </p>\r\n <p class=Brödtext>\r\n <span style=\"font-weight: bold;\">\r\n - Kortare diastole\r\n </span>\r\n <span>\r\n pga högre HR eller\r\n </span>\r\n <span style=\"font-weight: bold;\">\r\n sämre relaxation av hjärtmuskeln\r\n </span>\r\n <span>\r\n under diastole till följd av\r\n </span>\r\n <span style=\"font-weight: bold;\">\r\n ischemi eller hypertrofi\r\n </span>\r\n <span>\r\n försämrar blodflödet till hjärtat.<br />\r\n </span>\r\n <span style=\"font-weight: bold;\">\r\n - Anemi\r\n </span>\r\n <span>\r\n minskar blodets syrebärande förmåga och försämrar syretillförseln.\r\n </span>\r\n </p>\r\n </div>\r\n <div style=\"vertical-align: top;position: absolute;z-index: 238;left: 118px;top: 217px;width: 118px;height: 70px;\" id=\"page1block34\" class=\"building_block\">\r\n <p class=Brödtext>\r\n <span style=\"font-weight: bold;\">\r\n Aortit:\r\n </span>\r\n <span>\r\n Minskar kranskärlsostiernas storlek och hämmar därmed flödet\r\n </span>\r\n </p>\r\n </div>\r\n <div style=\"vertical-align: top;position: absolute;z-index: 239;left: 237px;top: 221px;width: 147px;height: 152px;\" id=\"page1block35\" class=\"building_block\">\r\n <p class=Brödtext>\r\n <span style=\"font-weight: bold;\">\r\n Ateroskleros:\r\n </span>\r\n <span>\r\n Minskar lumen i kranskärlen och ökar därmed kraftigt motståndet mot flöde ut i hjärtats cirkulation<br />\r\n - Samma effekt har embolier och spasm i kranskärlen (”Prinzmetals angina”).\r\n </span>\r\n </p>\r\n </div>\r\n <div style=\"vertical-align: top;position: absolute;z-index: 240;left: 395px;top: 223px;width: 187px;height: 165px;\" id=\"page1block36\" class=\"building_block\">\r\n <p class=Brödtext>\r\n <span style=\"font-weight: bold;\">\r\n Vänsterkammarhypertrofi:\r\n </span>\r\n <span>\r\n Försämrar näringsflöde till muskulaturen genom att öka vävnadstrycket så att perfusionen försämras. Dessutom kräver ett hypertrofierat hjärta mer syre, samtidigt som nybildning av cirkulation oftast inte hinner med.\r\n </span>\r\n </p>\r\n <p class=Brödtext>\r\n <span>\r\n \r\n </span>\r\n </p>\r\n <p class=Brödtext>\r\n <span>\r\n CPP = DBP—LVEDP\r\n </span>\r\n </p>\r\n </div>\r\n</div>',
'1357250251',
'1357250251',
'',
'Hjrtmuskelischemi=>\r\nHjärtmuskelischemi',
'1121',
'-1'
)