我正在尝试使用$_GET[]
选择ID并将其分配给变量,但它不起作用。当我尝试直接回显$_GET[]
时,它可以很好地在页面上显示ID,但是当我将它分配给变量并尝试回显它时,它将无法正常工作。例如,这不会起作用:
$sel_hotel = $_GET[];
echo $sel_hotel;
代码看起来很好没有任何问题,但它只是没有将该值传递给变量我相信我的php.ini文件可能有问题,但我不确定。我正在使用PHP版本5.4.3。请帮忙 。非常感谢你
<?php
if(isset($_GET['hotl'])){
$sel_hotel = $_GET['hotl'];
$sel_hotel ="";
echo $sel_hotel;
}elseif(isset($_GET['room'])){
$sel_room = $_GET['room'];
$sel_room ="";
echo $sel_room;
}else{
$sel_hotel ="";
$sel_room ="";
}
echo $sel_hotel;
?>
<?php require_once("includes/header.php");?>
<?php require_once("includes/function.php");?>
<?php //require_once("TheDatabase.php")?>
<?php $connection = mysql_connect("localhost","root","root");
if(!$connection){
die("Database Connection Failed :". mysql_error());
}else{
$db_select = mysql_select_db("travelnstay", $connection);
if(!$db_select){
die("Database Selection Failed:". mysql_error());
}
}
?>
<div class="Calign">
<div class="mar">
<div>
<p>Menu</p>
<?php
$hotel_set = select_all_hotels();
while($hotel = mysql_fetch_array($hotel_set)){
echo "<p class=\"mar\"><a href=\"admincontent.php?hotl=" .
urlencode($hotel["hotel_id"]).
"\">{$hotel["hotel_name"]}</a></span></p>";
$room_set = room_by_id($hotel["hotel_id"]);
echo "<ul>";
while($room= mysql_fetch_array($room_set)){
echo "<li><a href=\"admincontent.php?room=". urlencode($room["room_id"]).
"\">{$room["room_type"]}</a></li>";
echo"</ul>";
}
}
echo "<p> Its is suppose to be here".$sel_hotel."</p>";
echo "<p>". $sel_room. "</p>";
?>
</div><!--end of the mar-->
</div><!--end of the Calign-->
</body>
</html>
答案 0 :(得分:3)
每次从$_GET
设置变量时,都会在...后删除它们。
尝试:
<?php
$sel_hotel = "";
$sel_room = "";
if(isset($_GET['hotl']))
{
$sel_hotel = $_GET['hotl'];
echo $sel_hotel;
}
elseif(isset($_GET['room']))
{
$sel_room = $_GET['room'];
echo $sel_room;
}
echo $sel_hotel;
?>
答案 1 :(得分:1)
在两种情况下检索$ _GET值后重置变量 - 它们是空的,因为你正在清空它们。
答案 2 :(得分:1)
问题是,一旦设置了变量,就将它们清除为空字符串。第二行是问题:
$sel_hotel = $_GET['hotl'];
$sel_hotel ="";
你想通过这种方式实现什么样的逻辑流程?我建议你只是删除那些行或将它们移到脚本的顶部,如果你需要确保它们在运行时是空的。