2016-02-11 149 views
2

我正在为我的学校作业建立一个基本的PHP网站,我意识到我没有收到我的保存PHP页面上的任何数据。之后,我将我的方法切换到GET,并且我的页面完美地工作。这是我的表单页面Xampp PHP服务器GET工作正常POST不工作

<form action="save-input.php" method="POST"> 
    <div class="form-group"> 
     <label for="todoTitle">Todo Title</label> 
     <input type="text" class="form-control" name="todoTitle" id="todoTitle" placeholder="Example Title" required> 
    </div> 
    <div class="form-group"> 
     <label for="todoShortExplanation">Short Explanation</label> 
     <input type="text" class="form-control" name="todoShortExplanation" id="todoShortExplanation" placeholder="Short Explanation for Todo"> 
    </div> 
    <div class="form-group"> 
     <label for="todoImportance">Importance Level: </label> 
      <?php 
      // Establish connection and check it's solid or not 
      try { 
       $conn = new PDO("mysql:host=hostname;dbname=databasename", 'username', 'password'); 
       $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 
       //echo "Connected successfully"; 
      } 
      catch(PDOException $e) 
      { 
       echo "Connection failed: " . $e->getMessage(); 
      } 
      // Create Query and prepare 
      $sql = 'SELECT * FROM todoImportance'; 

      $cmd = $conn->prepare($sql); 
      // Execure and fecth the data coming from DB 
      $cmd->execute(); 

      $datas = $cmd->fetchAll(); 

      // Close connection 
      $conn = null; 

      //echo '<pre>' . var_export($datas) . '</pre>'; 
      echo '<select name="todoImportance" id="todoImportance">'; 

      // Print out dropdown options 
      foreach($datas as $data) { 
       echo '<option value="' . $data['ImportanceColor'] . '">'. $data['importanceLevel'] . '</option>'; 
      } 

      echo '</select>'; 
      ?> 
    </div> 
    <div class="form-group"> 
     <label for="todo">Todo</label> 
     <textarea name="todo" id="todo" class="form-control" rows="4" required></textarea> 
    </div> 
    <div class="form-group"> 
     <label for="todoAlarmDate">Alarm Date</label> 
     <input type="date" class="form-control" name="todoAlarmDate" id="todoAlarmDate" min="<?php echo date("Y-m-d"); ?>"> 
    </div> 
    <button type="submit" class="btn btn-primary">Save</button> 
</form> 

当我从用户获得值后,我传递这些数据以保存页面。这里是我的页面我评论,因此它只是这个

<?php 
/** 
* Created by PhpStorm. 
* User: User 
* Date: 2016-02-09 
* Time: 3:50 PM 
*/ 


var_dump($_POST); 

结果是“array(0){}”。 我想补充一点如果我把它上传到实际的网络服务器,它的工作没有问题。在发布这篇文章之前,我做了一些研究,所以我查看了我的php.ini,我的post_max_size是128M。我认为问题是Xampp服务器,所以如果你们可以帮助我,我会很高兴。

+0

您已将表单方法作为POST并尝试使用GET进行打印。尝试var_dump($ _ REQUEST)来代替并参阅。 –

+0

对不起,我忘了改变,但邮政不工作在我提交我的任务之前,我改变了这是为什么得到。 –

回答

1

如果URL看起来像http://localhost:63342/ {PROJECT_NAME} /save-input.php,则表示您正在使用内置于Web服务器中的PhpStorm(或其他IDE)。

如果您想使用正确的Web服务器(例如Apache),那么请创建并配置Deployment条目,并将其标记为此项目的默认值 - 如果未指定部署(这是IDE从其中获取基本URL的地方)PhpStorm将使用内置的网络服务器。

这就是我解决问题的方法。