2015-09-28 4 views
-3

У меня проблема, которая может быть проблемой синтаксиса, но я не могу понять, что я делаю неправильно. Я создал форму, и когда я нажимаю кнопку «Отправить», данные в форме не отправляются в мою базу данных mysql.Кнопка отправки не отправляет данные формы в базу данных MySQL

Вот мой HTML код

<div class="content-wrapper"> 
    <div class="container"> 
    <div class="row"> 
     <div class="col-md-10"> 
     <h1 class="page-head-line">Forms </h1> 
     </div> 
    </div> 
    <div class="row"> 
     <div class="col-md-10"> 
     <div class="panel panel-default"> 
      <div class="panel-heading"> 
      BASIC FORM ELEMENTS 
      </div> 
      <div class="panel-body"> 
      <form method="post" action="insert.php" > 
       <div class="form-group"> 
       <label for="name">Name</label> 
       <input name="name' type="text" class="form-control" id="name" placeholder="Enter your name" required/> 
                              </div> 
         <div class="form-group"> 
         <label for="project_num">OIT-GIS Project Number</label> 
         <input name="project_num' type="text" class="form-control" id="project_num" placeholder="OIT-GIS Project Number" /> 
                                     </div> 
           <div class="form-group"> 
            <label for="project_name">Project Name</label> 
            <input name="name' type="text" class="form-control" id="project_name" placeholder="Project Name" required/> 
       </div> 
       <div class="form-group"> 
       <label for="easyvista">EasyVista Ticket Number</label> 
       <input name="easyvista' type="text" class="form-control" id="easyvista" placeholder="EasyVista Ticket Number" /> 
         </div> 
         <div class="form-group"> 
         <label for="agency">Requestor/Agency</label> 
         <input name="agency' type="text" class="form-control" id="agency" placeholder="Requestor or Agency" /> 
           </div> 
           <div class="form-group"> 
            <label for="description">Description of Work:</label> 
            <input name="description' type="text" class="form-control" id="agency" placeholder="Description" /> 

       </div> 
       <div class="form-group"> 
       <label for="input-date">Enter Today Date</label> 
       <input name="input-date' type="date" value=""> 
         <span class="result"></span> 
         </div> 
         <div class="form-group"> 
         <div class="col-md-10"> 
          <input id="submit" name="submit" type="submit" class="btn btn-primary"> 
         </div> 
         </div> 
      </form> 


      </div> 
     </div> 

и вот мой PHP

<?php 

echo $POST; 
    error_reporting(E_ALL); 
    ini_set('display_errors', 1); 
    include("../includes/config.php"); 

if (isset($_POST['submit'])) { 
     echo $_POST['submit']; 
     $name = $_POST['name']; 
     $projectnum = $_POST['project_num']; 
     $projectname = $_POST['project_name']; 
     $easyvista = $_POST['easyvista']; 
     $agency = $_POST['agency']; 
     $description = $_POST['description']; 
     $startDate = $_POST['input-date']; 

    $sql="INSERT INTO statusreport(name, project_num, project_name, easyvista, agency, description) 
      VALUES 
      ('$name','$projectnum', '$projectname', '$easyvista', '$agency', '$description')";   

    if (!mysqli_query($conn, $sql)) 
     { 
     die('Error: ' . mysqli_connect_error($conn)); 
     } 
    echo "Entry is recored <br/>"; 
    echo "Name:", $name, "<br/>"; 
    echo "test..................<br/>", $name; 
    /*header("location: http://10.1.7.129//gisadmin/admin/forms.php");*/ 

    //echo "<script>setTimeout(\"location.href = 'http://10.1.7.129//gisadmin/admin/forms.php';\",700);</script>"; 
    mysqli_query($conn, $sql); 
} 
else { 
    echo "No data"; 
} 
?> 

Любая помощь будет принята с благодарностью. Благодаря

+0

