我希望第1栏 – 短名称基金的结果与每条记录的其他详细信息超链接.我该怎么办?或者只是调用指向另一个查询将运行的详细信息页面的链接会更好.这似乎更加静态.
这是我正在使用的示例查询.
$con = mysql_connect("localhost","root","");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("bdcarterascv2", $con);
$COD_PAIS = '3';
$F_HASTACORTE = '2012-03-31 01:00:00';
$result = mysql_query("SELECT mcarteras.DES_CARTERA_CC AS 'Short Name of Fund'
, mcarterasflias.DES_CARTERAFLIA AS 'I/C'
, msociedades.DES_SOCIEDAD_CORTO AS 'Fund Manager Company'
, mcarteras_clases.DES_CARTERACLASE AS 'Class'
, mcarteras_clasesesp.DES_CARTERACLASE_ESP AS 'Special Class'
, dr_rentmovil_carteras.POR_RENTCARTERA AS 'TTR year-to-date %'
, dficha_mes.POR_REMUNERA_COBRADA AS 'Mgmt Fee Effectively Charged'
, dficha_mes.POR_GASTOS_TOTALESC AS 'Total Expenses %'
, dficha_mes.VR_CARTERA_FCORTE AS 'Fund Size'
FROM mcarteras
INNER
JOIN mcarterasflias
ON mcarterasflias.ID_CARTERAFLIA = mcarteras.ID_CARTERAFLIA
INNER
JOIN msociedades
ON msociedades.ID_SOCIEDAD = mcarteras.ID_SOCIEDADADM
INNER
JOIN mcarteras_clases
ON mcarteras_clases.ID_CARTERACLASE = mcarteras.ID_CARTERACLASE
INNER
JOIN mcarteras_clasesesp
ON mcarteras_clasesesp.ID_CARTERACLASE_ESP = mcarteras.ID_CARTERACLASE_ESP
INNER
JOIN dr_rentmovil_carteras
ON dr_rentmovil_carteras.ID_CARTERA = mcarteras.ID_CARTERA
AND dr_rentmovil_carteras.COD_PAIS = $COD_PAIS
AND dr_rentmovil_carteras.F_HASTACORTE = '$F_HASTACORTE'
AND dr_rentmovil_carteras.ID_FORMATO = 1
AND dr_rentmovil_carteras. ID_COLUMNA = 5
INNER
JOIN dficha_mes
ON dficha_mes.ID_CARTERA = mcarteras.ID_CARTERA
AND dficha_mes.COD_PAIS = $COD_PAIS
AND dficha_mes.F_CORTE = '$F_HASTACORTE'
WHERE mcarteras.COD_PAIS = $COD_PAIS
AND mcarteras.ID_CARTERATIPO = 4
AND mcarteras.ID_CARTERAFLIA IN ( 3,4 )
AND mcarteras.IND_PUBLICACION = 1
AND mcarteras.COD_ESTADO= 1
")
or die(mysql_error());
// HTML ... Aliases from Mysql
echo "
Short Name of Fund | I/C | Fund Manager Company | Class | Special Class | TTR year-to-date % | Mgmt Fee Effectively Charged | Total Expenses % | Fund Size |
---|
//
specifies table row. for each (table data) will specify a new column. The $row specifies the mysql column name (in this case using an alias)while($row = mysql_fetch_array($result))
{
echo "
";echo "
" . $row['Short Name of Fund'] . "";echo "
" . $row['I/C'] . "";echo "
" . $row['Fund Manager Company'] . "";echo "
" . $row['Class'] . "";echo "
" . $row['Special Class'] . "";echo "
" . $row['TTR year-to-date %'] . "";echo "
" . $row['Mgmt Fee Effectively Charged'] . "";echo "
" . $row['Total Expenses %'] . "";echo "
" . $row['Fund Size'] . "";echo "
";}
echo "
";mysql_close($con);
?>
解决方法:
你要做的是,创建一个链接并将其映射到传统上最常用的ID或url安全名称.
我会将它超链接到另一个页面,因为我确定细节的格式与主表的格式不同.
在select语句中添加ID,或将以下内容更改为短名称:
...
echo "
{$row['Short Name of Fund']}";然后在page.php上:
SELECT ... WHERE ID = $_GET['ID'];
当然,停止使用mysql_ *代码套件,因为它已被弃用,不受支持,并且散布着不良的宣传.您应该使用PDO或MySQLi.
注意:以上内容不受SQL注入的保护.将您的驱动程序切换到PDO或MySQLi并使用一些安全感.
标签:php,mysql,hyperlink
来源: https://codeday.me/bug/20190709/1413957.html