簡體   English   中英

php 不會插入到 mysql 中。 沒有錯誤

[英]php won't insert into mysql. no errors

我創建了 php 和 mysql 數據庫和表。 這是我的代碼:

 <form action="proba.php" method="post" /> <p> ime: <input type="text" name="ime" /></p> <p> prezime: <input type="text" name="prezime" /></p> <p> datum rodjenja: <input type="text" name="godiste" /></p> <p> jmbg: <input type="text" name="jmbg" /></p> <p> adresa: <input type="text" name="adresa" /></p> <p> email: <input type="text" name="email" /></p> <p> telefon: <input type="text" name="telefon" /></p> <p> datum: <input type="text" name="datum" /></p> <input type="submit" value="insert" /> </form>

這是我與 mysql 連接的代碼

 <?php $link = mysqli_connect("127.0.0.1", "root", "1511", "test"); if (!$link) { echo "Error: Unable to connect to MySQL." . PHP_EOL; echo "Debugging errno: " . mysqli_connect_errno() . PHP_EOL; echo "Debugging error: " . mysqli_connect_error() . PHP_EOL; $db_selected = mysql_select_db ('test', $link); if (!$db_selected) { die('nedostupno ' . test . ' : ' . mysql_error ()); } $values = $_POST['ime']; $values2 = $_POST['prezime']; $values3 = $_POST['godiste']; $values4 = $_POST['jmbg']; $values5 = $_POST['adresa']; $values6 = $_POST['email']; $values7 = $_POST['telefon']; $values8 = $_POST['datum']; $sql = "INSERT INTO users (ime, prezime, godiste, jmbg, adresa, emal, telefon, datum) VALUES ('values', 'values2', 'values3', 'values4', 'values5', 'values6', 'values7', 'values8')"; } echo 'Connected successfully'; ?>

這是mysql:

mysql

您犯了一些錯誤,因此查詢可能沒有將數據插入到 phpmyadmin 數據庫中。 您犯的基本錯誤是在插入查詢中沒有連接您想要在VALUES部分中的VALUES ,插入語句的語法將是這樣的。

插入語法:

INSERT INTO table_name (column1, column2, column3,...) VALUES (value1, value2, value3,...)

注意:如果某列是AUTO_INCREMENT(如“id”列)或TIMESTAMP(如“reg_date”列),則無需在SQL查詢中指定; MySQL 會自動添加該值。

因此,基本形式將與您在問題中顯示的相同。 我在提交按鈕上單獨添加了一個名稱並重新修改了它。

HTML 表格:

<form action="proba.php" method="post" />
    <p> ime: <input type="text" name="ime" /></p>
    <p> prezime: <input type="text" name="prezime" /></p>
    <p> datum rodjenja: <input type="text" name="godiste" /></p>
    <p> jmbg: <input type="text" name="jmbg" /></p>
    <p> adresa: <input type="text" name="adresa" /></p>
    <p> email: <input type="text" name="email" /></p>
    <p> telefon: <input type="text" name="telefon" /></p>
    <p> datum: <input type="text" name="datum" /></p>    
    <input type="submit" name="save" value="insert" />
</form>

你的proba.php看起來就像我在下面編碼的那樣。

<?php
//Database connection Part of Mysqli
$host="localhost";
$user="root";
$password="1511";
$db="test";
$conn=new mysqli($host,$user,$pass,$db);
// Print Error if the connection is failed.
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}
// Print Error if the DB is not selected.
if (!mysqli_select_db($conn, $db)) {
    die("Uh oh, couldn't select database --> $db" . $conn->connect_error . ' >');
}
if(isset($_POST['save']))
{
    $values = $_POST['ime'];
    $values2 = $_POST['prezime'];
    $values3 = $_POST['godiste'];
    $values4 = $_POST['jmbg'];
    $values5 = $_POST['adresa'];
    $values6 = $_POST['email'];
    $values7 = $_POST['telefon'];
    $values8 = $_POST['datum'];
    $sql = "INSERT INTO users (`ime`, `prezime`, `godiste`, `jmbg`, `adresa`, `emal`, `telefon`, `datum`) VALUES ('".$values."', '".$values2."', '".$values3."', '".$values4."', '".$values5."', '".$values6."', '".$values7."', '".$values8."')";
    $query = mysqli_query($conn,$sql);
    echo 'Inserted successfully';
}
?>

注意:您首先將echo放入 Insert 語句,然后通過放入exit 來中斷執行 復制回顯的語句,放到數據庫的SQL中,然后檢查插入是否有錯誤。 如果沒有出現錯誤,刪除echo並刪除exit;

並且您正在成功插入數據。 希望所以我會對未插入數據庫的數據給出明確的解釋。

做這樣的事情:

$values = $_POST['ime'];
$values2 = $_POST['prezime'];
$values3 = $_POST['godiste'];
$values4 = $_POST['jmbg'];
$values5 = $_POST['adresa'];
$values6 = $_POST['email'];
$values7 = $_POST['telefon'];
$values8 = $_POST['datum'];


$sql = "INSERT INTO users (ime, prezime, godiste, jmbg, adresa, emal, telefon, datum) VALUES ('".$values."', '".$values2."', '".$values3."', '".$values4."', '".$values5."', '".$values6."', '".$values7."', '".$values8."')";
mysqli_query($link,$sql);

從第一個錯誤開始。

  • 您已在服務器連接對象無法連接的情況下添加了成功代碼。
  • 當您使用 mysqli_connect 進行服務器連接時,為什么要使用 mysql_connect。
  • 缺少查詢執行行。 即 mysqli_query($link, $sql)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM