2016-04-05 25 views
0

我試圖創建一個簡單的博客條目表單,用戶輸入標題,博客條目並提交它。然後,表單應該使用插入查詢將「博客條目」插入到MYSQL中。PHP博客條目未提交到MySQL數據庫

我得到沒有錯誤。 當我提交表單時,沒有任何更改,數據庫沒有新條目。

<?php 

session_start(); 

date_default_timezone_set('America/Mexico_City'); 

if (!isset($_SESSION['usuario_usuario'])) { 

    header("Location: login"); 

} else { 

    include_once 'config.php'; 

    $guardar_post = $conn -> prepare("INSERT into entries (post_title, post_content, created_at, updated_at) VALUES (:titulo_post, :contenido_post, :created_at, :updated_at);"); 
    $guardar_post ->bindParam(":titulo_post", $titulo_post); 
    $guardar_post ->bindParam(":contenido_post", $contenido_post); 
    $guardar_post ->bindParam(":created_at", $created_at); 
    $guardar_post ->bindParam(":updated_at", $updated_at); 

    if (isset($_POST['enviar'])) { 
     $titulo_post = $_POST['titulo']; 
     $contenido_post = $_POST['editor1']; 
     $created_at = date("Y-m-d H:i:s"); 
     $updated_at = date("Y-m-d H:i:s"); 

     $guardar_post -> execute(); 
    } 
} 

?> 

<!DOCTYPE html> 
<html lang="en"> 

<head> 

<meta charset="utf-8"> 
<meta http-equiv="X-UA-Compatible" content="IE=edge"> 
<meta name="viewport" content="width=device-width, initial-scale=1"> 
<meta name="description" content=""> 
<meta name="author" content=""> 

<title>SB Admin 2 - Bootstrap Admin Theme</title> 

<!-- Bootstrap Core CSS --> 
<link href=" bower_components/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet"> 

<!-- MetisMenu CSS --> 
<link href=" bower_components/metisMenu/dist/metisMenu.min.css" rel="stylesheet"> 

<!-- Custom CSS --> 
<link href=" dist/css/sb-admin-2.css" rel="stylesheet"> 

<!-- Custom Fonts --> 
<link href=" bower_components/font-awesome/css/font-awesome.min.css" rel="stylesheet" type="text/css"> 

<!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries --> 
<!-- WARNING: Respond.js doesn't work if you view the page via file:// --> 
<!--[if lt IE 9]> 
<script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script> 
<script src="https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script> 
<![endif]--> 

<!-- CKEditor --> 
<script src="ckeditor/ckeditor.js"></script> 

</head> 

<body> 

<div id="wrapper"> 
<!-- Navigation --> 
<?php include_once 'nav.php'; ?> 


<!-- Page Content --> 
<div id="page-wrapper"> 
    <div class="container-fluid"> 
     <div class="row"> 
      <div class="col-lg-12"> 
       <h1 class="page-header">Nuevo Post</h1> 
      </div> 
      <!-- /.col-lg-12 --> 
     </div> 
     <!-- /.row --> 
     <div class="row"> 
      <div class="col-lg-12"> 
       <div class="panel panel-default"> 
        <div class="panel-heading"> 
         Redactar nuevo post 
        </div> 
        <div class="panel-body"> 
         <div class="row"> 
          <div class="col-lg-10"> 
           <form role="form"> 
            <div class="form-group"> 
             <label>Título</label> 
             <input class="form-control" name="titulo"> 
             <p class="help-block">Entre el titulo del post.</p> 
            </div> 
           </form> 
          </div> 
          <div class="col-lg-10"> 
           <div class="form-group"> 
            <label>Text area</label> 
            <textarea name="editor1" id="editor1" class="form-control" rows="15"></textarea> 
           </div> 
          </div> 


         </div> 
         <div class="row"> 
          <div class=" col-lg-5"> 
           <p> 
            <button type="button" class="btn btn-outline btn-success" name="enviar">Enviar</button> 
            <button type="button" class="btn btn-outline btn-danger">Borrar</button> 

           </p> 
          </div> 
         </div> 
        </div> 
       </div> 
      </div> 
     </div> 
     <!-- /.container-fluid --> 
    </div> 
    <!-- /#page-wrapper --> 

</div> 
<!-- /#wrapper --> 

<!-- jQuery --> 
<script src=" bower_components/jquery/dist/jquery.min.js"></script> 

