2017-04-21 5 views
0

私はlocalhost上のデータベースにデータを挿入するためのフォームを設計しました。データベースへの単一ページフォームアプリケーションへの挿入

<form action='' method='post'> 
<input type='submit' name='CRUD' value='New Data'> 
<br><br> 
<input type='submit' name='CRUD' value='Retrieve Data'> 
<br> 

<hr> 
</form> 

<?php 
error_reporting(0); 
$x = $_POST['CRUD']; 

if ($x == "New Data") { 
    require 'part1.php'; 
} 
?> 

次に、別のファイルにデータを挿入するためのフォームを作成しました。

<form method='post'> 
<label for='site'>Name: </label> 
<input type='text' name='site'> 
<br><br> 

<label for='date'>Date: </label> 
<input type='date' name='time'> 
<br><br> 

<label for='page'>Web URL: </label> 
<input type='url' name='page'> 
<br><br> 

<label for='desc'>Description: </label> 
<input type='text' name='desc'> 
<br><br> 

<input type='submit' name='finish' value='Go'><input type="reset"> 
</form> 

<?php 

if (!empty($_POST)){ 

    $servername = "localhost"; 
    $username = "root"; 
    $password = ""; 
    $dbname = "assignment5"; 

    $resource = $_POST['site']; 
    $date = $_POST['time']; 
    $url = $_POST['page']; 
    $explain = $_POST['desc']; 

    // Create connection 
    $conn = new mysqli('localhost', 'root', $password, $dbname) or 
    die("Unable to connect"); 

    // Check connection 
    if ($conn->connect_error) { 
     die("Connection failed: " . $conn->connect_error); 
    } 

    $sql = "INSERT INTO thedata (date, Name, URL, Description) 
    VALUES ('$date', '$resource', '$url', '$explain')"; 

    if (mysqli_query($conn, $sql)) { 
     echo "New record created successfully"; 
    } else { 
     echo "Error: " . $sql . "<br>" . mysqli_error($conn); 
    } 

    $conn->close(); 
} 
?> 

自分自身では意図したとおりに動作しますが、私が必要とするのは同じページに両方のフォームを持つことです。これを行うと、デフォルトのデータが挿入され、フォームの入力ではないエラーが発生します。

答えて

0

2つのフォームを同じページに配置する場合は、各フォームに送信ボタンを付ける必要があります。同じフォームに同じ送信ボタンを使用することに注意してください。

関連する問題