Мой хостинг 000webhost, я использую бесплатный тариф. Хочу настроить базу данных для регистрации. bd.php PHP: <?php $db = mysqli_connect("localhost","user","pass","base"); ?> reg.php HTML: <html> <head> <title>Регистрация</title> </head> <body> <h2>Регистрация</h2> <form action="save_user.php" method="post"> <p> <label>Ваш логин:<br></label> <input name="login" type="text" size="15" maxlength="15"> </p> <p> <label>Ваш пароль:<br></label> <input name="password" type="password" size="15" maxlength="15"> </p> <p> <input type="submit" name="submit" value="Зарегистрироваться"> </p></form> </body> </html> save_user.php. PHP: <?php if (isset($_POST['login'])) { $login = $_POST['login']; if ($login == '') { unset($login);} } if (isset($_POST['password'])) { $password=$_POST['password']; if ($password =='') { unset($password);} } if (empty($login) or empty($password)) { exit ("Вы ввели не всю информацию, вернитесь назад и заполните все поля!"); } $login = stripslashes($login); $login = htmlspecialchars($login); $password = stripslashes($password); $password = htmlspecialchars($password); $login = trim($login); $password = trim($password); include ("bd.php"); $result = mysqli_query($db,"SELECT id FROM users WHERE login='$login'"); $myrow = mysql_fetch_array($result); if (!empty($myrow['id'])) { exit ("Извините, введённый вами логин уже зарегистрирован. Введите другой логин."); } $result2 = mysql_query ("INSERT INTO users (login,password) VALUES('$login','$password')"); if ($result2=='TRUE') { echo "Вы успешно зарегистрированы! Теперь вы можете зайти на сайт. <a href='index.php'>Главная страница</a>"; } else { echo "Ошибка! Вы не зарегистрированы."; } ?> При попытке регистрации мне выдает три ошибки. Warning: mysqli_connect(): (HY000/2002): Connection refused in /storage/ssd2/640/8468640/public_html/test/bd.php on line 2 Warning: mysqli_query() expects parameter 1 to be mysqli, boolean given in /storage/ssd2/640/8468640/public_html/test/save_user.php on line 16 Fatal error: Uncaught Error: Call to undefined function mysql_fetch_array() in /storage/ssd2/640/8468640/public_html/test/save_user.php:17 Stack trace: #0 {main} thrown in /storage/ssd2/640/8468640/public_html/test/save_user.php on line 17 Что я делаю не так?
@Просто Влад, ты делаешь не так всё. Ты даже умудрился изгонять говнокод. Для того чтобы тебе бесплатно помогали на форуме, и ты и твои вопросы должны быть интересными. Для этого вопросы надо задавать грамотно, а для того что бы грамотно задавать вопросы надо пойти в книжный магазин и купить книгу хотя бы PHP+MySQL ( хотя лучше сначала изучить MySQL, а затем уже PHP) и прочесть эту книгу от корки до корки (включая предисловие автора).
Вот пример из официальных доков: Код (Text): <?php $link = mysqli_connect('localhost', 'my_user', 'my_password', 'my_db'); if (!$link) { die('Ошибка подключения (' . mysqli_connect_errno() . ') ' . mysqli_connect_error()); } echo 'Соединение установлено... ' . mysqli_get_host_info($link) . "\n"; mysqli_close($link); Запусти сначала его и убедись что все работает как надо, а потом уже эти ужасные формы прикручивай)) Всё постепенно, шаг за шагом.