警告:mysqli_select_db()恰好需要2个参数,其中1个在C:\中给出

我正在做一个教程,其中作者没有更新他的内容以反映PHP文档中的更改。无论如何,我需要知道我要提供的参数是什么。我检查了所有事物是否井井有条,但是我真的不知道该提供什么。这是我所拥有的:


Connects.php


<?php

$connect_error = 'Sorry, we\'re experiencing connection issues.';

$con = mysqli_connect('localhost', 'root', 'PwdSQL5');

mysqli_select_db('phpcadet') or die($connect_error);

?>

但是我得到了错误: 在此处输入图片说明


编辑:在解决了Connects.php问题之后,这就是为什么我得到修复的原因...更多错误,这是我的代码。请记住,我是PHP的新手,并且正在学习一个教程,所以做得不好。


警告: mysqli_real_escape_string()期望参数1为mysqli,第4行的C:\ vhosts \ phpcadet \ core \ functions \ general.php中给出的字符串


General.php


<?php

function sanitize($data)

{

return mysqli_real_escape_string($data, 'What goes here?');

}

?>

然后这样:警告:mysqli_query()期望参数1为mysqli,第7行的C:\ vhosts \ phpcadet \ core \ functions \ users.php中给出的字符串


Users.php


<?php

require 'core/database/connects.php';


function user_exists($username)

{

  $username = sanitize($username);

  $query = mysqli_query($_POST['username'], "SELECT * FROM users");

  $row = mysqli_fetch_array($query);


  if($row['username']==$username)

  {

     echo "Welcome, $username!";

     return true;   

  }

  else echo "Please enter a valid username and password";

  return false;

}   


function user_active($username)

{

  $username = sanitize($username);

  $query = mysqli_query($_POST['username'], "SELECT * FROM users");

  $row = mysqli_fetch_array($query);


  if($row['username']==$username && $row['active']==1)

  {

     echo "Welcome, $username!";

     return true;   

  } 

  else echo "Your username and password could not be verified.";

  return false;

  }

 ?>

最后是这样的:警告:mysqli_fetch_array()期望参数1为mysqli_result,在第8行的C:\ vhosts \ phpcadet \ core \ functions \ users.php中给出空值。


见上面的相同代码


我的一些代码是其他答案的汇编,可以解决本课中的问题,并且可以在Stack上找到。由于它们之间的不一致,这使我很难了解发生了什么...来自另一种语言,在这里我不太熟悉,只需要帮助,所有这些都可以单击。然后,我将对手册的内容有“了解”。谢谢。


慕桂英4014372
浏览 857回答 2
2回答

MM们

mysqli_select_db()应该有2个参数,连接链接和数据库名称-mysqli_select_db($con, 'phpcadet') or die(mysqli_error($con));使用mysqli_error在模具的语句会告诉你究竟什么是错的,而不是一个一般错误消息。

qq_花开花谢_0

重复结束和链接问题有助于使规范引用更易于查找。(对于那些实际上有礼貌地在询问之前进行研究,而不编辑标题以规避重复的过滤器的用户)。Stack Overflow不是个人补习网站,也不是Google的替代品。顺便说一句,这里的每个人都喜欢新来的问题,只要他们展示了一些先前的尝试/参考答案以及对理解问题的解释。
打开App,查看更多内容
随时随地看视频慕课网APP