BäckmanMedlem sedan nov. 2001274 inlägg Mitt problem är följande:
Jag har två tabeller att handskas med när jag sparar/visar mina nyheter i mitt nyhetssystem.
Anvandare
-A_id
-A_anvandarnamn
-A_losenord
..osv
Nyheter
-N_id
-N_skribentid (samma som A_id i tabellen anvandare för den användare som skrev nyheten)
-N_rubrik
-N_artikel
...osv
När jag tar fram nyheterna så gör jag det med denna sql-satsen:
$sql = "SELECT N_id, N_skribentid, N_rubrik, N_datum, N_artikel, N_kategori, A_anvandarnamn, A_epost, A_id FROM nyheter, anvandare WHERE N_skribentid=A_id ORDER BY N_datum DESC";
Problemet uppstår då jag har tagit bort en användare som har skrivit en nyhet. Då kommer dessa nyheter inte att visas mer i och med att det inte blir någon fullständig träff i databasen.
Vad råder ni mig att göra?
BABBAMedlem sedan feb. 2000280 inlägg Alt. 1. Ta inte bort någon användare, du kanske kan sätta dem som aktiva/inaktiva?
Alt. 2. Kopiera alla användarens poster till ngn slags generell användare innan du tar bort användaren (dvs byt id till t.ex 0)
Tänk igenom vad du verkligen vill göra. Om du vill ta bort en användare, vill du då visa nyheter från någon som inte längre finns?
BäckmanMedlem sedan nov. 2001274 inlägg Om jag tar bort en användare så vill jag helt enkelt att hans nyheter ska finnas kvar. Det känns bäst så iaf. :)
Borde ju gå att lösa kanske lite osmidigt med två sql-satser som tar ut data från nyheter samt användare. Testar senare ikväll...
AsterixMedlem sedan dec. 1999483 inlägg Detta borde funka
$sql = "SELECT N_id, N_skribentid, N_rubrik, N_datum, N_artikel, N_kategori, A_anvandarnamn, A_epost, A_id FROM nyheter LEFT JOIN anvandare ON A_id = N_skribentid ORDER BY N_datum DESC";