我需要将年份作为链接中的变量传递,以便通过get语句获取


I need the year needs to be passed as a variable in the link so it can be grabbed via a get statement

我的html页面。我有这条线。

<a href="Player_Roster.php?inputyr=2011">2011</a><br />

我的php页面。我有这行代码。

<?php
$inputyr = $_GET[inputyr];
$query = "SELECT * FROM players
WHERE playeryear = $inputyr;
ORDER BY number";
$players = mysql_query($query);
?>

我希望我的php页面使用2011年进行查询。

我点击链接后,它会打开页面。它确实显示。。。但是球员们不填表。如果我在2011中手动键入,那么查询确实有效。

$inputyr之后的查询中多了一个分号。请尝试以下操作。

$query = "SELECT * FROM players
    WHERE playeryear = $inputyr
    ORDER BY number";

您还应该对放入sql字符串中的任何内容进行转义。理论上,有人现在可以用精心制作的$inputyr值对你的数据库做非常糟糕的事情

//protect against sql injection
$inputyr = mysql_real_escape_string($inputyr)
$query = "SELECT * FROM players
    WHERE playeryear = $inputyr
    ORDER BY number";

您需要$inputyr周围的单引号。

<?php
$inputyr = $_GET[inputyr];
$query = "SELECT * FROM players
WHERE playeryear = '$inputyr'
ORDER BY number";
$players = mysql_query($query);
?>