403禁止复选框PDO / PHP语法发行PHPMYADMIN / WAMP

好的,所以我按照这个教程,谁知道,可能会或可能不准确。 当我选择提交时,我得到一个403错误。 和一半的PHP代码的屏幕。

从我坐的地方来看,这是一个语法错误,但在我的生活中,我无法弄清楚为什么。 我已经通过记事本++ phpdesigner和一些在线检查器来运行它。 他们中的大多数都表示没问题,但是lint检查显示出现了一个语法错误,除此之外,我被困住了。

起初我以为403错误是基于权限的,但是我回到了另一个项目,并且可以将数据添加到PHPMYADMIN数据库中,以便全部检出。 我已经发布了下面的代码,所以如果有人想让它一目了然,让我走上正确的道路,那会很棒。

由于某种原因,我无法让mysqli与我的apache进行交流,所以我坚持使用项目的pdo选项。 还没有想出如何解决这个问题。

谢谢

<?php
   $fruitArray = array('orange', 'apple', 'grapefruit', 'banana', 'watermelon');
   if(isset($_POST['btn_save']))
   {   try
       {  $dbcon = new PDO("mysql:host=localhost;dbname=my_db", 'root', 'password');
          $dbcon->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
       }  catch (PDOException $e) {echo $e->getMessage(); }

       if(isset( $_POST['fruit']))
       {  $values = array();
          foreach($_POST['fruit'] as $selection )
          {  if(in_array($selection, $fruitArray))
             {  $values[ $selection ] = 1; }
             else
             {  $values[ $selection ] = 0; }
          } // end of foreach.

          try // save user selection to the database
          {  $DBH = $dbcon->prepare("INSERT INTO table_fruit 
                      (orange, apple, grapefruit, banana, watermelon )
               VALUES (:DBorange, :DBapple, :DBgrapefruit, :DBbanana, :DBwatermelon)");
        $DBH->bindParam(':DBorange',     $values['orange']);
        $DBH->bindParam(':DBapple',      $values['apple']);
        $DBH->bindParam(':DBgrapefruit', $values['grapefruit']);
        $DBH->bindParam(':DBbanana',     $values['banana']);
        $DBH->bindParam(':DBwatermelon', $values['watermelon']);
        $DBH->execute();
           }  catch(PDOException $e) { echo 'Connection failed: ' . $e->getMessage(); }
      }
      else
      {  echo 'No checkbox selection made...'; }
   } // End of, if statement from the button check

?>

<span style="font-family: arial,helvetica,sans-serif; font-size: 12px;">
<html>
   <head>
      <title>Checkbox selection using PHP (using PDO) and MySQL v2</title>
   </head>
   <body>
      <h2>Pick your most favourite fruits:</h2>
      <form name="fruitcheckbox" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST">
         <input type="checkbox" name="fruit[]" value="orange"> Orange
         <input type="checkbox" name="fruit[]" value="apple"> Apple
         <input type="checkbox" name="fruit[]" value="grapefruit"> Grapefruit
         <input type="checkbox" name="fruit[]" value="banana"> Banana
         <input type="checkbox" name="fruit[]" value="watermelon"> Watermelon
         <br>
         <input type="submit" value="Save" name="btn_save">
      </form>
   </body>
</html> </span>

在HTML之后被执行。 无论是在IE,EDGE或CHROME中。

setAttribute(PDO :: ATTR_ERRMODE,PDO :: ERRMODE_EXCEPTION); } catch(PDOException $ e){echo $ e-> getMessage(); } if(isset($ _POST ['fruit'])){$ values = array(); foreach($ _ POST ['fruit'] as $ selection){if(in_array($ selection,$ fruitArray)){$ values [$ selection] = 1; } else {$ values [$ selection] = 0; }} // foreach结束。 尝试//将用户选择保存到数据库{$ DBH = $ dbcon-> prepare(“INSERT INTO table_fruit(orange,apple,grapefruit,banana,watermelon)VALUES(:DBorange,:DBapple,:DBgrapefruit,:DBbanana,:DBwatermelon )“); $ DBH-> bindParam(':DBorange',$ values ['orange']); $ DBH-> bindParam(':DBapple',$ values ['apple']); $ DBH-> bindParam(':DBgrapefruit',$ values ['grapefruit']); $ DBH-> bindParam(':DBbanana',$ values ['banana']); $ DBH-> bindParam(':DBwatermelon',$ values ['watermelon']); $ DBH->执行(); } catch(PDOException $ e){echo'连接失败:'。 $ E->的getMessage(); }}其他{回声'没有复选框选择作出...'; }} //结束,if语句从按钮检查?>挑选你最喜欢的水果:

橙色苹果葡萄柚香蕉西瓜

当我做出选择时,我会得到

http:// localhost / my-site / insertintodbpdo /%3C?php echo $ _SERVER ['PHP_SELF']; ?>您无权访问此服务器上的/ my-site / insertintodbpdo / <。

链接地址: http://www.djcxy.com/p/69171.html

上一篇: 403 Forbidden Checkboxes PDO/PHP Syntax Issue PHPMYADMIN/WAMP

下一篇: PDO PHP dual record insert