• Что не так с кодом?

    @asdasa21 Автор вопроса
    Loli E1ON, это забейте. Я забыл вчерашний код отредачить
  • Как реализовать админку для нескольких пользователей?

    @asdasa21 Автор вопроса
    Эдуард, это всё хранится на локалке. Чисто для себя пока что делаю)
  • Как реализовать админку для нескольких пользователей?

    @asdasa21 Автор вопроса
    Эдуард, можете помочь с добавлением блокировки пользователя?
    Чтобы можно-было и заблокировать и разблокировать
    Вот PHP
    <?php
        error_reporting(E_ALL);
        ini_set('display_errors','on');
    
        $link = mysqli_connect("localhost", "root", "", "practice");
        mysqli_query($link, "SET NAMES 'utf8'");
    
        if (isset($_GET['del'])){
            $id = $_GET['del'];
    
            $query = "DELETE FROM users WHERE id=$id";
            mysqli_query($link, $query) or die (mysqli_error($link));
        }
    
        $query = "SELECT * FROM users";
        $result = mysqli_query($link, $query) or die (mysqli_error($link));
    
        for ($data = []; $row = mysqli_fetch_assoc($result); $data[] = $row);
    ?>


    Вот сама html форма
    <table class="table table-bordered table-striped">
          <?php foreach ($data as $user) { ?>
          <thead>
            <tr>  
              <th>Id</th>  
              <th>Имя пользователя</th>  
              <th>E-mail</th>  
              <th>Пароль</th>
              <th>Роль</th>
              <th>Удалить</th>
              <th>Добавить</th>
              <th>Бан</th>
            </tr>
          </thead>
           <tr>  
             <td><?= $user['id'] ?></td>  
             <td><?= $user['username'] ?></td>  
             <td><?= $user['email'] ?></td>  
             <td><?= $user['password'] ?></td>  
             <td><?= $user['role'] ?></td>
             <td><a class="btn btn-danger" href="?del=<?= $user['id']?>">Удалить</a></td>
             <td><a class="btn btn-primary" href="add.php">Добавить</a></td>
             <td><a class="btn btn-secondary" href="?ban=<?= $user['id']?>">Бан</a></td>
           </tr>
           <?php }?>  
        </table>
    <code>
  • Как решить эту проблемку?

    @asdasa21 Автор вопроса
    Rsa97, Странно, что этот работает, а мой нет:
    <!doctype html>
    <html lang="ru">
    <head>
      <title>Админ-панель</title>
    </head>
    <body>
      <?php
        $host = 'localhost';  // Хост, у нас все локально
        $user = 'root';    // Имя созданного вами пользователя
        $pass = ''; // Установленный вами пароль пользователю
        $db_name = 'db';   // Имя базы данных
        $link = mysqli_connect($host, $user, $pass, $db_name); // Соединяемся с базой
    
        // Ругаемся, если соединение установить не удалось
        if (!$link) {
          echo 'Не могу соединиться с БД. Код ошибки: ' . mysqli_connect_errno() . ', ошибка: ' . mysqli_connect_error();
          exit;
        }
    
        //Если переменная Name передана
        if (isset($_POST["Name"])) {
          //Если это запрос на обновление, то обновляем
          if (isset($_GET['red_id'])) {
              $sql = mysqli_query($link, "UPDATE `products` SET `Name` = '{$_POST['Name']}',`Price` = '{$_POST['Price']}' WHERE `ID`={$_GET['red_id']}");
          } else {
              //Иначе вставляем данные, подставляя их в запрос
              $sql = mysqli_query($link, "INSERT INTO `products` (`Name`, `Price`) VALUES ('{$_POST['Name']}', '{$_POST['Price']}')");
          }
    
          //Если вставка прошла успешно
          if ($sql) {
            echo '<p>Успешно!</p>';
          } else {
            echo '<p>Произошла ошибка: ' . mysqli_error($link) . '</p>';
          }
        }
    
        if (isset($_GET['del_id'])) { //проверяем, есть ли переменная
          //удаляем строку из таблицы
          $sql = mysqli_query($link, "DELETE FROM `products` WHERE `ID` = {$_GET['del_id']}");
          if ($sql) {
            echo "<p>Товар удален.</p>";
          } else {
            echo '<p>Произошла ошибка: ' . mysqli_error($link) . '</p>';
          }
        }
    
        //Если передана переменная red_id, то надо обновлять данные. Для начала достанем их из БД
        if (isset($_GET['red_id'])) {
          $sql = mysqli_query($link, "SELECT `ID`, `Name`, `Price` FROM `products` WHERE `ID`={$_GET['red_id']}");
          $product = mysqli_fetch_array($sql);
        }
      ?>
      <form action="" method="post">
        <table>
          <tr>
            <td>Наименование:</td>
            <td><input type="text" name="Name" value="<?= isset($_GET['red_id']) ? $product['Name'] : ''; ?>"></td>
          </tr>
          <tr>
            <td>Цена:</td>
            <td><input type="text" name="Price" size="3" value="<?= isset($_GET['red_id']) ? $product['Price'] : ''; ?>"> руб.</td>
          </tr>
          <tr>
            <td colspan="2"><input type="submit" value="OK"></td>
          </tr>
        </table>
      </form>
      <table border='1'>
        <tr>
          <td>Идентификатор</td>
          <td>Наименование</td>
          <td>Цена</td>
          <td>Удаление</td>
          <td>Редактирование</td>
        </tr>
        <?php
          $sql = mysqli_query($link, 'SELECT `ID`, `Name`, `Price` FROM `products`');
          while ($result = mysqli_fetch_array($sql)) {
            echo '<tr>' .
                 "<td>{$result['ID']}</td>" .
                 "<td>{$result['Name']}</td>" .
                 "<td>{$result['Price']} ₽</td>" .
                 "<td><a href='?del_id={$result['ID']}'>Удалить</a></td>" .
                 "<td><a href='?red_id={$result['ID']}'>Изменить</a></td>" .
                 '</tr>';
          }
        ?>
      </table>
      <p><a href="?add=new">Добавить новый товар</a></p>
    </body>
    </html>
    <code>
  • Как решить эту проблемку?

    @asdasa21 Автор вопроса
    Rsa97, кроме того, он даже перестал очищать поля. Чисто происходит переход по ссылке и всё
  • Как решить эту проблемку?

    @asdasa21 Автор вопроса
    Rsa97, да. Но от смены регистра результат не изменился
  • Как решить эту проблемку?

    @asdasa21 Автор вопроса
    AUser0, такая ситуация - при изменении происходит очистка всех данных из строки. В исходном коде всё работает. Синтаксис я не изменял, просто добавил пару переменных.
    Вот пример. Изменил юзера под 5 ID - в итоге все поля очистились, кроме номера ID:
    5e9826d94879b283028545.png
  • Как решить эту проблемку?

    @asdasa21 Автор вопроса
    FanatPHP, лол. У меня вся курсовая уже есть. Мне лишь нужно решить трабл с изменением. Если Вы читаете между строк и видите лишь то, что Вам нужно, то перечитайте ещё раз. Ибо я писал, что перед добавлением корректировок всё работало, будьте внимательнее, пожалуйста. Спасибо
  • Как решить эту проблемку?

    @asdasa21 Автор вопроса
    AUser0, по поводу функции можете подсказать, что не так? В исходном коде, который я юзал - всё работает, а здесь не в какую. Если нужно, могу скинуть исходник
  • Как решить эту проблемку?

    @asdasa21 Автор вопроса
    AUser0, Да мне это для курсовой. Я даже на хост ее выкладывать не буду. Чисто, по локалке покажу и всё
  • Как решить эту проблемку?

    @asdasa21 Автор вопроса
    Дмитрий, ага. Как-раз теперь весь код полетел к хренам
  • Как решить эту проблемку?

    @asdasa21 Автор вопроса
    Дмитрий, да это мне уже объяснили. Только вот теперь функция изменить перестала работать. При изменении данных в форме очищаются все данные из строки, кроме номера id
  • Как решить эту проблемку?

    @asdasa21 Автор вопроса
    И в каком месте она лишняя?