Rozdział 13. ♦ Współpraca PHP i MySQL 365
echoCKodowanie znaków to: " . mysqł_client_encodingO): mysql_close():
Jeśli uzyskany wynik jest różny od ustawionego przez nas w opcjach konfiguracyjnych, np. latinl zamiast latin2, poprawne kodowanie można wymusić poprzez wysłanie do serwera znanej nam już instrukcji SET NAMES. Czynność tę należy wykonać po nawiązaniu połączenia z bazą, ale przed wykonaniem innych zapytań. Jeśli zatem zamierzamy ustawić kodowanie na latinl (czyli iso-8859-2), kod będzie miał schematyczną postać:
<htm1>
<head>
<meta http-equiv="Content-Type" content-"text/html; charset-iso-8859-2">
</head>
<body>
<?php
if (!$db_lnk - @mysql_connect("localhost". "php". ''test")){
echo('Wystąpił błąd podczas próby połączenia z serwerem MySQI____<BR>'):
exit;
}
$query - "SET NAMES 'latin2'":
if(!$result = mysql_query($query. $db_lnk)){ echo('Wystąpił błąd: nie udało się ustawienie kodowania znaków...<BR>’): @mysql_close(): exit:
dalsze instrukcje
</body>
</html>
Zapytania są wysyłane do bazy za pomocą funkcji mysql_query, której w postaci argumentów należy podać treść zapytania i, opcjonalnie, identyfikator połączenia. Schematycznie takie wywołanie ma postać: mysql_query("zapytanie"[. identyfikator])
Jeżeli identyfikator nie zostanie podany, zostanie wykorzystane ostatnio otwarte połączenie. Ciąg tworzący zapytanie nie powinien być zakończony znakiem średnika.
Wartość zwracana przez funkcję jest zależna od typu zapytania. Jeśli było to zapytanie typu SELECT, SHOW, EXPLAIN lub DESCRIBE, wartością zwracaną jest identyfikator zasobów (pozwalający na dalsze przetwarzanie danych), o ile wykonanie zapytania zakończyło się sukcesem, lub wartość fał se, jeżeli wykonanie zapytania nie powiodło się. W przypadku pozostałych typów zapytań zwracaną wartością jest true, jeśli zapytanie było poprawne, lub fał se — w przeciwnym razie.