@Ainur100

Как реализовать PHP?

Как реализовать , чтобы пользователь с ником 123 смог изменять только свои записи (в записях есть параметр kan_admin=123),а то у меня получается так,в ссылке myprojekt.php?id=7, при изменении id можно изменить любую запись
$id=$_GET["id"];
            $where="WHERE `id`=".$id;
$connect = mysqli_connect('localhost', 'root','123', 'krypton');
# В случаи неудачи подключении выводим ошибку на экран
if (mysqli_connect_errno($connect))
{
    mysqli_error();
}
# Составляем запрос
$sql = "SELECT * FROM `kanal` $where";
# Выполняем запрос
$query = mysqli_query($connect, $sql);
# В случаи неудачи с запросом выводим ошибку на экран
if (!$query)
{
    mysqli_error($connect);
}
else # Если же всё в порядке, переходим к циклу 
{
    while($kanal = mysqli_fetch_assoc($query))
    {
    echo"
    <p><input type=\"hidden\"  name=\"id\" value=\"".$kanal["id"]."\"/></p>
    
        <p><input type=\"text\" name=\"kan_name\" placeholder=\"Название канала\" maxlength=\"20\" value=\"".$kanal["kan_name"]."\"/></p>
        
        <p><input type=\"text\" name=\"kan_soname\" placeholder=\"Краткое описание канала \" maxlength=\"85\" value=\"".$kanal["kan_soname"]."\"/></p>
     
   
                ";
    }
}
  • Вопрос задан
  • 235 просмотров
Пригласить эксперта
Ответы на вопрос 3
@niriter
User
перед сохранением должна быть проверка author-id, и в случае если админ редактирует свою запись - должно сохранить, в противном случае - предупреждение что вы не автор...
Код сейчас лень набросать, может позже напишу
Ответ написан
paulfcdd
@paulfcdd
PHP/Sf/WEB developer
перед записью в базу данных нужно сравнить айди залогиненого пользователя с айди урла с которого пришел запрос. А вообще, если пользователь с айди 1 перешел на пользователя с айди 2 то еще не мешало бы в таком случае в хтмл убирать кнопки сохранения итд
Ответ написан
Если я правильно понял, то проверку делай не перед сохранением, а перед отображением страницы, а то получается что можно зайти на любой id и посмотреть всю информацию, но это если нужно видеть только свои данные.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы