S
S
Sandro_s2018-06-24 03:19:38
PHP
Sandro_s, 2018-06-24 03:19:38

How to delete a record from a database using php?

On the local server conf.php - 7.0*64
There is a 'secret_users' table in the database with the fields: id, name, email, password, ip_reg, data_reg there are users.
It is necessary to delete user with id = 15, either by login or email.
5b2ee392a5452244589235.jpeg
There is an error 'Fatal error: Uncaught Error: Call to undefined function mysql_fetch_array() '

<?php

    if (isset($_GET['del'])) {
  //  $result=mysql_query("DELETE FROM firma WHERE id = '15'");
  $sql = mysql_query('DELETE FROM `secret_users` WHERE `ID` = "15"'.$_GET['del'].'"');
 // $sql = mysql_query("DELETE FROM `secret_users` WHERE ID IN('15','".$_GET['del'].'"');
   // $sql = mysql_query("DELETE FROM `secret_users` WHERE ID IN('".$_GET['del'].'"');*/
    if ($sql) {
        echo "<p>Пользователь удален.</p>";
    } else {
        echo "<p>Произошла ошибка.</p>";
    }
}

 $result = $mysqli->query ("DELETE id, name FROM `secret_users`");
// $result = mysql_query("SELECT id, name FROM `secret_users`");

while ($result = mysql_fetch_array($sql)) {
//while ($result =  mysql_fetch_row()($sql)) {
    echo $result['ID'].") ".$result['name']." - <a href='?del=".$result['ID']."'>Удалить</a><br>";
}


?>

Full code
<!doctype html>
<html lang="ru">
<head>
<title>Админ-панель</title>
</head>
<body>


<?php


 define('DB_HOST', 'localhost');
    define('DB_USER', 'root');
    define('DB_PASSWORD', '');
    define('DB_NAME', 'mysite');
    
   $mysqli = @new mysqli(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
    if ($mysqli->connect_errno) exit('Ошибка соединения с БД');
    $mysqli->set_charset('utf8');
    
    

/*$mysqli->query ("INSERT INTO `secret_users`
  (`id`, `name`, `email`, `password`, `balance`, `ip_reg`, `data_reg`) 
  VALUES (NULL, 'Dinn', 'dinn@mail.ru', MD5('123'), '0.00', INET_ATON('127.0.0.1'), UNIX_TIMESTAMP())");


 $mysqli->close();*/


//Если переменная reg передана
if (isset($_POST["reg"])) {
     $name = $mysqli->real_escape_string(htmlspecialchars($_POST['name'])); 
 $email = $mysqli->real_escape_string(htmlspecialchars($_POST['email']));
        $password = $mysqli->real_escape_string(htmlspecialchars($_POST['password']));
        $ip_reg = ip2long($_SERVER['REMOTE_ADDR']);
       $query = ("INSERT INTO `secret_users`
      (`id`, `name`, `email`, `password`,  `ip_reg`, `data_reg`) 
        VALUES (NULL, '$name', '$email', MD5('$password'), '$ip_reg', UNIX_TIMESTAMP())");
        $result = $mysqli->query($query);


         if (isset($result)) {             

        echo "<p>Данные успешно добавлены в таблицу.</p>";
    } else {
        echo "<p>Произошла ошибка.</p>";
    }
    }

?>


<table>
<form name='reg' action='index.php' method='post'>
    <p>
        Имя: <input type='text' name='name' />
    </p>
    <p>
        E-mail: <input type='text' name='email' />
    </p>
    <p>
        Пароль: <input type='password' name='password' />
    </p>
    <p>
        <input type='submit' name='reg' value='Зарегистрироваться' />
    </p>
</table>


<?php

    if (isset($_GET['del'])) {
  //  $result=mysql_query("DELETE FROM firma WHERE id = '15'");
  $sql = mysql_query('DELETE FROM `secret_users` WHERE `ID` = "15"'.$_GET['del'].'"');
 // $sql = mysql_query("DELETE FROM `secret_users` WHERE ID IN('15','".$_GET['del'].'"');
   // $sql = mysql_query("DELETE FROM `secret_users` WHERE ID IN('".$_GET['del'].'"');*/
    if ($sql) {
        echo "<p>Пользователь удален.</p>";
    } else {
        echo "<p>Произошла ошибка.</p>";
    }
}

 $result = $mysqli->query ("DELETE id, name FROM `secret_users`");
// $result = mysql_query("SELECT id, name FROM `secret_users`");

while ($result = mysql_fetch_array($sql)) {
//while ($result =  mysql_fetch_row()($sql)) {
    echo $result['ID'].") ".$result['name']." - <a href='?del=".$result['ID']."'>Удалить</a><br>";
}


?>

Answer the question

In order to leave comments, you need to log in

1 answer(s)
A
A person from Kazakhstan, 2018-06-24
@Sandro_s

This will be enough: https://www.w3schools.com/Php/php_mysql_delete.asp
and do not put @ or $ in front of mysqli - no need to suppress errors, they need to be eliminated

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question