Sebastian Karasiewicz Backend Developer
Temat: Flash Builder 4, UTF 8 i pytajniki zamiast polskich liter
Witam,Wiem że był podobny wątek ale dotyczył on Buildera 3, męczę się już drugi dzień bez większych rezultatów, otóż mam bazę danych której kodowanie jest utf8_unicode_ci, tabelka jest prosta id(int,10) header(varchar,30) content(text), korzystam ze skryptu który wygląda tak
class ArtykulServices{
public function getArtykul(){
$connection = mysqli_connect("localhost", "root", "", "dotestowania", 3306) or die (mysqli_connect_error());
$sql = "SELECT * FROM artykul";
$result = mysqli_query($connection, $sql) or die("query faild: ".mysqli_error($connection));
$rows = array();
while($row = mysqli_fetch_object($result)){
$rows[] = $row;
}
return $rows;
}
}
binduje wynik z DataGrid i zamiast polskich znaków dostaje ???? tylko ó poprawnie się wyświetla, gdy testuje skrypt wyskakuje mi error w postaci
InvocationTargetException:There was an error while invoking the operation. Check your operation inputs or server code and try invoking the operation again.
Reason: An error occured while reading response sent by server. Try encoding the response suitably before sending it. e.g. If a database column contains UTF-8 characters then use utf8_encode() to encode its value before returning it from the operation.
zmieniłem skrypt jak zalecali w alercie
class ArtykulServices{
public function getArtykul(){
$connection = mysqli_connect("localhost", "root", "", "dotestowania", 3306) or die (mysqli_connect_error());
$sql = "SELECT * FROM artykul";
$result = mysqli_query($connection, $sql) or die("query faild: ".mysqli_error($connection));
$rows = array();
while($row = mysqli_fetch_object($result)){
$row->id = utf8_encode($row->id);
$row->header = utf8_encode($row->header);
$row->content = utf8_encode($row->content);
$rows[] = $row;
}
return $rows;
}
}
co prawda error się nie pojawia ale polskie znaki dalej są pytajnikami, umieszczałem:
mysql_query ("SET NAMES 'utf8'");
mysql_query ("SET CHARACTER SET utf8");
mysql_query ("SET SESSION collation_connection ='utf8_unicode_ci'");
co powoduje wyświetlenie się blędu o dziwo jak zapisze plik klasy i plik gateway.php jako UTF8 dostaje podobny error jak po wpisaniu powyższego kodu tyle że zamiast polskich liter w błędzie pojawiają się jeszcze dziwniejsze znaki niż pytajnik,
Bardzo proszę o pomoc już nie wiem co mam zrobić,