我正在尝试编写一个cgi脚本,该脚本使用mysql查询从MySQL数据库中读取数据并将数据存储在变量中。变量输出使用HTML
显示为了保留MySQL Query输出的原始格式,我使用了""显示变量值的字符,如此处所示。 How to get proper tabular output like the mysql command line from a bash script
但看起来在HTML中显示变量值时不保留原始格式。
这是MySQL Query
的输出mysql -uroot -ptest -D mysql -e "select host,db from db " ;
+-----------+---------+
| host | db |
+-----------+---------+
| www | test |
| web | test |
| localhost | bugs |
| localhost | hrm |
| localhost | ohrm |
| localhost | otrs |
+-----------+---------+
6 rows in set (0.00 sec)
使用HTML
显示时,相同的输出如下所示 host db www test web test localhost bugs localhost hrm localhost ohrm localhost otrs
以上输出的HTML代码段如下
#!/bin/bash
echo "Content-type: text/html"
echo ""
echo "<html>"
echo "<body>"`
var=`mysql -h 127.0.0.1 -u root -p redhat -D mysql -e "select host,db from db;"`
echo "$var"
echo "</body>"
echo "</html>"
如何在HTML中保留原始输出的格式。请建议。
答案 0 :(得分:2)
您可以在执行mysql查询时添加-H
或--html
命令行参数以获取HTML表输出。使用text/html
mime类型。
修改您的查询:
mysql -h 127.0.0.1 -u root -p redhat -H -D mysql -e "select host,db from db;"