0

一段时间以来,我一直在努力思考这个问题,而关于 MySQL 和 MySQLi 的文档让我感到困惑。有没有可能得到任何帮助?

我有一个名为 track_table 的表,它包含两行 hash 和 track

    hash              |  track
    sdfsdfsdfsdfsdfsd |  Azelia Banks - 1991

我想显示曲目名称,但我不知道如何显示。我试过'mysqli_fetch_assoc'和其他各种功能,但没有。这是我到目前为止的查询。

    $hash = $_GET['sub'];

    $check_track = "SELECT track FROM track_table WHERE hash = '.$hash.' ";
    $track_res = mysqli_query($mysqli, $check_track) or die (mysqli_error($mysqli));

    $result = mysqli_fetch_assoc($track_res);
    echo $result['track'];

我只想能够在网页上显示曲目名称。

我知道我没有实现任何安全功能,并且我直接从用户那里获取数据,我将在稍后解决此问题后执行此操作。

4

2 回答 2

1

string-literal . variable . string-literal你的脚本部分有问题。

if ( !isset($_GET['sub']) ) {
    die('missing paraemter sub');
}

$check_track = "
    SELECT
        track
    FROM
        track_table
    WHERE
        hash = '".mysqli_real_escape_string($mysqli, $_GET['sub'])."'
";
$track_res = mysqli_query($mysqli, $check_track) or die (mysqli_error($mysqli));

$result = mysqli_fetch_assoc($track_res);
if ( !$result ) {
    echo 'no such record';
}
else {
    echo $result['track'];
}
于 2012-08-20T09:42:03.063 回答
-1

试试这个

$hash = mysql_real_escape_string($_GET['sub']);

$check_track = "SELECT track FROM track_table WHERE hash = '.$hash.' ";
$track_res = mysql_query($check_track) or die (mysql_error());

$result = mysql_fetch_assoc($track_res);
print_r($result);

确定表、列或输入类型的名称。我希望它会帮助你。

于 2012-08-20T10:10:07.637 回答