从页面到页面传递变量
问题描述:
我想通过$_GET
将变量从一个页面传递到另一个页面,我似乎无法使其工作。我将不胜感激任何帮助。从页面到页面传递变量
首先我根据数据库的结果创建一个链接。
require_once("../auth/config.class.php");
require_once("../auth/auth.class.php");
$config = new Config;
$dbh = new PDO("mysql:host={$config->dbhost};dbname={$config->dbname}", $config->dbuser, $config->dbpass);
$auth = new Auth($dbh, $config);
$uid = $auth->SessionUID($_COOKIE['authID']);
$query = $dbh->prepare("SELECT fname, lname, id FROM client WHERE uid=? ORDER by id");
$query->execute(array($uid));
$rslt = $query->fetchAll(PDO::FETCH_ASSOC);
foreach($rslt as $row){
echo "<a href=../pages/status.php?id=$row[id]>$row[fname]<br></a>";
}
从链接的结果会被这个网页上列出的clients.php
status.php
$cid = $_GET['id'];
$query = $dbh->prepare("SELECT function FROM funcbathing WHERE cid=?");
$query->execute(array($cid));
$rslt = $query->fetch(PDO::FETCH_ASSOC);
if (empty($rslt)){
header('Location: ../views/careplan.php');
echo $cid
}
else{
header('Location: ../views/home.php');
}
我想通过$cid
到这个页面在文本框中,但我似乎无法得到它的工作。这是id应该传递给的页面。
careplan.php这是一个更大的形式,但为简单起见,我删除了不相关的信息。
<input type="text" name="clientid" value="<?php if(isset($_GET['cid'])) { echo $_GET['cid']; } ?>" />
答
header('Location: ../views/careplan.php?cid='.$cid);
编辑: 你应该学会打印字符串中的有效庄园,检查的error_reporting(E_ALL);和display_errors = on与你的字符串。
那就试试这个:
echo '<a href="../pages/status.php?id='.$row["id"].'">'.$row["fname"].'<br></a>';
或:
echo sprintf('<a href="../pages/status.php?id=%s">%s<br></a>', $row['id'], $row['fname']);
甚至:
echo "<a href=\"../pages/status.php?id={$row["id"]}\">{$row["fname"]}<br></a>";
或任何其他数百名的方式来写一个有效的字符串
你'你必须在你的Locat中包含你的ID离子“也重定向,例如'Location:../ views/careplan.php?id = $ foo' – 2014-09-29 17:03:54
谢谢我将它改为'header('Location:../ views/careplan.php?cid ='。$ cid);' – Keez 2014-09-29 17:20:16