<!-- Bootstrap Core JavaScript --> 
<script src=" bower_components/bootstrap/dist/js/bootstrap.min.js"></script> 

<!-- Metis Menu Plugin JavaScript --> 
<script src=" bower_components/metisMenu/dist/metisMenu.min.js"></script> 

<!-- Custom Theme JavaScript --> 
<script src=" dist/js/sb-admin-2.js"></script> 

<!-- Replace the <textarea id="editor1"> with a CKEditor --> 
<script>CKEDITOR.replace('editor1');</script> 

config.php文件是:

<?php 

$base = "mysql:host=localhost;dbname=bworld"; 

try { 
    $conn = new PDO($base, 'diego', 'diego'); 
} catch (PDOException $e) { echo $e; } 

有誰知道我在做什麼錯。我是PHP的新手,我不知道如何在沒有錯誤的情況下調試問題!

+0

首先:你確定錯誤啓用?在腳本的開頭寫入'ini_set('display_errors',1); ini_set('display_startup_errors',1); error_reporting(E_ALL);''。其次,'$ guardar_post-> execute();'將返回'true'或'false' - 如果它返回'false',用'print_r($ guardar_post-> errorInfo())檢查錯誤;'如:if (!$ guardar_post-> execute()){print_r($ guardar_post-> errorInfo()); }' – Ben

+2

它也看起來像你在綁定if語句內的參數後設置值。 – Naterade

+0

在PHP中獲取錯誤消息是非常棘手的,因爲它將它們與壞人隱藏起來。好的想法在[這個答案](http://stackoverflow.com/a/24142528/673991)。 –

回答

0

它正在與method = post<form>標籤
所以解決,sef4eg是對的。

下面是代碼:

<div class="panel-body"> 
    <form role="form" action="" method="post"> 
    <div class="row"> 
     <div class="col-lg-10"> 
      <div class="form-group"> 
       <label for="titulo">Título</label> 
       <input id="titulo" class="form-control" name="titulo"> 
       <p class="help-block">Entre el titulo del post.</p> 
      </div> 
     </div> 
     <div class="col-lg-10"> 
      <div class="form-group"> 
       <label for="editor1">Text area</label> 
       <textarea name="editor1" id="editor1" class="form-control" rows="15"></textarea> 
      </div> 
     </div> 
    </div> 
    <div class="row"> 
     <div class=" col-lg-5"> 
      <p> 
       <button type="submit" class="btn btn-success btn-success" name="enviar">Enviar</button> 
       <button type="button" class="btn btn-outline btn-danger">Borrar</button> 
      </p> 
     </div> 
    </div> 

    </form> 
</div> 
1

你必須把所有的領域裏面<form>標籤包括您的提交按鈕

我還添加了type="submit"Enviar按鈕

<div id="wrapper"> 
<!-- Navigation --> 
<?php include_once 'nav.php'; ?> 

<!-- Page Content --> 
<div id="page-wrapper"> 
    <div class="container-fluid"> 
     <div class="row"> 
      <div class="col-lg-12"> 
       <h1 class="page-header">Nuevo Post</h1> 
      </div> 
      <!-- /.col-lg-12 --> 
     </div> 
     <!-- /.row --> 
     <div class="row"> 
      <div class="col-lg-12"> 
       <div class="panel panel-default"> 
        <div class="panel-heading"> 
         Redactar nuevo post 
        </div> 
        <div class="panel-body"> 
         <form role="form"> 
          <div class="row"> 
           <div class="col-lg-10">         
            <div class="form-group"> 
             <label>Título</label> 
             <input class="form-control" name="titulo"> 
             <p class="help-block">Entre el titulo del post.</p> 
            </div> 
           </div> 
           <div class="col-lg-10"> 
            <div class="form-group"> 
             <label>Text area</label> 
             <textarea name="editor1" id="editor1" class="form-control" rows="15"></textarea> 
            </div> 
           </div> 
          </div> 
          <div class="row"> 
           <div class=" col-lg-5"> 
            <p> 
             <button type="button" class="btn btn-outline btn-success" name="enviar" type="submit">Enviar</button> 
             <button type="button" class="btn btn-outline btn-danger">Borrar</button> 
            </p> 
           </div> 
          </div> 
         </form> 
        </div> 
       </div> 
      </div> 
     </div> 
     <!-- /.container-fluid --> 
    </div> 
    <!-- /#page-wrapper --> 
</div> 
<!-- /#wrapper -->