За последние 24 часа нас посетили 17392 программиста и 1621 робот. Сейчас ищут 2217 программистов ...

Не могу подключиться к базе данных на 000webhost

Тема в разделе "Сделайте за меня", создана пользователем Просто Влад, 1 май 2019.

  1. Просто Влад

    Просто Влад Новичок

    С нами с:
    23 янв 2019
    Сообщения:
    8
    Симпатии:
    0
    Мой хостинг 000webhost, я использую бесплатный тариф. Хочу настроить базу данных для регистрации.
    bd.php
    PHP:
    1. <?php
    2.         $db = mysqli_connect("localhost","user","pass","base");
    3.        
    4.         ?>

    reg.php

    HTML:
    1.     <head>
    2.     <title>Регистрация</title>
    3.     </head>
    4.     <body>
    5.     <h2>Регистрация</h2>
    6.     <form action="save_user.php" method="post">
    7.  
    8. <p>
    9.     <label>Ваш логин:<br></label>
    10.     <input name="login" type="text" size="15" maxlength="15">
    11.     </p>
    12. <p>
    13.     <label>Ваш пароль:<br></label>
    14.     <input name="password" type="password" size="15" maxlength="15">
    15.     </p>
    16. <p>
    17.     <input type="submit" name="submit" value="Зарегистрироваться">
    18. </p></form>
    19.     </body>
    20.     </html>
    save_user.php.

    PHP:
    1. <?php
    2.  
    3.     if (isset($_POST['login'])) { $login = $_POST['login']; if ($login == '') { unset($login);} }
    4.     if (isset($_POST['password'])) { $password=$_POST['password']; if ($password =='') { unset($password);} }
    5.  
    6. if (empty($login) or empty($password))
    7.     {
    8.     exit ("Вы ввели не всю информацию, вернитесь назад и заполните все поля!");
    9.     }
    10.     $login = stripslashes($login);
    11.     $login = htmlspecialchars($login);
    12. $password = stripslashes($password);
    13.     $password = htmlspecialchars($password);
    14.     $login = trim($login);
    15.     $password = trim($password);
    16.     include ("bd.php");
    17.     $result = mysqli_query($db,"SELECT id FROM users WHERE login='$login'");
    18.     $myrow = mysql_fetch_array($result);
    19.     if (!empty($myrow['id'])) {
    20.     exit ("Извините, введённый вами логин уже зарегистрирован. Введите другой логин.");
    21.     }
    22.     $result2 = mysql_query ("INSERT INTO users (login,password) VALUES('$login','$password')");
    23.     if ($result2=='TRUE')
    24.     {
    25.     echo "Вы успешно зарегистрированы! Теперь вы можете зайти на сайт. <a href='index.php'>Главная страница</a>";
    26.     }
    27. else {
    28.     echo "Ошибка! Вы не зарегистрированы.";
    29.     }
    30.     ?>
    При попытке регистрации мне выдает три ошибки.
    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

    Что я делаю не так?
     
  2. Valick

    Valick Активный пользователь

    С нами с:
    12 авг 2018
    Сообщения:
    1.911
    Симпатии:
    328
    @Просто Влад, ты делаешь не так всё. Ты даже умудрился изгонять говнокод.
    Для того чтобы тебе бесплатно помогали на форуме, и ты и твои вопросы должны быть интересными. Для этого вопросы надо задавать грамотно, а для того что бы грамотно задавать вопросы надо пойти в книжный магазин и купить книгу хотя бы PHP+MySQL ( хотя лучше сначала изучить MySQL, а затем уже PHP) и прочесть эту книгу от корки до корки (включая предисловие автора).
     
  3. Roman __construct

    Roman __construct Активный пользователь

    С нами с:
    27 апр 2019
    Сообщения:
    1.270
    Симпатии:
    112
    Вот пример из официальных доков:

    Код (Text):
    1. <?php
    2. $link = mysqli_connect('localhost', 'my_user', 'my_password', 'my_db');
    3.  
    4. if (!$link) {
    5.     die('Ошибка подключения (' . mysqli_connect_errno() . ') '
    6.             . mysqli_connect_error());
    7. }
    8.  
    9. echo 'Соединение установлено... ' . mysqli_get_host_info($link) . "\n";
    10.  
    11. mysqli_close($link);
    Запусти сначала его и убедись что все работает как надо, а потом уже эти ужасные формы прикручивай))

    Всё постепенно, шаг за шагом.