Olen viettänyt muutaman viime tunnin verkkosivustollani testaamalla HTML 4.01 Strictiä ja olen itse asiassa onnistunut siinä, mutta on vielä yksi varoitus, josta en näytä pääsevän eroon. Varoitus:
Merkkikoodaus ei täsmää!
HTTP-otsikossa määritetty merkkikoodaus (iso-8859-1) poikkeaa elementin arvosta (utf-8). Käytän tähän vahvistukseen HTTP-otsikon arvoa (iso-8859-1).
Yleistä tietoa merkistöotsikon muuttamisesta eri verkkopinoissa on osoitteessa http://www.w3.org/International/O-HTTP-charset
2018-05-25 13:30
Palvelin merkitsee asiakirjan selvästi ISO-8859-1 HTTP-otsikoissa. Yritä tallentaa default.html UTF-8-koodauksella käyttämällä sopivaa editoria.
2018-05-25 03:07
Okei, keksin osittaisen ratkaisun ongelmaani. Koska vain default.html-tiedosto aiheutti varoituksen, oletin, että palvelin teki sille jotain erityistä sen nimen takia. Joten loin uuden home.html-tiedoston, jonka sisältö on sama kuin default.html-tiedostossa, ja osoitin .htaccess-tiedoston uuteen tiedostoon (katso rivi 3 alla).
# Käytä PHP5:tä oletusarvoisena AddHandler-sovelluksena/x-httpd-php5 .php DirectoryIndex home.html AddDefaultCharset UTF-8
Tämä korjasi ongelman ja kaikki tiedostot tunnistetaan nyt UTF-8-muodossa. En ole vieläkään varma, mitä palvelin tekee default.html-tiedostolla tai missä asetukset ovat tähän liittyen, mutta kun ongelmani häviää, unohdan sen.
Jos koodaus on virheellinen, koko sivusto tai sen osa näytetään nimellä "kryapozyablov", ts. outoja merkkejä, jotka tekevät tekstistä lukukelvottoman. Tämä tilanne voi tapahtua, jos verkkopalvelimen koodaus on määritetty väärin tai jos asetuksia ei ole. Pohditaan mahdollisia vaihtoehtoja ja tapoja ratkaista ongelmia
Virheellinen HTML-sivun koodaus
Luodaan testitiedosto:
Sudo gedit /var/www/html/encoding.html
Kopioidaan siihen:
Avataan tämä tiedosto selaimessa
Kuten näet, selain havaitsee koodauksen väärin:
On olemassa useita tapoja korjata tämä tilanne. Aloitetaan yksinkertaisimmasta - määritä verkkosivun koodaus erikseen. Tämä tehdään sisällönkuvauskentällä, jonka on sijaittava tunnisteen sisällä pää:
Lisätään tämä rivi testitiedostoomme, jotta se näyttää tältä:
Testaa tiedosto koodauksen tarkistamiseksi
Kuten seuraavassa kuvakaappauksessa näemme, ongelma on ratkaistu:
Jos tiedostosi koodaus on eri kuin UTF-8, korvaa se sitten windows-1251 tai sellainen, joka vastaa verkkosivun koodausta. Jos haluat oppia tunnistamaan tiedostojen koodauksen, katso.
Tämä oli helpoin tapa korjata koodausongelma - muuttamatta palvelimen asetuksia.
Palautetaan testitiedostomme alkuperäiseen tilaan ja jatketaan koodauksen määrittämistapojen tutkimista.
Jos tiedostot .htaccess Apache-asetusten sallimia, näitä tiedostoja voidaan käyttää verkkopalvelimen lähettämien sivujen koodauksen määrittämiseen. Voit ottaa tiedostotuen käyttöön .htaccess Apachen asetustiedostossa ( /etc/apache2/apache2.conf) etsi riviryhmä
Ja vaihda se
SalliOverride Ei mitään
SalliOverride All
Tämän jälkeen palvelin on käynnistettävä uudelleen.
Sudo systemctl käynnistä apache2.service uudelleen
Tiedosto .htaccess tulee sijoittaa samaan hakemistoon sivuston kanssa. Sivustoni on verkkopalvelimen juurihakemistossa. Jos sinulla on sama, niin nyt kansiossa /var/www/html/ luo tiedosto .htaccess ja lisää siihen direktiivi AddDefaultCharset jonka jälkeen osoita haluttu koodaus. Esimerkkejä
AddDefaultCharset UTF-8
AddDefaultCharset windows-1251
Voit määrittää koodauksen, jota käytetään vain tietyn muotoisille tiedostoille:
AddCharset utf-8 .atom .css .js .json .rss .vtt .xml
Tiedostojoukko voi olla mikä tahansa, esimerkiksi:
AddCharset utf-8 .html .css .php .txt .js
Seuraava vaihtoehto on vaihtoehto, ja sen avulla voit myös asettaa tietyn tyyppisten tiedostojen koodauksen mod_headers:
Toinen vaihtoehto, jota voidaan käyttää myös tiedostossa .htaccess UTF-8-koodauksen asettaminen:
IndexOptions +Charset=UTF-8
Jos sivusto on PHP-kielellä, saatat joutua lisäksi kopioimaan koodauksen php_value default_charset:
AddDefaultCharset windows-1251 php_value default_charset "cp1251"
Sen sijaan, että luot .htaccess-tiedoston, voit määrittää koodauksen verkkopalvelimen asetustiedostoon. Apache CentOS/Fedorassa tämä on httpd.conf-tiedosto ja Debian/Ubuntussa tämä on apache2.conf-tiedosto. Lisää seuraava rivi asettaaksesi koodauksen ja käynnistä verkkopalvelin uudelleen, jotta muutokset tulevat voimaan:
AddDefaultCharset UTF-8
Kuinka asettaa UTF-8-koodaus PHP: ssä
PHP-skriptissä koodaus on asetettu arvoon otsikko, Esimerkiksi:
Header("Sisältötyyppi: charset=utf-8");
Yleensä koodauksen yhteydessä ilmoitetaan myös sisältötyyppi (esimerkissä HTML-sivun vaihtoehto):
Header("Sisältötyyppi: text/html; charset=utf-8");
Toinen vaihtoehto RSS-syötteelle:
Header("Sisältötyyppi: text/xml; charset=utf-8");
Muista, että toiminto otsikko tulee kutsua ennen kuin tulostetaan selaimeen. Muussa tapauksessa (jos tulostus selaimeen on jo tehty), otsikot on jo lähetetty. On selvää, että tässä tapauksessa niitä ei ole enää mahdollista muuttaa. Jos selaimeen tulostettiin virheilmoitus, otsikot on jo lähetetty ja otsikon käyttö aiheuttaa virheen. Tarkistaaksesi, onko otsikot jo lähetetty, käytä headers_sent.
Kuvattu menetelmä toimii vain, kun PHP-skripti luo kokonaan sivun sisällön. Staattiset sivut (kuten html) kannattaa tallentaa utf-8-koodauksella. Useimmat verkkopalvelimet huomioivat tiedoston koodauksen ja lisäävät sopivan otsikon. Itse asiassa PHP-tiedoston tallentaminen utf-8-koodauksella johtaa samaan tulokseen.
MySQL-tietokannan tulosten virheellinen koodaus
Jos sivustosi koostuu staattisesta osasta (mallipohjasta) ja dynaamisesta osasta, joka muodostuu tietokannasta vastaanotetuista tiedoista, voi syntyä tilanne, jossa osassa sivustoa on oikea koodaus ja toisessa sivuston osassa väärä. yksi. Tässä tapauksessa on hyödytöntä muuttaa verkkopalvelimen asetuksia - koska joka tapauksessa osa sivusta on väärän koodaus.
Sinun on aloitettava määrittämällä taulukkojesi koodaus. Voit katsoa phpMyAdmin:
Kiinnitä huomiota sarakkeeseen " Vertailu", merkintä" utf8_unicode_ci" tarkoittaa, että koodausta käytetään UTF-8.
Voit muodostaa yhteyden MySQL DBMS:ään ja tarkistaa taulukoiden koodauksen ilman phpMyAdminia. Voit tehdä tämän seuraavasti:
Mysql -u root -p
Jos unohdit tietokannan nimen, suorita komento:
NÄYTÄ TIETOKANNAT;
Oletetaan, että haluan etsiä taulukoiden koodausta information_schema-tietokannasta
KÄYTÄ tiedot_skeema;
Jos unohdit taulukoiden nimet, suorita:
NÄYTÄ KOKO SARAKE taulukosta taulukon_nimi;
Esimerkiksi:
NÄYTÄ KOKONAISIA SARAKEJA GLOBAL_STATUSISTA;
Näet jotain tällaista:
Katso sarake Lajittelu. Minun tapauksessani siellä utf8_general_ci, se on kuin utf8_unicode_ci, koodaus UTF-8. Muuten, jos et tiedä mitä eroa koodauksilla on utf8_general_ci, utf8_unicode_ci, utf8mb4_general_ci, utf8mb4_unicode_ci, ja myös mitä koodausta valita MySQL-tietokantaan, ja katso sitten.
Nyt kun tiedämme koodauksen (minun tapauksessani se on UTF-8), joka kerta kun muodostat yhteyden MySQL DBMS:ään, sinun on suoritettava kyselyt peräkkäin:
SET NIMET UTF8 SET CHARACTER SET UTF8 SET character_set_client = UTF8 SET character_set_connection = UTF8 SET character_set_results = UTF8
PHP:ssä tämä voidaan tehdä näin:
$this->mysqli = uusi mysqli($palvelin, $käyttäjänimi, $salasana, $kantanimi); if ($this->mysqli->connect_error) ( $this->errorHandler_c->logError(1, "Yhdistämisvirhe (" . $this->mysqli->connect_errno . ") " . $this->mysqli->connect_error , $_SERVER ["REQUEST_URI"] ) $this->mysqli->query("SET NIMET UTF8"); $this->mysqli->query("SET CHARACTER SET UTF8"); $this->mysqli->query("SET character_set_client = UTF8"); $this->mysqli->query("SET character_set_connection = UTF8"); $this->mysqli->query("SET character_set_results = UTF8");
huomioi se UTF8 sinun on korvattava se koodauksella, jota käytetään taulukoissasi.
Tiedoston koodauksen muuttaminen
Jos päätät mennä toisin ja uuden koodauksen asentamisen sijaan muuta tiedostojesi koodausta ja katso sitten artikkeli "". Se kertoo, kuinka voit selvittää tiedostojen nykyisen koodauksen ja miten tiedostot muunnetaan mihin tahansa koodaukseen (ei vain UTF-8:aan).
Kuinka selvittää, mitä koodausta palvelin lähettää
Jos haluat selvittää, mitkä koodausasetukset verkkopalvelimella on (mitä koodausta se lähettää otsikoissa), käytä seuraavaa komentoa:
Curl URL -s -o /dev/null -D /dev/stdout | grep -E "merkkisarja"
Sen sijaan siinä URL-osoite lisää tarkastelemasi sivuston todellinen osoite. Jos sivusto käyttää HTTPS:ää, määritä sivuston osoite esimerkiksi protokollan kanssa
Curl https://softocracy.ru -s -o /dev/null -D /dev/stdout | grep -E "merkkisarja"
Mikä koodaus valita verkkosivustolle
Jotta sivustosi sivut näkyvät oikein kaikissa selaimissa ja kaikenlaisissa laitteissa, sinun on huolehdittava oikean koodauksen asettamisesta. Joidenkin ehtojen noudattamatta jättäminen, joista keskustelemme yksityiskohtaisesti tänään, voi johtaa siihen, että teksti muuttuu merkityksettömäksi merkkijoukoksi, jota on yksinkertaisesti mahdoton lukea (krakozyabry).
Miksi tavallisen tekstin sijaan näytetään paskaa tekstiä?
Jokaisella sivustosi sivulla on oltava tietty koodaus. Selaimelle on ilmoitettava tällä hetkellä käytössä olevasta koodauksesta antamalla erityisiä otsikoita. Näissä otsikoissa sinun on määritettävä koodaus, joka vastaa sivustolle lähetettyjen asiakirjojen rungossa (sen sivuilla) käyttämääsi koodausta.
Nykyaikaiset selaimet voivat määrittää asiakirjan koodauksen itse, jos verkkovastaava on unohtanut määrittää sen erikseen. Joskus käy niin, että selaimen "mielipiteen" ja todellisuuden välillä syntyy epäjohdonmukaisuuksia, jolloin syntyy joukko merkkejä, joita ei voida lukea. Joukko hölynpölyä voi olla eri muodoissa, joskus se on vain outoja symboleja, muinaisten hieroglyfien kaltaisia, ja joskus vain kysymyksiä tai kysymyksiä mustien timanttien sisällä. Yleisesti ottaen ei ole niin tärkeää millaista paskaa selain näyttää, vaan tärkeintä on se, että ihminen ei voi lukea niitä.
Jos kohtaat virheellisesti määritellyn koodauksen ongelman ja näet verkkosivustollasi jotain, jota et voi lukea, käytä ensin erityistä Artemy Lebedevin studiossa kehitettyä dekooderia. Voit tehdä tämän kopioimalla tekstin, jonka salauksen haluat purkaa, liittämällä se erityiseen kenttään ja napsauttamalla "Poista salaus". Jos dekoodaus onnistuu, näet jo luettavan tekstin sekä alkuperäisen koodauksen ja polun, jonka ohjelman piti käydä läpi tulostaakseen tuloksen.
Kaikkea tätä tarvitaan pikemminkin kokeneille käyttäjille, joille saadut tiedot voivat auttaa jollain tavalla. Ehkä ohjelman toimien tulos antaa sinulle käsityksen ja saat selville, mistä sivustosi paska tulee, ja korjaat tilanteen nopeasti. Ja jos tehdyt manipulaatiot eivät kerro sinulle yhtään mitään, siirrytään vain eteenpäin.
Kuinka valita oikea koodaus
Tässä artikkelissa emme syvenny siihen, minkä tyyppisiä koodauksia on olemassa ja miten ne eroavat toisistaan, koska... Emme halua ylikuormittaa itseämme tai sinua tarpeettomilla tiedoilla, ja tämän päivän artikkelissa näin ei ollut. On vain syytä huomata, että venäjänkielisellä sivustolla ei ole mitään järkeä asentaa Windows-1251-koodausta, joka on kuvattu tyhjentävästi upeassa Wikipedia-artikkelissa. Vaikka kaikki sen tekstit kirjoitetaan yksinomaan venäjäksi, eikä siinä ole epätyypillisiä merkkejä. Sen sijaan sinun tarvitsee vain valita yleinen UTF-8-koodaus, ottaen tämä itsestäänselvyytenä ilman, että vaivaa päätäsi tarpeettomilla tiedoilla.
Tosiasia on, että ei ole mitään järkeä valita sivustollesi koodausta, joka tukee vain slaavilaisten kielten merkkejä, kuten venäjä, ukraina, valkovenäläinen, serbia, makedonia ja bulgaria. Miksi rajoittaa itseäsi alusta alkaen ja tuomita itsesi mahdollisiin ongelmiin tulevaisuudessa. Mitä teet, jos sinun on lisättävä merkki, jota ei tueta?
UTF-8 (englanninkielisestä Unicode Transformation Format -muodosta) on kahdeksan bittinen Unicode-muunnosmuoto, joka on saanut maailmanlaajuista tunnustusta ja joka on standardisoitu juuri siksi, että vältetään ongelmat, jotka liittyvät hölynpölyyn ja sekaannukseen lukukelvottomien tekstien kanssa. Mistä voimme turvallisesti päätellä, että tässä tapauksessa sinun on valittava kahdesta pahasta suurempi ja nukkuttava rauhassa, syventymättä yksityiskohtiin, koska täällä kaikki on selvää. Vertaile Jupiterin ja Venuksen kokoa.
Perustavat oikean koodauksen asettamiseen
Usein sivuston koodaukseen liittyvät ongelmat eivät aiheudu siksi, että mikään niistä ehdoista, joista kerromme, ei täyttynyt, vaan riittää, että vain yksi niistä ei täyty, jotta sivustosi teksti alkaa näkyä väärin. Kun olet asettanut koodauksen kaikilla yllä olevilla menetelmillä, ongelma ratkaistaan 99,9 %:n todennäköisyydellä. Päädyimme tähän johtopäätökseen monien vuosien kokemuksella työskentelystä verkkosivustojen kanssa eri isännöintialustoilla käyttämällä erilaisia hallintajärjestelmiä ja palvelinasetuksia.
Koodaus .htaccess-muodossa - AddDefaultCharset
Ensinnäkin sinun on asetettava sivuston kaikkien sivujen oletuskoodaus yhdellä erittäin hyödyllisellä htaccess-direktiivillä - AddDefaultCharset, joka tarkoittaa kirjaimellisesti "Lisää oletusmerkki". Tämä tehdään hyvin yksinkertaisesti:
AddDefaultCharset UTF-8
Jos et tiedä mikä se on , luo sitten tekstitiedosto Muistiossa ja nimeä se sitten Total Commanderilla uudelleen nimettömäksi tiedostoksi HTACCESS-tunnisteella ( - tältä tiedostosi koko nimen pitäisi näyttää). Lataa sen jälkeen juuri luotu tiedosto sivustosi juurihakemistoon (samaan paikkaan, jossa pääsuoritettava tiedosto sijaitsee esim. index.php). Älä myöskään unohda lisätä riviä juuri antamallamme oletuskoodauksella.
Koodaus metamerkkisarjalla
Sisällönkuvauskentät pystyvät lähettämään tietoa sivusta selaimeen erityisten otsikoiden muodossa, joista yksi on juuri se mitä tarvitsemme - merkkisetti. Yleensä sisällönkuvauskentillä voi olla jopa 4 erilaista attribuuttia:
- sisältö;
- http-equiv;
- nimi;
- järjestelmä.
Itse asiassa neljästä esitetystä attribuutista vain yksi vaaditaan - sisältöä, mutta poikkeuksiakin löytyy. Esimerkiksi meidän tapauksessamme käytämme merkinnän lyhennettyä versiota ja asetamme koodauksen sisällönkuvauskentän avulla täsmälleen näin:
Vanha tallennusformaatti on jo aikoja sitten vaipunut unohduksiin, eikä sitä kannata enää käyttää:
Kuten tiedät, sisällönkuvauskentät sijoitetaan yleensä säilön sisään pää. Kaikki poikkeuksetta tietävät jo tämän. Tee tämä toimenpide, niin siirrymme luettelomme seuraavaan kohtaan.
Tiedoston koodaus PHP-otsikkotoiminnolla
Tämä menetelmä sopii vain niille, joilla on verkkosivusto toteutettu tällä hetkellä suosituimmalla ohjelmointikielellä, joka on enimmäkseen keskittynyt verkkosivustojen luomiseen - PHP (Hyper Text Preprocessor). Tässä artikkelissa esitetyn ongelman ratkaisemiseksi käytämme upeaa sisäänrakennettua header()-toimintoa, joka on suunniteltu välittämään otsikot, kuten sisällönkuvauskentät, mutta sillä pienellä erolla, että toiminto suoritetaan PHP-skriptistä, ei sen kautta. HTML-koodin tulostus.
Aseta UTF-8-koodaus tiedostolle toiminnolla otsikko() melko yksinkertainen - sinun tarvitsee vain liittää annettu koodi aivan sivun alkuun, mutta tietysti PHP-alueen sisällä, joka on merkitty seuraavasti: здесь у нас PHP-код?>tai niin -.
Header("Sisältötyyppi: teksti/html; charset=utf-8");
Tärkeintä tässä on se, että meillä on oikeus lähettää otsikoita vain, jos skriptistä ei ole aiemmin ollut tulosta. Siksi lisäämme tämän koodin sivun alkuun. Sinun on tehtävä tämä viisaasti ja ymmärrettävä hyvin, mitä tapahtuu, koska voit olla varma, että lisäät otsikon tiedoston alkuun, mutta et ehkä tiedä, että tätä tiedostoa käytetään toisessa tiedostossa, johon se vedetään toiminnolla vaatia tai sisältää sen jälkeen, kun tietyt tiedot on näkynyt näytöllä. Siksi, jos et ymmärrä kovin hyvin, mistä nyt puhumme, on parempi siirtyä seuraavaan vaiheeseen ja palata tähän, jos edelliset 3 eivät auttaneet määrittämään sivustosi sivujen oikeaa koodausta.
Tiedostojen tallentaminen oikealla koodauksella
Yksi luultavasti yleisimmistä syistä halkeamien esiintymiseen verkkosivustolla on itse lopullisen asiakirjan luomiseen käytettyjen tiedostojen virheellinen koodaus. Useimmiten tämä ongelma ilmenee aloittelevien ohjelmoijien keskuudessa, jotka ovat vasta ottamassa ensimmäisiä askeleitaan taiteen hallitsemisessa. Kun sivustomoottoriksi valitaan jokin tällä hetkellä suosituista hallintajärjestelmistä, tämä ongelma voi ilmetä hyvin harvoissa tapauksissa, mutta jos sitä käytetään, niin tapahtuu lähes joka kolmannessa tapauksessa.
Kuten olemme aiemmin sopineet, käyttämämme koodaus kaikilla, jopa kaikkein kehittyneimmillä venäjänkielisillä sivustoilla on UTF-8, joten koodaamme kaikki sivuston moottorin muodostavat tiedostot samassa muodossa. Ja itse palvelimelle ladatun tiedoston koodauksen muuttamiseksi Windows-käyttöjärjestelmän tarjoama tavallinen muistilehtiö ei tietenkään riitä. Siksi on parempi käyttää ilmaiseksi jaettua kolmannen osapuolen ohjelmaa - Notepad++, joka voidaan ladata viralliselta verkkosivustolta ilman ongelmia.
Kun olet suorittanut yksinkertaisen asennusprosessin onnistuneesti, sinun on määritettävä tämä ohjelma oletuseditoriksi, tehtävä joitain asetuksia makusi mukaan ja muutettava väärin näytetyn tiedoston koodaus samalla tavalla kuin kuvakaappauksessa. Ne. sinun on valittava "Encode to UTF-8 (no BOM)". Hyvä merkki siitä, että tämä oli syynä, on se, että aluksi mitään vaihtoehdoista ei valita ja sinua kehotetaan muuttamaan UTF-8:ksi (ei tuoteluetteloa). Jos näet tämän, varmista, että on vain muutama sekunti jäljellä ennen koodausongelman ratkaisemista.
Lisäksi haluan vain sanoa, että sinun on valittava tarkasti ilman BOM:ia. Muussa tapauksessa, jos yksinkertaisesti koodaat UTF-8:lla (BOM:lla), tiedoston alkuun luodaan ylimääräisiä tavuja. He yrittävät olla käyttämättä BOM - Byte Order Mark -merkkiä verkossa UTF-8-muodossa koodattaessa, koska tämä johtaa virheisiin häiritsemällä oikeaa PHP-tulkintaa.
No, nyt kun kaikki tarvittavat vaiheet on suoritettu, näet todennäköisesti helposti luettavaa tekstiä verkkosivustosi sivuilla ja hengität rauhallisesti :)
Yksi aloittelijan yleisimmistä ongelmista Verkkovastaava(eikä vain aloittelijoille), tämä ongelmia koodauksen kanssa sivustolla. Jopa minulle se näkyy jatkuvasti verkkosivustoja luotaessa " abrakadabra"Mutta onneksi tiedän erittäin hyvin, kuinka tämä ongelma ratkaistaan, joten laitoin kaiken järjestykseen muutamassa sekunnissa. Ja tässä artikkelissa yritän opettaa sinulle yhtä nopeasti ratkaista sivuston koodaamiseen liittyviä ongelmia.
Ensimmäinen huomionarvoinen asia on, että kaikki "abrakadabran" ulkoasuun liittyvät ongelmat liittyvät asiakirjan koodauksen ja selaimen asettaman koodauksen väliseen yhteensopimattomuuteen. Sanotaanko dokumentti sisään windows-1251, mutta jostain syystä selain näyttää UTF-8. Ja tällaisen ristiriidan lähde voi olla seuraavista syistä.
Ensimmäinen syy
Sisällönkuvauskenttä on kirjoitettu väärin sisältötyyppi. Ole varovainen, sen tulee aina sisältää koodaus, jolla asiakirjasi on kirjoitettu.
Toinen syy
Näyttää siltä, että sisällönkuvauskenttä on kirjoitettu haluamallasi tavalla ja selain näyttää juuri sen, mitä haluat, mutta jostain syystä koodauksessa on edelleen ongelmia. Syyllinen tässä on lähes varmasti se, että itse asiakirjalla on erilainen koodaus. Jos työskentelet Muistio++, sitten oikeassa alakulmassa on nykyisen asiakirjan koodauksen nimi (esim. ANSI). Jos laitat sisällönkuvauskentän UTF-8, ja itse asiakirja on kirjoitettu ANSI, tee sitten muunnos muotoon UTF-8(valikon kautta" Koodaukset"ja piste" Muunna UTF-8:ksi ilman tuoteluetteloa").
Kolmas syy
Neljäs syy
Ja lopuksi viimeinen suosittu syy on tietokannan koodausongelma. Varmista ensin, että kaikki taulukot ja kentät on kirjoitettu samalla koodauksella, joka vastaa muun sivuston koodausta. Jos tämä ei auta, suorita seuraava pyyntö välittömästi sen jälkeen, kun olet muodostanut yhteyden skriptiin:
SET NIMET "utf8"
Sen sijaan " utf8" voi olla eri koodaus. Sen jälkeen kaikkien tietokannan tietojen pitäisi tulla ulos oikealla koodauksella.
Toivon, että olen selittänyt tässä artikkelissa ainakin 90% ongelmista, jotka liittyvät "siklauksen" esiintymiseen sivustolla. Nyt sinun on käsiteltävä nopeasti niin suosittu ja yksinkertainen ongelma kuin virheellinen koodaus.
15.03.2016
Ei vielä
Hei kaikki!
Jatketaan HTML:n perusteiden oppimista. Tällä oppitunnilla tarkastelemme kuinka määrittää HTML-koodaus sivustolle (verkkosivulle).
Tämä oppitunti on erittäin tärkeä, koska jos et osaa määrittää verkkosivun koodausta, sivusi voi olla lukukelvoton. Kysyt: "Miten he eivät voi?"
Näytän sinulle, miltä blogini näyttää väärällä koodauksella:
Niin, HTML-koodaus– nämä ovat koodien ja aakkosten symbolien vastaavuustaulukoita. Toisin sanoen koodaustietokoneemme muuttaa koodin selkeiksi, luettavissa oleviksi kirjaimille.
Jotta voit kertoa selaimelle, millä koodauksella verkkosivun merkit ovat, sinun on kirjoitettava tunnisteiden väliin
Tässä on sisällönkuvauskenttä:
Huomaa, että koodi sisältää sanan "koodausnimi". Tässä sinun on määritettävä HTML-koodaus.
Tämä on yleensä utf-8 tai windows-1251.
Koodaus forutf-8:
Koodausvarten windows-1251:
Jos unohdat kertoa selaimelle, millä koodauksella sivusto tai verkkosivu on, selain yrittää määrittää koodauksen automaattisesti, mutta se ei aina onnistu oikein. Lopputulos on se, jonka näytin yllä olevassa kuvassa.
Jatketaan harjoittelua.
Kuinka luoda HTML-dokumentti
utf-8 koodaus
"Kaikki ohjelmat" => "Lisävarusteet" => "Muistio" :
Tämä on sisällönkuvauskenttä:
Napsauta muistilehtiössä "Tiedosto" => "Tallenna nimellä...":
Jos kohta "Koodaus:" on määritetty "UTF-8".
Napsauta "Tallenna":
Suurentaa kuvaa?
Kuinka luoda HTML-dokumentti Windows-1251-koodauksella
Avaa tavallinen muistilehtiö. "Kaikki ohjelmat" => "Lisävarusteet" => "Muistio"
.
Liitä seuraavaksi tavallinen HTML-koodi Muistioon:
Nyt ilmoitamme, millä koodauksella verkkosivu on tallennettu. Voit tehdä tämän sijoittamalla tunnisteiden väliin
Tämä on sisällönkuvauskenttä:
Tältä sen pitäisi näyttää (rivi numero 4):
Napsauta muistilehtiössä "Tiedosto" => "Tallenna nimellä...":
Kohdassa "Tiedostonimi" kirjoita verkkosivun nimi latinaksi ja tunnisteella ".html". Luulen, että muistat tämän ensimmäisiltä oppitunneiltasi.
Jos "Koodaus:" on määritetty, ilmoita "ANSI".
Napsauta "Tallenna":
Siinä se!
Useimmat verkkovastaavat valitsevat UTF-8-koodauksen. En kerro sinulle syitä, koska pelkään ylikuormittaa sinua tiedolla, jota et vielä tarvitse HTML-tietojesi tasolla.
Aseta koodi esimerkiksi Notepadissa:
Ja määritä "ANSI" tallennettaessa:
Koska tämä on väärin, tulos on seuraava:
Tallenna verkkosivusi oikein välttääksesi tämän kaltaiset tulokset
Edellinen viesti
Seuraava merkintä