Jump to content
php.lv forumi

Recommended Posts

Posted

Pievienojot mysql datubāzei tekstu:

Konkursa apraksts lasāms lapā

teksts tiek pārveidots šādi:

Konkursa apraksts lasâms lapâ

 

Pirmo reizi sastopos ar šādu lietu, tajā pašā datubāzē visulaiku pievienoju latvieshu tekstu - viss normali, tikai jaunajaas sadaljas tabulaas shada lieta notiek.

 

Kur ir kļūda? Varbūt nolasot nosūtīto mainīgo nevajag izmantot HTMLENTITIES($text, ENT_QUOTES)?

Kaa novērst to?

Posted

Tieši tā azpage, novāc nost to htmlentities(), jo tas visus ne ascii simbolus pārvērtīs uz entītijām. Tā vietā lieto htmlspecialchars()

Posted

ir divi dažādi gadījumi, kuros attiecīgi ir jārīkojas atsevišķi.

 

1) ja pievienotā informācija nav domāta labošanai, tad var datubāzē saglabāt informāciju ar HTMLENTITIES, HTMLSPECIALCHARS vai vēl kādu citu filtru.

 

2) ja pievienotā informācij vēl būs jālabo, tad datubāzē vajadzētu glabāt visu informāciju tieši tādu, kāda tā nāk no lietotāja (protams, novēršot SQL injekciju iespējamību ar addslashes/mysql_escape_string vai kādu citu līdzvērtīgu funkciju citai datubāzu pārvaldības sistēmai.

×
×
  • Create New...