• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Usuwanie użytkownika z bazy danych.

Object Storage Arubacloud
0 głosów
1,619 wizyt
pytanie zadane 31 grudnia 2016 w PHP przez nielotweb Bywalec (2,240 p.)

W jaki sposób mogę usunąć użytkownika z bazy danych (mysql) naciskając na przycisk przy danym użytkowniku?

Bo zrobiłem sobie tabele w które wyciągnąłem z bazy danych wszystkich użytkowników i ich wypisałem. Teraz chce zrobić tak że obok jest przycisk DELETE ( przy każdym użytkowniku ) ale nie mam pojęcia jak zrobić żeby akurat ten użytkownik się usunął przy którym kliknę przycisk..

Macie jakieś pomysły?

Kod:

<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">
<html xmlns=\"http://www.w3.org/1999/xhtml\" lang=\"pl-PL\">
<head>
	<meta http-equiv="content-type" content="text/html; charset=utf-8">
    <title>Rezultat zapytania</title>
    <style>
    #container {
      max-width: 1000px;
    }
    </style>
</head>

<body>

<div id="container">
    <table width="1000" align="center" border="1" bordercolor="#d5d5d5"  cellpadding="0" cellspacing="0">
        <tr>
        <?php
        require_once "connect.php";
        $baza = @new mysqli($host, $db_user, $db_password, $db_name); //Połączenie z bazą danych
        $sql = "SELECT id, user, pass, email FROM users";
        $result = $baza->query($sql);
        $ile = mysqli_num_rows($result);

        echo "znaleziono: ".$ile."<br /><br />";
if ($ile>=1)
{
echo<<<END
<td width="50" align="center" bgcolor="e5e5e5"></td>
<td width="50" align="center" bgcolor="e5e5e5">IDUsera</td>
<td width="20" align="center" bgcolor="e5e5e5">NazwaUsera</td>
<td width="20" align="center" bgcolor="e5e5e5">HasloUsera</td>
<td width="20" align="center" bgcolor="e5e5e5">EmailUsera</td>
</tr><tr>
END;
}

	for ($i = 1; $i <= $ile; $i++)
	{

		$row = mysqli_fetch_assoc($result);
		$a1 = $row['id'];
		$a2 = $row['user'];
		$a3 = $row['pass'];
		$a4 = $row['email'];

echo<<<END
<td width="50" align="center"><input type="submit" value="delete" /></input></td>
<td width="50" align="center">$a1</td>
<td width="100" align="center">$a2</td>
<td width="100" align="center">$a3</td>
<td width="100" align="center">$a4</td>
</tr><tr>
END;

	}


?>


</tr></table>
</div>


</body>
</html>

 

1 odpowiedź

+2 głosów
odpowiedź 31 grudnia 2016 przez Boshi VIP (100,240 p.)
wybrane 31 grudnia 2016 przez nielotweb
 
Najlepsza
link z podstawionym id pobranego użytkownika, w twoim przypadku a1.
komentarz 31 grudnia 2016 przez nielotweb Bywalec (2,240 p.)

Nie rozumiem trochę.

Zrobiłem tak że stworzyłem nowy plik delete_user.php

<?php
require_once "connect.php";
$con = @new mysqli($host, $db_user, $db_password, $db_name); //Połączenie z bazą danych
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}

$sql="Delete from users where id='$a1'";

if (!mysqli_query($con,$sql))
{
die('Error: ' . mysqli_error($con));
}
echo "Record Deleted";
header("Refresh:3; url=admin.php");

mysqli_close($con);
?>

A w tamtym pliku dodałem odnośnik do DELETE href="delete_user.php" - gdy klikam na przycisk niby skrypt działa ale wywala jeden błąd: 

Notice: Undefined variable: a1 in C:\xampp\htdocs\probka\delete_user.php on line 10

 

Czyli chodzi o zmienną w tym pliku delete_user.php 

1
komentarz 31 grudnia 2016 przez Assasz Nałogowiec (30,460 p.)
Chodzi o przekazywanie id użytkownika za pomocą zmiennej GET którą wstawiasz do linku, np. href="delete_user.php?id=1". Potem w tym pliku ją odbierasz, czyli $id=$_GET['id'] i podstawiasz do zapytania sql.

Najlepiej by to zrobić jeszcze za pomocą Ajaxa by było w pełni dynamiczne, gdzie id przekazujesz jako parametr funkcji (ale to tylko moja sugestia).
komentarz 31 grudnia 2016 przez nielotweb Bywalec (2,240 p.)
Ty działa! :D O tym Ajaxie to też dobry pomysł! Spróbuję ale to już nie dzisiaj! Idealny pomysł, dzięki wielkie!
komentarz 31 grudnia 2016 przez nielotweb Bywalec (2,240 p.)
Tylko jeszcze inny malutki problem, bo gdy dodaje nowego użytkownika do bazy, to ona ma ID nie takie jakie powinien mieć, chodzi mi oto że mam jednego użytkownika o ID = 1, dodałem teraz nowego i on ma ID = 4.. czemu nie 2? Przecież jest po 1, wiesz jak to naprawić ?
1
komentarz 31 grudnia 2016 przez Boshi VIP (100,240 p.)
Tak zaprojektowany jest silnik bazy danych. To bez znaczenia. Jak się uprzesz to na stack overflow masz masę rozwiązań.
1
komentarz 31 grudnia 2016 przez Assasz Nałogowiec (30,460 p.)
Zapewne usunąłeś wcześniej dwóch userów, a inkrementacja była ustawiona na 4. Możesz to zmienić w zakładce tabeli operacje ustawiając wartość następnej inkrementacji.
komentarz 31 grudnia 2016 przez nielotweb Bywalec (2,240 p.)
Okej, rozumiem. Dzięki panowie!

Podobne pytania

0 głosów
2 odpowiedzi 505 wizyt
pytanie zadane 22 czerwca 2016 w PHP przez niezalogowany
0 głosów
1 odpowiedź 509 wizyt
pytanie zadane 17 października 2016 w PHP przez niezalogowany
0 głosów
0 odpowiedzi 429 wizyt
pytanie zadane 27 grudnia 2018 w PHP przez chmod96 Obywatel (1,380 p.)

92,555 zapytań

141,403 odpowiedzi

319,557 komentarzy

61,940 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...