2016-04-21 64 views
0

我试图将变量从一个页面传递到另一个页面。但是,当我尝试使用PHP获取变量时,它只是将其作为字符串传递给其他页面。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; 

这是我设法得到它在其他页面

+0

你已经在PHP中。只要把字符串放在一起。 ''' . $row['title'] . ''' – Qirel

+0

发布完整的表单和表格,以及获取数据的PHP代码(POST或GET?)。 –

+0

Qirel的解决方案非常完美!非常感谢你!我想我只是迷惑自己。 –

回答

0

重写代码如下

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

正如docs

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