如果 MySQL 查询值中有任何空的 space 如何显示值
How to show value if there any empty space in MySQL query value
我的数据库table是这样的:
"course_name" 列的 "pure math A2" 字段为空 space。我想在单选按钮值中获得 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="pure math A2").
使用mysqlREPLACE()
或替换' ' to '_'
SELECT *,REPLACE(course_name,' ','_') as course_name
FROM tbl_course WHERE label_id= 1
Output is :- pure_math_A2
您需要 replace
space
到 "_"
(其他)
<input type='radio' value='pure_math_A2'>pure math A2
在另一边提交后你可以 replace "_"
到 space
这样你的问题就解决了
我相信您希望在缺少列值的地方插入一个替代值。有两种方式可以使列中的值看起来缺失。一种是列为 NULL 时,另一种是全是空格时。你没有说你的 table 如何记录缺失值,所以我将提供一个解决方案来处理这两种情况。
因此,您可以更改 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
而不是
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; ?>
我的数据库table是这样的:
"course_name" 列的 "pure math A2" 字段为空 space。我想在单选按钮值中获得 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="pure math A2").
使用mysqlREPLACE()
或替换' ' to '_'
SELECT *,REPLACE(course_name,' ','_') as course_name
FROM tbl_course WHERE label_id= 1
Output is :- pure_math_A2
您需要 replace
space
到 "_"
(其他)
<input type='radio' value='pure_math_A2'>pure math A2
在另一边提交后你可以 replace "_"
到 space
这样你的问题就解决了
我相信您希望在缺少列值的地方插入一个替代值。有两种方式可以使列中的值看起来缺失。一种是列为 NULL 时,另一种是全是空格时。你没有说你的 table 如何记录缺失值,所以我将提供一个解决方案来处理这两种情况。
因此,您可以更改 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
而不是
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; ?>