[英]How to show value if there any empty space in MySQL query value
我的數據庫表是這樣的:
“course_name”列中的字段“pure math A2”中有空格。 我想在單選按鈕值中獲取course_name。
我的mysql查詢是:
<?php
$result2 = mysql_query("SELECT * FROM tbl_course WHERE label_id= 1");
while($row = mysql_fetch_array($result2))
{
echo "<input type='radio' value='".$row['course_name']."' ".$class." name='vh_course_radio' >" .$row['course_name'];
}
?>
但是有一些問題。 在單選按鈕中,值像這個圖像一樣被打破:
任何人都可以幫助我? 請給我解決方案。 我想要的價值就像(value =“純數學A2”)。
使用mysql REPLACE()
或將' ' to '_'
替換' ' to '_'
SELECT *,REPLACE(course_name,' ','_') as course_name
FROM tbl_course WHERE label_id= 1
輸出為: - pure_math_A2
我相信,您希望在缺少列值的情況下插入替換值。 有兩種方法可以使列中缺少值。 一種是當列為NULL時,另一種是當它是所有空格時。 你沒有說你的表如何記錄缺失的值,所以我將提供一個處理兩者的解決方案。
因此,您可以更改SQL查詢以檢測情況。
IFNULL(course_name,'')
將NULL值轉換為空字符串(無空格)。 然后
TRIM(IFNULL(course_name,''))
如果列值包含空格或NULL,則生成不包含字符的文本字符串。 最后,
CASE WHEN LENGTH(TRIM(IFNULL(course_name,''))) = 0 THEN 'substitute'
ELSE course_name
END
將生成您的替代值。 所以使用這個SQL查詢
SELECT col, col,
CASE WHEN LENGTH(TRIM(IFNULL(course_name,''))) = 0 THEN 'substitute'
ELSE course_name
END AS course_name
FROM tbl_course
WHERE label_id= 1
你需要replace
space
replace
為"_"
(其他東西)
<input type='radio' value='pure_math_A2'>pure math A2
在提交后的另一面,你可以replace "_"
為space
這樣你的問題就解決了
代替
while($row = mysql_fetch_array($result2))
{
echo "<input type='radio' value='".$row['course_name']."' ".$class." name='vh_course_radio' >" .$row['course_name'];
}
使用以下方法可能對您有所幫助,
<?php while($row = mysql_fetch_array($result2)): ?>
<input type='radio' value="<?php echo $row['course_name'];?>" name=' vh_course_radio' ><?php echo $row['course_name']; ?>
<?php endwhile; ?>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.