Ошибка соединения PHP с базой данных

У меня есть только база данных и почему она запрашивает 2 параметра?

Предупреждение: mysqli_select_db () ожидает ровно 2 параметра, 1 заданных в C: \ xampp \ htdocs \ video_upload \ connect.php в строке 5

<?php mysqli_connect('localhost', 'root', ''); //connecting to the database mysqli_select_db('video_system'); //chosing a database ?> 

функция mysqli_select_db , при использовании процедурного API вам необходимо передать фактическое соединение в качестве первого параметра, как показано на страницах руководства . Это соединение или ссылка – это то, что возвращает mysqli_connect , поэтому вы не должны игнорировать то, что возвращает mysqli_connect , а скорее назначить его переменной.
Подпись функции четко говорит вам обо всем этом, поэтому, пожалуйста, RTM . Вот несколько экземпляров с копированием:

  \/=============================| bool mysqli_select_db ( mysqli $link , string $dbname ) || //returns bool argument 1 argument 2 || mysqli mysqli_connect ([...]) || //returns type mysqli accepts vast number of arguments || // || |======== useful here =======================| 

Это означает, что вам придется писать:

 $db = mysqli_connect('localhost', 'root', ''); mysqli_select_db($db, 'video_system'); 

Как и в руководстве && signature show, этот mysqli_select_db возвращает bool. true означает, что DB успешно выбрана, false указывает на сбой. Лучше всего привыкнуть проверять возвращаемые значения функции . Как бы ни казалось тривиальным. Так:

 $db = mysqli_connect('localhost', 'root', ''); if (!mysqli_select_db($db, 'video_system')) {//if return value is false, echo error message and exit script echo 'Failed to select db "video_system": ', mysqli_error($db), PHP_EOL; $db = null;//optional, but generally safer exit(1);//stop execution } //db selected, get to work here 

Но вы можете легко опустить этот второй вызов функции, передав имя выбора mysqli_connect функции mysqli_connect из выключения:

 $db = mysqli_connect('127.0.0.1', 'root', '', 'video_system'); 

Это экономит накладные расходы на дополнительный вызов функции, что немного повышает производительность. Я также изменил строку localhost на IP-адрес 127.0.0.1, что также может помочь, поскольку использование IP означает, что строка не должна быть разрешена к соответствующему IP-адресу.
В целом, я думаю, что лучше всего потратить некоторое время на чтение документации