2010-04-29 81 views
1

我做了一個有豐富的文本編輯器的形式。我試圖將數據存儲到數據庫。
現在我有主要有兩個問題..爲什麼mysql在「#」字符之後沒有存儲數據?

1)一旦串內容「#」(基本上當我試圖改變字體的顏色)       字符,那麼它不保存「#」後面的字符。也不存儲「#」字符。

2)雖然我曾試圖....在JavaScript

html.replace("\"","'"); 

,但它不會取代雙引號爲單引號。

+0

你是如何發送數據到服務器,到databa SE? – 2010-04-29 09:11:40

+0

請在存儲字段內容的數據庫中顯示一些相關的代碼。 – 2010-04-29 09:11:57

回答

2

我們需要看到一些代碼。我的感覺是你錯過了某個重要的逃避步驟。特別是:

只要串內容「#」(基本上當我試圖改變字體的顏色)字符

意味着對我說,你可能會堅持字符串連接在一起成像這樣的URL:

var url= '/something.php?content='+html; 

當然如果html包含#符號,你有問題,因爲:

http://www.example.com/something.php?content=<div style="color:#123456"> 

#開始一個片段標識符,稱爲#123456">,就像您在URL的末尾放置#section以轉到HTML文件中名爲section的錨點一樣。片段標識符是純粹的客戶端,而不是發送到服務器,這將看到:

http://www.example.com/something.php?content=<div style="color: 

然而,這還遠遠沒有上述的唯一問題。空間,<= URL中的simly無效,和其他人物,如&也將陷入困境參數解析。爲了將任意字符串編碼成一個查詢參數,你必須使用encodeURIComponent

var url= '/something.php?content='+encodeURIComponent(html); 

將與%35和類似的其他出帶外的字符替換#

然而,如果這確實是你在做什麼,你應該在任何情況下,你不應該在響應GET請求存儲任何東西到數據庫,也不依賴於GET來傳遞潛在大型內容。改爲使用POST請求。

1

看來你正在做的事情很奇怪你的數據庫代碼。你能顯示你用來存儲字符串到數據庫的實際代碼嗎?

# - 性格是創建一個評論的常用方法。這就是從#到行尾的所有內容都被丟棄了。但是,如果您的代碼存儲到數據庫是正確的,那應該沒關係。

JavaScript沒有處理引號字符轉換的正確位置。正確的地方是在服務器端。

0
上的HTML表單頁面上的客戶端

按你們的要求....
我嘗試重播你......我試着確切提我做了什麼?

1)我曾寫過這樣的..

html = html.trim(); // in html, the data of the rich text editor will come. 
document.RTEDemo.action = "submit.php?method='"+ html.replace("\"","'") + "'"; 
\\ i had done replace bcz i think that was some problem with double quotes. 

現在submit.php,我的瀏覽器的URL是這樣的...

http://localhost/nc/submit.php?method='This is very simple recipe.<br><strong style='background-color: #111111; color: #80ff00; font-size: 20px;">To make Bread Buttor you will need</strong><br><br><blockquote><ol><li>bread</li><li>buttor</li></ol></li></blockquote><span style="background-color: #00ff80;">GOOD.</span><br><br><br><blockquote><br></blockquote><br>' 


上submit.php 2)........我只是簡單地寫這

echo "METHOD : ".$_GET['method'] . "<br><br>"; 
$method = $_GET['method']; 

現在我的上半部分的答案是這樣的...

METHOD : 'This is very simple recipe. 

現在我想保存URL的全部細節....但它唯一的存儲...

This is very simple recipe. 
+0

你需要''method ='+ encodeURIComponent(html)'。請參閱我的解答。 – bobince 2010-04-29 14:27:53

相關問題