2012-05-22 248 views
0

我試圖從URL查詢字符串中獲取變量。但不知何故,它只有一個變量,而不是從查詢字符串中獲取所有變量。我真的不知道我的代碼出了什麼問題。下面是我想從無效形式打印出錯誤代碼:從查詢字符串獲取變量

<?php  
      displayForm(); 
      function displayForm(){ 
       ?>      
       <form action="./prod_add_action.php" method="post" name="addproductForm"> 
        <fieldset> 
         <legend>Online Ordering System Setup</legend>       
         <label for="product_name">Product Name: </label><input type="text" name="product_name" value="" /><?php echo $_GET["name_error"]; ?> 
         <label for="product_date">Product Date: </label><input type="text" name="product_date" value="" /><?php echo $_GET["date_error"]; ?> 
         <label for="product_price">Product Price: </label><input type="text" name="product_price" value="" /><?php echo $_GET["price_error"]; ?> 
         <input name="add_button" type="submit" value="Add" /> 
         <input name="reset_button" type="reset" value="Clear" /> 
        </fieldset> 
       </form> 
       <?php 
      } 
      ?> 

,這裏是我創建的查詢字符串的代碼:

$query_string = "name_error=" .urlencode($name_error) ."&amp;date_error=" .urlencode($date_error) ."&amp;price_error=" .urlencode($price_error); 
      header("Location: ./prod_add.php?$query_string"); 
      exit();    

在第一個代碼,頁面僅打印第一$ _GET ['name_error'],它應該包括$ _GET ['date_error']和$ _GET ['price_error。 '] 這是地址:

回答

3

您應該使用&代替&amp;的?

$query_string = "name_error=" .urlencode($name_error) ."&date_error=" .urlencode($date_error) ."&price_error=" .urlencode($price_error); 
      header("Location: ./prod_add.php?$query_string"); 
      exit(); 
+1

嚴,無需HTML逃生&S的URL,如果被用來做什麼,他們都應該用於(分離數據)他們。 – petschekr

+0

是的,我現在可以看到它,那是我的不好。非常感謝你,它是固定的:) – babygau

1

變化&amp;&爲:

$query_string = "name_error=" . urlencode($name_error) . "&date_error=" . urlencode($date_error) . "&price_error=" . urlencode($price_error); 
header("Location: ./prod_add.php?$query_string"); 
exit(); 
+0

Tks,我修好了:) – babygau