美好的一天,我正在尝试使用php将数据插入到mysql表中它有点工作,但我无法在phpmyadmin中看到数据
<?php
$con=mysqli_connect('localhost','root','');
if(!$con)
{
echo("not connected");
}
if(!mysqli_select_db($con,'exam'))
{
echo 'db not selected';
}
$header = $_POST['header'];
$date = $_POST['date'];
$categ = $_POST['categ'];
$moder = $_POST['moder'];
$posttxt = $_POST['posttxt'];
$theme = $_POST['theme'];
$author = $_POST['author'];
$sql = "INSERT INTO postex (header,date,categ,moder,posttxt,theme,author) VALUES ('$header','$date','$categ','$moder','$posttxt','$theme','$author')";
if
(empty($header) || empty($date) || empty($categ) || empty($moder) || empty($posttxt) || empty($theme) || empty($author))
{
echo "<Br>feel the fields!!!";
}
else{
echo("<br>added,wait for redirect");
}
?>
答案 0 :(得分:3)
好的,在使用mysql_
之前出现错误答案之前,mysqli_query($con, $sql)
没有用来执行查询。
并注意那些你自己开放的sql注入,如果/当你开始使用它时。
准备好的陈述
同时确保POST数组确实包含值(并且表单使用带有匹配命名输入的POST方法)并且没有任何字符通过,MySQL可以抱怨,例如:撇号。
在任何方面逃避数据进入。
通过PHP和查询检查错误:
诺塔:
首先应检查是否有任何字段为空,然后执行查询。
即。和伪条件:
if(none empty and good to go){
// execute the query
}
else{
// do something else
}
另外,如果您在同一个文件中使用整个代码,作为表单和php / mysql,那么您应该首先检查是否有任何POST数组设置/不为空。这会产生一些错误并给你带来不良后果。
答案 1 :(得分:0)
<?php
function db(){
$servername = "servername";
$username = "username";
$password = "password";
$database = "database";
// Create connection
$conn = new mysqli($servername, $username, $password,$database);
$conn->query("SET CHARACTER SET utf8");
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
return false;
}else{
return $conn;
}
}
$data=db();
$insert="INSERT INTO movies (bla1, bla2, bla3) VALUES (blavalue1, blavalue2, blavalue3)";
$dotaz=mysqli_query($data,$insert);
if($dotaz){
echo "OK";
}else{
echo "Wrong";
}
?>