Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Problem kod brisanja korisnika iz baze

[es] :: PHP :: Problem kod brisanja korisnika iz baze

[ Pregleda: 3021 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

davor4

Član broj: 30284
Poruke: 113
*.vodatel.hr.



Profil

icon Problem kod brisanja korisnika iz baze18.01.2006. u 20:09 - pre 222 meseci
Imam problema kod brisanja korisnika iz baze. Kod je sljedeći
Code:
 <?php
// spajanje na bazu
include ("config_baza.php");

// ispis korisnika iz baze
echo ("<b>Popis korisnika:</b><br>");
$ispis_korisnika = "SELECT * FROM korisnici";
    if($upit_ispis_korisnika = mysql_query($ispis_korisnika, $link)) { //provjerava bazu
        while ($red = mysql_fetch_array ($upit_ispis_korisnika)) { //pocinje ispis
            echo ("<br> ID: " . $red["id"]);
            echo ("<br><b> Ime: " . $red["ime"] . "</b>");
            echo ("<br> E-mail: " . $red["email"]);
            echo ("<br> Ime i prezime: " . $red["ime_i_prezime"] . "<br>");
            $id = $red["id"]; //sprema id u zasebnu varijablu, radi kasnijeg brisanja
            ?>
            <form method="get" action="<?php echo $_SERVER['PHP_SELF'] ?>">
            <input name="obrisi_korisnika" type="submit" value="obrisi">
            </form>
            <?php
            // brisanje iz baze, ako je korisnik kliknuo obriši
            if (isset($_GET['obrisi_korisnika'])) {
                $brisanje_korisnika = "DELETE FROM korisnici WHERE id=$id";
                mysql_query($brisanje_korisnika) or die ('Greška prilikom brisanja korisnika iz baze');
            }
        }
    } else {
        echo ("Greška prilikom citanja podataka iz baze" . mysql_error()); //javlja grešku ako nije uspostavljena veza s bazom
    }
?> 


problem je u tome što kada kliknem na gumb obriši ispod nekog korisnika obriše mi se cijela baza, a ne samo korisnik kojeg sam odabrao.

Samo brisanje pokušao sam riješit tako da se, kao što se vidi u kodu, ispod svakog korisnika koji se očitava iz baze iscrta forma sa gumbom za brisanje. klikom na gumb traži se da se obriše red u tablici gdje je id jednak onom kod kojeg se korisnika klikne na obriši (to sam riješio sa ugnježđenom petljom if ispod ispisa korisnika iz baze)
 
Odgovor na temu

vilyu
Web Developer
Beograd, Srbija

Član broj: 1188
Poruke: 444



+2 Profil

icon Re: Problem kod brisanja korisnika iz baze18.01.2006. u 21:11 - pre 222 meseci
Pod pretpostavkom da klikom na dugme zelis da obrises samo jednog korisnika, onda nema potrebe da onu if naredbu drzis unutar while petlje, vec negde na pocetku fajla, posle povezivanja na bazu.

Takodje, pri ispisivanju liste korisnika, ti trenutno svaki put upisujes novu vrednost u promenljivu id, i njom nista bitno zapravo ne pamtis. Ali, posto ti je brisanje u while petlji, tokom celog izvrsavanja petlje je i ispunjen uslov za brisanje, i to upravo svakog novog id-a.

Dakle, promenljivu id treba da zabelezis u samoj html formi po sistemu:
Code:
<input type="hidden" name="id" value="xyz">

Na mesto xyz dodje vrednost trenutnog id-a. I onda u kodu za brisanje ne pises samo $id, vec $_GET['id']

Vici ako ti i dalje nije jasno.:)
Pera električar 0637129710, BG, preporučujem.
 
Odgovor na temu

noviKorisnik
Dejan Katašić
Novi Sad

Član broj: 13216
Poruke: 4533
*.ADSL.neobee.net.

Sajt: www.novikorisnik.net


+5 Profil

icon Re: Problem kod brisanja korisnika iz baze18.01.2006. u 21:47 - pre 222 meseci
Code:
 <?php
// spajanje na bazu
include ("config_baza.php");

// brisanje iz baze, ako je korisnik kliknuo brisanje korisnika
if (isset($_GET['obrisi_korisnika'])) {
  $brisanje_korisnika = "DELETE FROM korisnici WHERE id='{$_GET['id']}'";
  mysql_query($brisanje_korisnika) or die ('Greška prilikom brisanja korisnika iz baze');
}

// ispis korisnika iz baze
echo ("<b>Popis korisnika:</b><br>");
$ispis_korisnika = "SELECT * FROM korisnici";

