php不会插入mysql。没有错误

时间:2016-09-16 08:57:13

标签: php mysql

我创建了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>
&#13;
&#13;
&#13;

这是我用mysql连接的代码

&#13;
&#13;
<?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';

?>
&#13;
&#13;
&#13;

这是mysql:

mysql

3 个答案:

答案 0 :(得分:1)

您犯了一些错误,因此查询可能无法将数据插入phpmyadmin数据库。你所做的基本错误是在插入查询中没有连接你想要在VALUES部分中的值,而insert语句的语法就是这样。

插入语法:

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

注意:如果列是AUTO_INCREMENT(如&#34; id&#34;列)或TIMESTAMP(如&#34; reg_date&#34;列),则不需要在SQL查询中指定; MySQL会自动添加值。

因此基本形式与您在问题中显示的形式相同。我已经在提交按钮上单独添加了一个名称并重新修改了它。

HTML FORM:

<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中然后检查DB是否在插入时发生错误。如果没有错误发生,请删除echo并删除退出;

您正在成功插入数据。希望我能对未插入数据库的数据做出明确的解释。

答案 1 :(得分:0)

做这样的事情:

$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);

答案 2 :(得分:0)

从第一个错误开始。

  • 如果条件为Server,则已添加成功代码 连接对象无法连接。
  • 当你使用mysqli_connect进行服务器连接时,为什么呢 你正在使用mysql_connect。
  • 缺少查询执行行。即mysqli_query($ link,$ sql)。