插入在第一个瑞典UTF-8字符处被截断

时间:2013-01-03 20:58:03

标签: php mysql utf-8

当我尝试将一些html代码插入到我的mysql数据库中时,文本会在第一次出现的å,ä或ö(瑞典字母)时被删除。我不知道为什么会这样。

我运行以下命令以确保为UTF-8设置了mysql连接:

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'
    )

1 个答案:

答案 0 :(得分:0)

也许你的问题出在php / html文件中,而不是在数据库设置中。

检查您是否保存了php文件 UTF-8编码(没有BOM头),因此它将生成一个UTF-8编码的HTML文件。这是代码编辑器的工作。

然后在开始标记后面的HTML / PHP页面顶部添加正确的编码声明

HTML 4:  <meta http-equiv="Content-type" content="text/html;charset=UTF-8">
XHTML:   <meta http-equiv="Content-type" content="text/html;charset=UTF-8" />
HTML 5:  <meta charset="UTF-8">

您可read more

相关问题