2013-04-26 63 views
0

HTML表單PHP變量實際值不進表

<html><body> 
<form action="process.php" method="post"> 
Headline:<input type="text" name="head"><br> 
Content:<Textarea rows="4" cols="50" name="cont"></textarea> 
</form> 
</html> 

我的表結構 兩個字段是標題,內容。

灌裝形式: Headline- 「這太瘋狂了」 內容 - 「在這裏我想提出像這樣的.. <img src="$image" />

Process.php

在此

我得到標題和形式內容在兩個php變量 $headline=$_POST['head']; $content=$_POST['cont'];

這裏我有一個變量$image它包含像這樣的地址:$image contains "img\thumb\2.jpg"

我要插入$headline$content到表中。

問題 每當我插入標題和內容納入表...標題去細到table..but在內容上它顯示:"here i want to put image like this.. &lt;img src=&quot;$image&quot; /&gt;

爲什麼$image實際值是沒有得到解析 任何解決辦法嗎?

+0

你能顯示頁面的完整代碼嗎,或者至少是部分,它有內容和''標籤嗎?您所擁有的HTML表單沒有圖像標籤,您的示例輸出也沒有多大幫助。 – newfurniturey 2013-04-26 05:12:53

+0

ok讓我解釋一下....首先,我通過不同的php腳本上傳圖片,並將其地址存儲在「$ image」中。現在說 $ image看起來像「$ image = img \ thumb \ 2.jpg」。通過我的html表單im使用INSERT在數據庫中上傳「標題」和「內容」。我想在html表單的「content」字段中使用$ image變量。但它需要包含$ image變量的「content」作爲字符串。當我打開表格查看內容時,它包含「$ image」而不是「img \ thumb \ 2.jpg」。 – user2320375 2013-04-26 07:00:42

+0

@newfurniturey:我會盡快上傳代碼.. – user2320375 2013-04-26 07:02:27

回答

3

你沒有真正「在PHP」當你試圖輸出它。

換句話說,你要打開一個PHP部分呼應了var iable:

<?php echo $image; ?> 

,或者用圖片標籤:

<img src="<?php echo $image; ?>" /> 
+0

我試過同樣的..但同樣的問題來了... – user2320375 2013-04-26 04:34:40

+0

@ user2320375你確定嗎?如果你說'$ image'包含一個實際的文本值,並且你做了'<?php echo $ image; ?>,它會工作...期間。你能否證實'$ image'有一個值,並且你已經在使用它的所有實例中正確地拼寫了變量? – newfurniturey 2013-04-26 04:39:18

+0

@ user2320375您是否嘗試了我的解決方案? – 2013-04-26 04:47:36

0

這是因爲,當你寫$圖像轉換成HTML textarea的,它是作爲一個字符串而不是變量處理。

所以,你應該把完整的圖像URL寫到你的數據庫裏,像img \ thumb \ 2.jpg然後把它讀到瀏覽器中。

+0

亞!它被視爲字符串...我必須多次使用此頁面。所以再次ñ再次我不能把確切的地址...這將是繁瑣的...所以只想使用腳本.. – user2320375 2013-04-26 05:09:36

0

使用html_entity_decode轉換所有的HTML實體及其適用角色

html_entity_decode($content); 

$b = html_entity_decode("I'll &quot;walk&quot; the &lt;b&gt;dog&lt;/b&gt; now"); 

echo $b; // I'll "walk" the <b>dog</b> now 
+0

我需要插入內容到表字段「內容」,所以我用htmlspecialcharacter(),沒有這個將不會插入到表中..當插入表時,我希望它只被編碼... – user2320375 2013-04-26 05:02:11

0

當你試圖輸入特殊字符,如<見,>,&等它們轉換成他們的HTML格式如<轉換爲& lt ;,同樣>轉換爲& gt ;.這就是爲什麼當你試圖在數據庫中插入<或>符號時,它就像& lt;和& gt ;.你不應該像這樣使用它們。但如果你真的需要他們,你可以替換& lt;用<和& gt;在插入查詢之前使用>。

$qry = "INSERT INTO TEST (HEAD, CONTENT) VALUES (" . $head . ", " . $content . ")"; 
$qry = str_replace("&lt;", "<", $qry); 
$qry = str_replace("&gt;", ">", $qry); 

然後您可以使用$ qry進行插入。