[Ваш скрипт находится в опасности для SQL Injection атак.] (Http://stackoverflow.com/questions/60174/how-can- i-prevent-sql-injection-in-php) –

+0

это синтаксическая ошибка, с одной стороны, «echo $ POST;» и она выдает вам неопределенное уведомление переменной $ –

+0

, а затем «name =» xxx'' - copy/паста получила лучшее из вас. –

ответ

1

У вас есть смешивание одиночных и двойных кавычек здесь, атрибуты имен открывают значение в двойных кавычках и закрытии одинарных кавычек, должно быть следующими:

<form method="post" action="insert.php" > 
    <div class="form-group"> 
     <label for="name">Name</label> 
     <input name="name" type="text" class="form-control" id="name" placeholder="Enter your name" required/> 
    </div> 
    <div class="form-group"> 
     <label for="project_num">OIT-GIS Project Number</label> 
     <input name="project_num" type="text" class="form-control" id="project_num" placeholder="OIT-GIS Project Number" /> 
    </div> 
    <div class="form-group"> 
     <label for="project_name">Project Name</label> 
     <input name="project_name" type="text" class="form-control" id="project_name" placeholder="Project Name" required/> 
    </div> 
    <div class="form-group"> 
     <label for="easyvista">EasyVista Ticket Number</label> 
     <input name="easyvista" type="text" class="form-control" id="easyvista" placeholder="EasyVista Ticket Number" /> 
    </div> 
    <div class="form-group"> 
     <label for="agency">Requestor/Agency</label> 
     <input name="agency" type="text" class="form-control" id="agency" placeholder="Requestor or Agency" /> 
    </div> 
    <div class="form-group"> 
     <label for="description">Description of Work:</label> 
     <input name="description" type="text" class="form-control" id="agency" placeholder="Description" /> 

    </div> 
    <div class="form-group"> 
     <label for="input-date">Enter Today Date</label> 
     <input name="input-date" type="date" value=""> 
     <span class="result"></span> 
    </div> 
    <div class="form-group"> 
     <div class="col-md-10"> 
      <input id="submit" name="submit" type="submit" class="btn btn-primary"> 
     </div> 
    </div> 
</form> 

А потом, как @ Фред -II заявил в своем комментарии, скрипт PHP неправильно:

echo $POST; 

Эта линия не так, нет переменной с именем $POST перед этим кодом.

+0

Спасибо, что отрезали его, это помогло. Я не понимал, что перепутал свои цитаты. Тем не менее, я все еще получаю ошибку для одного из полей Примечание: Неопределенный индекс: имя_проекта в C: \ Program Files (x86) \ Ampps \ www \ gisadmin \ admin \ insert.php в строке 10 Как я могу найти что вызывает эту проблему? –

+0

Да, проверьте редактирование, вы отправляете ввод как имя, а не имя_проекта. помните, что атрибут имени ввода будет ключом в массиве $ _POST. – taxicala

+0

Да, я понимаю, что вы имеете в виду. Спасибо, это было очень полезно, и он отлично работает. –

0

Вы получаете сообщение об успешной работе, но база данных не обновляется ИЛИ Получение полной ошибки ... ???

1) Проверьте двойные кавычки и одинарные кавычки ..

<div class="form-group"> 
     <label for="name">Name</label> 
     <input name="name" type="text" class="form-control" id="name" placeholder="Enter your name" required/> 
    </div> 

2) Также проверьте путь ... для

include("../includes/config.php"); 

это правильно или нет ...?

3)

<label for="project_name">Project Name</label> 
<input name="name' type="text" 

ДОЛЖНЫ БЫТЬ

<label for="project_name">Project Name</label> 
<input name="project_name" type="text" 
+0

В настоящее время я получаю ошибку, что говорит Отправить Примечание: Не определено индекс: имя в C: \ Program Files (x86) \ Ampps \ WWW \ gisadmin \ админ \ insert.php на линии 10 Примечание: Undefined индекс: project_num в C: \ Program Files (x86) \ Ampps \ www \ gisadmin \ admin \ insert.php в строке 11 Примечание: Неопределенный индекс: имя_проекта в C: \ Program Files (x86) \ Ampps \ www \ gisadmin \ admin \ insert.php в строке 12 включают ("../ includes/config.php"); правильно –

+0

делать ли вы пробовали одинарные кавычки и двойные кавычки? например

+0

Да, taxicala помог мне с этой частью. –