webForumDet fria alternativet

hjälp med sql satser....

4 svar · 193 visningar · startad av mahedel

mahedelMedlem sedan juli 2002105 inlägg
#1

Jag har ett paging script och det är integrerat med min gästbok.

I detta så finns det olika rang på användare.... 3=admin, 2=moderator, 1=vip, 0=vanlig användare.

admin ser alla privata inlägg och borttagna inlägg... övriga ska inte se det, förutom sina egna privata... det funkar prima men då blir det tomrum när man inte har 3 som rang, alltså admin...

jag tänkte skicka med sql satserna så får ni kika på hur en lösning kan se ut...

// Kör första sql-frågan som tar reda på antalet rader.

$sql = "SELECT COUNT(*) AS rows_tot FROM gb where owner='$username'";

// Kör andra sql-frågan som tar rätt antal rader.

 $sql = "SELECT \* FROM gb where owner='$username' ORDER BY id DESC LIMIT $offset, $limit";

har provat att sätta in: "AND deleted=0" men det lyckas inte...

vad kan fungera?

/Tack på förhand Martin

MatteMedlem sedan aug. 20002 975 inlägg
#2

Vad var det som inte fungerade med:

// Kör första sql-frågan som tar reda på antalet rader. 

$sql = "SELECT COUNT(*) AS rows_tot FROM gb where owner='$username' AND deleted=0"; 

// Kör andra sql-frågan som tar rätt antal rader. 

$sql = "SELECT * FROM gb where owner='$username' AND deleted=0 ORDER BY id DESC LIMIT $offset, $limit";
mahedelMedlem sedan juli 2002105 inlägg
#3

detta fungerar ej...

admin ser alla privata inlägg och borttagna inlägg... övriga ska inte se det, förutom sina egna privata... det funkar prima men då blir det tomrum när man inte har 3 som rang, alltså admin...

det ska ju räkna bort raderna så det blir antalinlägg per sida som jag har ställt in som limit... men den gör satt det blir 1 inlägg på första sidan eftersom 2 är borttagna och det ska ju egentligen komma upp 3 inlägg där för limiten är på 3 för tillfället... men det vill sig inte...

/Martin

MatteMedlem sedan aug. 20002 975 inlägg
#4

Det förstår jag inte. Du har ju redan rensat bort dom i sql-frågan. Då kan det knappast bli några hål kvar bland de som är kvar. Man kanske kan få se lite mer kod?

Med admindelen kan du göra något på det här hållet:

if (isset($_SESSION['admin']) && $_SESSION['admin'] == 3) {
   $noadmin = "";
} else $noadmin = "AND deleted=0";

// Kör första sql-frågan som tar reda på antalet rader. 

$sql = "SELECT COUNT(*) AS rows_tot FROM gb where owner='$username' $noadmin"; 

.
.

// Kör andra sql-frågan som tar rätt antal rader. 

$sql = "SELECT * FROM gb where owner='$username' $noadmin 
        ORDER BY id DESC LIMIT $offset, $limit";
mahedelMedlem sedan juli 2002105 inlägg
#5

tjo...

jag skickar min kod i ett privat mess till dig....

/Martin

146 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
143 ms — hämta tråd, inlägg och bilagor (db)