2012-07-14 43 views
1

我试图使用$_GET[]挑ID,并将其分配给一个变量但是它不工作。当我尝试直接回显$_GET[]时,它可以很好地在页面上显示ID,但是当我将它分配给一个变量并尝试回显它时,它将无法正常工作。例如,这不会工作:

$sel_hotel = $_GET[]; 
echo $sel_hotel; 

的代码看起来很好有一个与它没有任何问题,但它只是不说值传递给变量i相信有可能是坏了我的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> 

回答

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; 
?> 
+0

你的代码是完美的 – 2012-07-14 17:07:35

+0

Dude你是曼 – 2012-07-14 17:08:24

+0

我还有一件事,如果它不是太多问,我使用PHP版本5.4.3与MAMP但错误不会显示在页面上。当出现错误时页面变为空白。我不知道在php.ini中的配置。 – 2012-07-14 17:11:19

1

您检索$ _GET复位后的值的变量在这两种情况下 - 它们都是空的,因为你正在清空它们。

1

的问题是,一旦您设置的变量,你清楚他们是一个空字符串。第二行是这个问题:

$sel_hotel = $_GET['hotl']; 
$sel_hotel =""; 

你试图用这个逻辑流程实现什么?我建议或者只是删除这些行或将它们移动到脚本的顶部,如果在运行时需要确保它们是空的。