if($upit_ispis_korisnika = mysql_query($ispis_korisnika, $link)) { //provjerava bazu
  while ($red = mysql_fetch_array ($upit_ispis_korisnika)) { //pocinje ispis
    echo ("<br> ID: " . $red["id"]);
    echo ("<br><b> Ime: " . $red["ime"] . "</b>");
    echo ("<br> E-mail: " . $red["email"]);
    echo ("<br> Ime i prezime: " . $red["ime_i_prezime"] . "<br>");
    echo ("<br><a href=\"{$_SERVER['PHP_SELF']}?obrisi_korisnika=obrisi&id={$red['id']}"
style="color: red; font-weight: bold;\">brisanje korisnika</a><hr>");
  }
} else {
  echo ("Greška prilikom citanja podataka iz baze" . mysql_error());
//javlja grešku ako nije uspostavljena veza s bazom
}
?>

 
Odgovor na temu

davor4

Član broj: 30284
Poruke: 113
*.adsl.net.t-com.hr.



Profil

icon Re: Problem kod brisanja korisnika iz baze21.01.2006. u 13:48 - pre 222 meseci
ok, riješio sam brisanje. sada imam pitanje u vezi uređivanja profila korisnika.
u stranicu gdje se listaju korisnici (korisnici.php) dodao sam slijedeći kod:
Code:

echo ("<a href=\"uredi_korisnika.php?uredi_korisnika=uredi&id={$red['id']}\">uređivanje profila korisnika</a><hr>");

ako se klikne na uređivanje profila otvara se stranica uredi_korisnika.php; tu me sada zanima kako pamtiti id korisnika sa stranice korisnici.php, da bih mogao pozvati podatke u formu gdje se uređuje profil korisnika. jedino rješenje koje mi pada na pamet je da pomoću sessiona pamtim id korisnika i onda pozivam iz baze red gdje je id jednak onom u sessionu.
je li ovaj način ispravan ili imate kakav drugi prijedlog?
Hvala
 
Odgovor na temu

Br@nkoR
http://localhost

Član broj: 2597
Poruke: 1603

Sajt: localhost


+23 Profil

icon Re: Problem kod brisanja korisnika iz baze21.01.2006. u 14:54 - pre 222 meseci
Možeš staviti npr. jedno hidden (input) polje koje će imati vrednost id korisnika.
Banned - Not available
 
Odgovor na temu

davor4

Član broj: 30284
Poruke: 113
*.adsl.net.t-com.hr.



Profil

icon Re: Problem kod brisanja korisnika iz baze21.01.2006. u 15:17 - pre 222 meseci
da, samo nije mi problem upamiti id korisnika na stranici korisnici.php gdje je odabrano uređivanje profila, već mi je problem varijablu sa id-jem prenijet u stranicu uredi_korisnika.php
kako (ako) se to može sa $_GET?
 
Odgovor na temu

vilyu
Web Developer
Beograd, Srbija

Član broj: 1188
Poruke: 444
Via: [es] mailing liste



+2 Profil

icon Re: Problem kod brisanja korisnika iz baze21.01.2006. u 16:46 - pre 222 meseci
Cini mi se da ti gadno ne razumes kako funkcionise prosledjivanje
promenljivih GET ili POST metodom. Mislim da bi pre nego sto predjes na
bilo koji ozbiljniji projekat trebalo prvo tim, i slicnim stvarima da se
pozabavis.

Isecak koda sa stranice korisnici.php ti je vec postavio id i njegovu
vrednost, za prosledjivanje GET metodom. Sve sto treba da ucinis na ovoj
drugoj stranici je da procitas sadrzaj promenljive
Code:
$_GET['id']
.
Pera električar 0637129710, BG, preporučujem.
 
Odgovor na temu

davor4

Član broj: 30284
Poruke: 113
*.adsl.net.t-com.hr.



Profil

icon Re: Problem kod brisanja korisnika iz baze21.01.2006. u 21:48 - pre 222 meseci
da, u pravu si. mada mi je sada postalo puno jasnije što znači ?, & i slične stvari u adresama stranica. morat ću se pozabavit s time, jer tek sada vidim velike mogućnosti get i post metoda. u biti nisam znao da funkcioniraju i na takav način, mislio sam samo da ih se koristi u formama, jer ni u jednom tutorialu ništa sličnog nije bilo.
hvala ti, otvorio si mi oči :) barem malo
 
Odgovor na temu

[es] :: PHP :: Problem kod brisanja korisnika iz baze

[ Pregleda: 3021 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.