我想下面插入XML字符串到MySQL數據庫無法插入XML字符串到MySQL表
<message to='". $groupMembersArray[$i] . "@crossmessenger.com' type='groupchat' from='$mFrom'><x xmlns='jabber:x:event'><offline/><delivered/><displayed/></x><body>$message</body></message>
所以我寫了下面的代碼
$connection = mysqli_connect("localhost","xyz","abc#123","mydb");
for($i = 0 ; $i < $totalMembers ; $i++){
$stanzaToInsert = "<message to='". $groupMembersArray[$i] ."@crossmessenger.com' type='groupchat' from='$mFrom'><x xmlns='jabber:x:event'><offline/><delivered/><displayed/></x><body>$message</body></message>";
$msgSize = strlen($stanzaToInsert);
$insertQuery = "INSERT INTO ofOffline VALUES ('$groupMembersArray[$i]', $messageID, $creationDate, $msgSize, '$stanzaToInsert')";
mysqli_query($connection, $insertQuery);
mysqli_commit($connection);
echo "record $message inserted in table and commited";
}
,但沒有在數據庫中插入。如果我將一個簡單的文本替換爲值爲stanzaToInsert
的xml字符串,那麼它會將值插入到數據庫中。
$insertQuery = "INSERT INTO ofOffline VALUES (
$groupMembersArray[$i],
$messageID,
$creationDate,
$msgSize,
'hard coded string'
)";
所以問題是與XML字符串。
所以我可以知道「我有什麼問題」?
您是否收到任何錯誤?如果沒有,那麼檢查你的消息類型。 – 2014-09-01 05:33:06
@ManishJ:不,沒有任何錯誤。類型是「文本」 – 2014-09-01 05:34:39
你試過addslashes()或mysql_escape_string()嗎? – 2014-09-01 05:36:58