Hi Jeff,
We are using the sqlanywhere php driver, I have done some tests, on both an nvarchar column in the existing db, and in a new db as per Jinwoo's suggestion.
$conn = sasql_connect('DBN=mydatabase;ServerName=myserver;uid=dba;pwd=password1;charset=utf8');
$sql = "insert into mytable (mycol) values (?)";
$stmt = sasql_prepare($conn, $sql);
$success = sasql_stmt_bind_param($stmt, 's', $val);
$success = sasql_stmt_execute($stmt);
It works fine when the db charset is UTF-8, but not on my existing database.
Is this what you meant by using prepared statements? Maybe I am missing a setting somewhere in the connection string?