Zrobiłem sobie pięknie dodawanie rekordów w MySQL i PHP - kodowanie utf8 pięknie ustawione - aż dumny z siebie jestem…
Teraz mam taki problem --> kodowanie wstawianego tekstu. Za polskie znaki chcę wstawić polskie znaki w unicode jako cyfry (tabelka z nimi tutaj: http://webdesign.art.pl/atelier/unicode.html na samym dole strony)
np.
ą = ą
ć = ć
Jak zmienić znaki “normalne” na unicode ? Próbowałem Grzegrzółką, ale nie wstawia ona kodów - cyfr, lecz znaczniki…
MrPigmej
(Kontakt)
8 Kwiecień 2010 16:37
#2
Miałem gdzieś takie coś juz napisane. Wsadź to np. w functions.php . Includuj w pliku gdzie będzie to potrzebne:
<?php
function polskie_znaki($zmienna){
$zmienna = addslashes($zmienna);
$zmienna = str_replace("ą","ą", $zmienna);
$zmienna = str_replace("ć","ć", $zmienna);
$zmienna = str_replace("ę","ę", $zmienna);
$zmienna = str_replace("ł","ł", $zmienna);
$zmienna = str_replace("ń","ń", $zmienna);
$zmienna = str_replace("ó","ó", $zmienna);
$zmienna = str_replace("ś","ś", $zmienna);
$zmienna = str_replace("ź","ź", $zmienna);
$zmienna = str_replace("ż","ż", $zmienna);
$zmienna = str_replace("Ą","Ą", $zmienna);
$zmienna = str_replace("Ć","Ć", $zmienna);
$zmienna = str_replace("Ę","Ę", $zmienna);
$zmienna = str_replace("Ł","Ł", $zmienna);
$zmienna = str_replace("Ń","Ń", $zmienna);
$zmienna = str_replace("Ó","Ó", $zmienna);
$zmienna = str_replace("Ś","Ś", $zmienna);
$zmienna = str_replace("Ź","Ź", $zmienna);
$zmienna = str_replace("Ż","Ż", $zmienna);
return $zmienna;
}
?>
I jak będziesz chciał tego użyć to:
$tresc = polskie_znaki($tresc);
floyd
(floyd)
8 Kwiecień 2010 16:41
#3
Na stronie:replaacepl
jest programik o nazwie replacePL w którym jest taka opcja jak: konwersja która robi to co chcesz w wielu plikach jednocześnie, albo nawet w wielu katalogach…
MrPigmej:
Miałem gdzieś takie coś juz napisane. Wsadź to np. w functions.php. Includuj w pliku gdzie będzie to potrzebne: <?php function polskie_znaki($zmienna){ $zmienna = addslashes($zmienna); $zmienna = str_replace(“ą”,“ą”, $zmienna); $zmienna = str_replace(“ć”,“ć”, $zmienna); $zmienna = str_replace(“ę”,“ę”, $zmienna); $zmienna = str_replace(“ł”,“ł”, $zmienna); $zmienna = str_replace(“ń”,“ń”, $zmienna); $zmienna = str_replace(“ó”,“ó”, $zmienna); $zmienna = str_replace(“ś”,“ś”, $zmienna); $zmienna = str_replace(“ź”,“ź”, $zmienna); $zmienna = str_replace(“ż”,“ż”, $zmienna); $zmienna = str_replace(“Ą”,“Ą”, $zmienna); $zmienna = str_replace(“Ć”,“Ć”, $zmienna); $zmienna = str_replace(“Ę”,“Ę”, $zmienna); $zmienna = str_replace(“Ł”,“Ł”, $zmienna); $zmienna = str_replace(“Ń”,“Ń”, $zmienna); $zmienna = str_replace(“Ó”,“Ó”, $zmienna); $zmienna = str_replace(“Ś”,“Ś”, $zmienna); $zmienna = str_replace(“Ź”,“Ź”, $zmienna); $zmienna = str_replace(“Ż”,“Ż”, $zmienna); return $zmienna; } ?> I jak będziesz chciał tego użyć to: $tresc = polskie_znaki($tresc);
Hmm… Gdzie konkretnie w poniższym kodzie wstawić includa?
<?
$osoba = addslashes(htmlentities ($_POST['osoba']));
$tresc = addslashes(nl2br(htmlentities ($_POST['tresc'])));
if ($osoba && $tresc) {
// s± wpisane dane, dodajemy je do bazy
mysql_connect ("localhost", ".....", ".........") or
die ("Blad polaczenia");
mysql_select_db ("....") or
die ("Bledne polecenie");
$query = "INSERT INTO wpisy (tresc, osoba,".
" data) VALUES ('$tresc', '$osoba', ".
"now());";
$wynik = mysql_query ($query);
print "
Dziękuję za dodanie wpisu!
Pojawi się on, gdy tylko zostanie zaakceptowany przez administratora.
"; } else { print " "; print " Tresc wpisu: print "ROWS=6 COLS=38>$tresc “; print " Twoj nick: print “NAME=“osoba” VALUE=”$osoba” SIZE=60> "; print “”; print “”; } ?>[/code]
MrPigmej
(Kontakt)
8 Kwiecień 2010 21:05
#5
Include po prostu na samej górze pliku:
include "functions.php";
A potem korzystasz z funkcji, w którym miejscu chcesz