Probleem met een kollom te verwijderen uit te database.
Ik ben bezig met een sociaal netwerk site.
En ik heb een probleem.
De bedoeling is dat als je een vriendschapsverzoek stuurt uit het tabel "vriendschapsverzoeken" Het verzoek verwijderd wordt.
Het probleem is als je op verwijderen klikt verwijdert hij alle verzoeken van die gebruiker.
Wat ik eigenlijk wil is dat alleen de kollom wordt verwijderd die geaccepteert is.
Hier is de code:
$sqlvr = "SELECT * FROM vriendschaps_verzoeken WHERE aan='".$_SESSION['gebruikersnaam']."'";
$queryvr = mysqli_query($conn,$sqlvr);
$vriendout = mysqli_fetch_assoc($queryvr);
while($vriendout = mysqli_fetch_assoc($queryvr)){
if(mysqli_num_rows($queryvr) == 0){
echo 'Je hebt geen vriendschapsverzoeken!';
}else {
if(isset($_POST['accepteren'])){
$waar = $vriendout['id'];
$gebruikersnaam2 = $_SESSION['gebruikersnaam'];
$updatesql = "UPDATE vrienden SET status='1' WHERE gebruikersnaam1='".$_SESSION['gebruikersnaam']."'";
$querysql = mysqli_query($conn,$updatesql);
$delsql = "DELETE FROM vriendschaps_verzoeken WHERE id='".$vriendout['id']."'";
$delquery = mysqli_query($conn,$delsql);
}
echo htmlspecialchars($vriendout['van'] ) ." ". $vriendout['datum'] . " <form method='post'><input type='submit' name='accepteren' value='Accepteren!'> <input type='submit' name='verwijderen' value='verwijderen'> </form> ";
}
}
}
Gewijzigd op 07/05/2016 14:18:26 door Jitse t
Heeft je user tabel geen kolom id of user_id?
En Hetzelfde geldt eigenlijk voor de tabel vrienden en vriendschaps_verzoeken. In deze tabel zouden ook userID's moeten staan. en wanneer noodzakelijk een eigen uniek id veld.
Wil je hierin verder geholpen worden dan zou ik even alle tabellen met al hun kolommen vermelden zodat we kunnen zien hoe een en ander werkt.
Dan zou ik het zo gaan regelen dat je altijd over het id van een gebruiker/vriend(schapsverzoek) beschikt en dan krijg je dus iets als
Een alternatieve oplossing voor je huidige systeem zou kunnen zijn:
Maar erg professioneel is het niet.
Toevoeging op 07/05/2016 15:25:19:
Een goede database indeling zou kunnen zijn:
tabel users:
-user_id [integer, primary, autoincrement]
-naam [varchar]
-email [varchar]
-created (dit is de datum en tijd van aanmelding) [datetime]
-wachtwoord [varchar]
...
tabel vrienden:
-user1_id [integer, indexed]
-user2_id [integer, indexed]
-created (dit is de datum en tijd dat ze vrienden geworden zijn)
tabel vriendschapsverzoeken:
-user1_id [integer, indexed]
-user2_id [integer, indexed]
-created (dit is de datum en tijd van het verzoek) [datetime]
voorbeeld-data:
users:
vrienden:
vriendschapsverzoeken:
Frank Nietbelangrijk op 07/05/2016 15:14:47:
Klinkt allemaal niet zo erg consistent.
Heeft je user tabel geen kolom id of user_id?
En Hetzelfde geldt eigenlijk voor de tabel vrienden en vriendschaps_verzoeken. In deze tabel zouden ook userID's moeten staan. en wanneer noodzakelijk een eigen uniek id veld.
Wil je hierin verder geholpen worden dan zou ik even alle tabellen met al hun kolommen vermelden zodat we kunnen zien hoe een en ander werkt.
Dan zou ik het zo gaan regelen dat je altijd over het id van een gebruiker/vriend(schapsverzoek) beschikt en dan krijg je dus iets als
Een alternatieve oplossing voor je huidige systeem zou kunnen zijn:
Maar erg professioneel is het niet.
Toevoeging op 07/05/2016 15:25:19:
Een goede database indeling zou kunnen zijn:
tabel users:
-user_id [integer, primary, autoincrement]
-naam [varchar]
-email [varchar]
-created (dit is de datum en tijd van aanmelding) [datetime]
-wachtwoord [varchar]
...
tabel vrienden:
-user1_id [integer, indexed]
-user2_id [integer, indexed]
-created (dit is de datum en tijd dat ze vrienden geworden zijn)
tabel vriendschapsverzoeken:
-user1_id [integer, indexed]
-user2_id [integer, indexed]
-created (dit is de datum en tijd van het verzoek) [datetime]
voorbeeld-data:
users:
vrienden:
vriendschapsverzoeken:
Heeft je user tabel geen kolom id of user_id?
En Hetzelfde geldt eigenlijk voor de tabel vrienden en vriendschaps_verzoeken. In deze tabel zouden ook userID's moeten staan. en wanneer noodzakelijk een eigen uniek id veld.
Wil je hierin verder geholpen worden dan zou ik even alle tabellen met al hun kolommen vermelden zodat we kunnen zien hoe een en ander werkt.
Dan zou ik het zo gaan regelen dat je altijd over het id van een gebruiker/vriend(schapsverzoek) beschikt en dan krijg je dus iets als
Een alternatieve oplossing voor je huidige systeem zou kunnen zijn:
Maar erg professioneel is het niet.
Toevoeging op 07/05/2016 15:25:19:
Een goede database indeling zou kunnen zijn:
tabel users:
-user_id [integer, primary, autoincrement]
-naam [varchar]
-email [varchar]
-created (dit is de datum en tijd van aanmelding) [datetime]
-wachtwoord [varchar]
...
tabel vrienden:
-user1_id [integer, indexed]
-user2_id [integer, indexed]
-created (dit is de datum en tijd dat ze vrienden geworden zijn)
tabel vriendschapsverzoeken:
-user1_id [integer, indexed]
-user2_id [integer, indexed]
-created (dit is de datum en tijd van het verzoek) [datetime]
voorbeeld-data:
users:
vrienden:
vriendschapsverzoeken:
Ik begrijp dat dat je indeling is?
Het advies is dus om die gebruikersnamen te veranderen voor gebruikers-id's.
Want wat als iemand een gebruikersnaam wil aan passen? ga je dan al die tabellen updaten?
En wat als er twee users zijn met dezelfde naam?
Frank Nietbelangrijk op 07/05/2016 15:49:02:
Waarom mijn hele lap tekst quoten? Zou je dat niet beter even weghalen voor de leesbaarheid?
Ik begrijp dat dat je indeling is?
Het advies is dus om die gebruikersnamen te veranderen voor gebruikers-id's.
Want wat als iemand een gebruikersnaam wil aan passen? ga je dan al die tabellen updaten?
En wat als er twee users zijn met dezelfde naam?
Ik begrijp dat dat je indeling is?
Het advies is dus om die gebruikersnamen te veranderen voor gebruikers-id's.
Want wat als iemand een gebruikersnaam wil aan passen? ga je dan al die tabellen updaten?
En wat als er twee users zijn met dezelfde naam?
Twee dezelfde gebruikersnamen gaat niet bij mij.
Maar van die ids zal ik wel toepassen danku voor de tip!