PHP 不会将变量传递给其他页面


PHP not passing variable to other page

我正在尝试将变量从一个页面传递到另一个页面。但是,当我尝试使用 php 获取变量时,它只是将其作为字符串传递给另一个页面。

'<a href="selected.php?varname=<?php echo $row[title]; ?>">' . $row['title'] . '</a>'

这是表格中的一个单元格,是一个链接,单击该链接时应转到带有标题的另一页。但是,相反,我得到了这个。

数组(大小 = 1) 'varname' => 字符串 '' (长度 = 26)

        <?php
        $mysqli = mysqli_connect('localhost','scott','tiger','courses');
        if(mysqli_connect_errno($mysqli)) {
            echo 'Failed to connect to MySQL: ' . mysqli_connect_error();
        }
        class Courses
        {
            public $title;
            public $id;
            public $award;
        }

        $res = mysqli_query($mysqli, "SELECT title,id,award FROM course LIMIT 10");
        echo "<table align='center' style='margin: 0px auto;'>";
        while($row = $res->fetch_assoc()) {
            $courses = new Courses;
            $courses->title = $row['title'];
            $courses->id = $row['id'];
            $courses->award = $row['award'];
            $varname = $row['title'];
            echo "<tr><td style='padding-right:25px'>" . '<a href="selected.php?varname=<?php echo $row[title]; ?>">' . $row['title'] . '</a>' . "</td><td style='padding-right:25px'>" . $row['id'] . "</td><td style='padding-right:25px'>" . $row['award'] . "</td></tr>";
        }
    ?>

这就是 php 代码的其余部分。

            <?php
            $var_value = $_GET['varname'];
            echo serialize($var_value);
            var_dump($_GET);
            exit;

这是我尝试在另一页中获取它的地方

重写代码如下

"<a href='selected.php?varname=$row[title]'>$row['title']</a>"

正如文档中所说

双引号字符串最重要的特征是 变量名称将被扩展