mysqli_query需要至less2个参数

这个mysqli_query命令导致下面的错误

 mysqli_query("INSERT INTO `counter`.`hits` (`page_hits`) VALUES ('".$hits."')"); 

“警告:mysqli_query()需要至less2个参数,1在”

这个错误信息是什么意思,怎么解决?

您需要指定您在页面之前的某处连接到数据库。 你应该把这个variables放在查询中。 假设您创build了一个名为$ con的variables。 那么你的代码应该是这样的。

 mysqli_query($con,"INSERT INTO `counter`.`hits` (`page_hits`) VALUES ('".$hits."')"); 

从手册

 Procedural style mixed mysqli_query ( mysqli $link , string $query [, int $resultmode = MYSQLI_STORE_RESULT ] ) 

你会注意到$link$queryvariables。

这意味着你需要传递一个有效的mysqli链接资源以及你想要执行的查询。 这使该function知道build立到服务器的连接使用。

链接资源可以使用以下方式创build:

仅程序样式:由mysqli_connect()或mysqli_init()返回的链接标识符

在上述手册页上可以find如何操作的例子。

看来你已经把mysqli_query和mysql_query混淆了。 前者接受sql语句作为第一个参数,而后者希望链接标识符(由mysqli :: connect创build)作为第一个参数,语句作为第二个参数。

这两个扩展不能相互兼容。 我build议你select一个,阅读关于如何连接,执行查询等手册页,并忘记其他存在。 你选哪一个取决于你,mysqlifunction更丰富,但结果更复杂。

  <?php include_once('insert.php'); if(isset($_POST['submit'])) { $name = $_POST['name']; $email = $_POST['email']; $address = $_POST['address']; $adm= $_POST['admission']; mysqli_query("INSERT INTO students_recrod(name,email,address,joining_date) VALUES ('$name', '$email','$address', '$adm')"); } ?> <!DOCTYPE html> <html> <head> <title>Sign up form</title> </head> <body> <form action="" method="post" id=""> <label>Name</label><br> <input type="text" name="name" id=""><br> <label>Email</label><br> <input type="text" name="email" id=""><br> <label>Address</label><br> <input type="text" name="address" id=""><br> <label>Admission date</label><br> <input type="text" name="admission" id=""><br><br> <input type="submit" name="submit" id=""> </form> </body> </html>