将变量从Page1传递给Page2

时间:2015-07-18 07:05:31

标签: php

// Page 1 - 下面的代码工作正常,但是当我点击href链接时 //我想要的变量不会发送到第2页。

<?php
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
    echo '<tr>
            <td><a href="recipe_show.php?recipe_name=recipe_name"> ' . $row['recipe_name'] . ' </a></td>    
        </tr>';
    $recipe_name = $row['recipe_name']; 
    }
$_SESSION['recipe_name'] = $recipe_name;
    echo '</table>'; // Close the table
?>

// Page2 - Code below receives the variable from page 1, but only the    //last one in the table and not the one I clicked. 
include ('core/init.php'); // Connect to the database
$recipe_name = $_SESSION['recipe_name'];
    echo "My recipes is: ".$recipe_name."<br>";
 ?>

2 个答案:

答案 0 :(得分:2)

使用get请求尝试这样的事情。由于用户可以查看/更改数据,这不是最安全的方法,但是可以完成这项工作。会话不涉及此技术。

<?php
   while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
       echo '<tr><td>
             <a href="recipe_show.php?recipe_name='.$row['recipe_name'].'"> ' . $row['recipe_name'] . ' </a></td></tr>'; 
    }
    echo '</table>';
?>

// Page2

 <?php
    $recipe_name = $_GET['recipe_name'];
    echo "My recipes is: ".$recipe_name."<br>";
 ?>

答案 1 :(得分:0)

你在第2页中做错了

而不是会话使用$ _GET [&#39;&#39;];要从url获取值,我们使用$ _GET。

像这样:

$recipe_name = $_GET['recipe_name'];

我希望这会对你有所帮助。