予設定的返回值的datatype
在wsdl
文件是xsd:anyType
:爲什麼webservice不支持突出顯示的字母?
<message name="getEtapeProspResponse">
<part name="return" type="xsd:anyType"/>
</message>
的PHP
函數其中webservice
呼叫返回其是從MySQL表選中的列構成的字符串。和一個列有text
的datatype
:中
function getEtapeProsp($user,$motpasse)
{
$user_code = verifyUser($user, $motpasse) ;
$resultat="";
if ($user_code != null)
{
$datejour = date("Y-m-d");
$connec = mysql_connect("192.168.1.123:3306", "root", "mysqlroot");
mysql_select_db("finance",$connec);
$query = mysql_query("SELECT * FROM etape_prospection INNER JOIN type_prospection ON etape_prospection.type_prosp_id = type_prospection.type_prosp_id WHERE prosp_id IN (SELECT prosp_id FROM transfert WHERE user_code ='".$user_code ."' AND date_transfert='".$datejour."') order by etape_prospection.prosp_id");
while($ligne = mysql_fetch_array($query))
{
$resultat .= $ligne['etape_prosp_id'].';';
$resultat .= $ligne['type_prosp_lib'].';';
$resultat .= convertDateFormatHH($ligne['etape_prosp_date']).';';
$resultat .= $ligne['etape_prosp_comment'].';'; // this is the text column
$resultat .= $ligne['prosp_id'].';';
$resultat .= "\r\n";
}
}
else
{
$resultat = "Login ou mot de passe incorrect" ;
}
return $resultat;
}
在數據庫中的值了「etape_prosp_comment」有一個突出的信,é。 問題是,當我從我的J2ME
應用程序調用webservice時,會引發異常。但是,如果我在column
中沒有插入任何突出顯示的字母,那麼web服務就沒問題。
那麼如何解決這個突出的字母問題呢?
我不是PHP的專家,但也許你可以編碼的信息。處理web服務時,特殊字符可能一直是個問題。 – Ernesto 2012-01-13 14:27:37
拋出哪個異常?從服務器收到的XML消息是什麼樣的? – DRH 2012-01-13 14:30:13
你的意思是'重音字符'。重點將更加沿着「大膽」,「斜體」等行......你是否檢查過整個HTTP管道(客戶端 - > php->數據庫 - > php->客戶端)匹配的字符集?該鏈中任何地方字符集的單一改變將破壞數據。 – 2012-01-13 14:38:55