09. maj 2007 - 03:29Der er
18 kommentarer og 1 løsning
Positions system fra row count!
Jeg har en Table "account" i databasen og et field "userid" og et "hits" + flere. Jeg har 2 seperat php sider. Den ene php1 viser alle de userid der er i Databasen sorteret efter "hits". en lang række med en...
foreach ($number as $number) ; $number++;
1, 2, 3 osv... så den med højest hits ligger nummer 1. Hits og sortering ændre hele tiden og listen opdater ved refresh. Det virker fint. Den anden php2 fil er en bruger konto, hvor man kan se navn, hits, position m.m. Navn og hits m.m kan jeg henter fra databasen, men jeg har ingen position over brugeren.
1 eksempel:
Jeg er oprettet som "userid" 20 og jeg kan se på php1 at jeg ligger på 13 pladsen Pos:13 i $number++ rækken. Når jeg så logger over i php2 og min konto oplysninger kommer frem og jeg kun ser mine egen "hits" Så kan jeg ikke få lavet så der står Pos:13 der. Den vil skrive Pos:1 hvis jeg henter med $number, fordi scriptet kun viser et field.
Jeg har prøvet at lave et pos field og får nummeret fra $number formen ned..men der skriver den det sidst tal i rækken på alle kontoerne. Det skal være sådan at hvergang "hits" ændre sig så ændre Pos med.
Et system nøjagtigt som placering systemet her på eksperten.dk. Den sorter os med brugernavn og efter point med flest point øverst. Skulle måske ha kaldt spørgsmålet for placerings system. Du kan se dine data oppe ved venstre hjørne. Der står din samlede placering, og det blive konstant updateret efter pointene tjent. Håber det gjore det lidt nemmere...
Mvh...MWM
Synes godt om
Slettet bruger
09. maj 2007 - 06:29#2
Jeg forstår godt hvad du mener, og kan godt se dit problem. Du vil vide hvad placering du er på, men ved ikke hvordan du skal hive det frem når du kun skal bruge din egen profils placering.
Jeg ved ikke engang hvordan man løser problemet, men jeg kigger selv med :P
Jeg har ikke noget kode til det, det eneste jeg har er den anden php side, med udtrækket fra Db der tilføjer en "foreach ($number as $number) ; $number++;" og gir tal rækken. Jeg har prøvet at updater $number i et Field i Db men den vil tag sidste tal i rækken den når til og indsæt på alle brugere.. Så jeg er åben for forslag. Jeg kan ikke lige få den subselect til at fungere, jeg forstår ikke lige helt den acc.hits, kan du prøve at skrive den i et lille script og lave et udtræk fra Db, så kan jeg måske bedre forstå..
Om der er en måde at løse det på med sql er jeg ik klar over, men det her er en løsning.
$users = mysql_query("select * from account order by hits");
while($usr = mysql_fetch_array($users)) { $no++; if($usr[id]==$_GET[id]) { //eller hvordan du nu henter id på siden med brugerinfo echo "Din pos:". $no; } }
Jeg har lige siddet inat og kigget på det over Google, og noglelunde det samme jeg er kommet frem til, men jeg kan stadig ikke få den til at vise det på den anden php side. Jeg kan lige lave et eks. Vi har 3 brugere:
Så har jeg en anden side hvor f.eks Bruger3 logger ind og kun vedkommenes info skal vises:
Bruger3= Pos:2, hits:20
Jeg kan kun få den til at vise Pos:1 når jeg kun udtrækker en row, det virkede ellers som en forholdsvis simpel ting at lave med min php kunnen, men den har drillet mig længe nu, men nærmere os..lol..
I må først og fremmeste lige undskyld jeg først vender tilbage nu, men har været væk fra commen. Jeg har lige siddet og kigget på det, og har før set den kode med COUNT indopereret med i, men jeg har ikke lige haft held med at få til at lykkes efter dog kun få forsøg. Plejer der ikke at skal være en mysql-query, eller mysql_num_rows, mysql_fetch_row m.m eller sådan. Det kan være fordi jeg er helt smadret "træt", så det kan være jeg ikke kan se skoven for bar træer, så jeg kigger selv lige igen på det senere, men ellers velkommen til lige at guide...
Hvad er det jeg overser, jeg kan ikke få den SELECT COUNT til at virke. Håber du lige kan hjælpe mig med det, da jeg også tror at det er løsningen. På forhånd tak..
Ja så lykkedes det. perfekt. Tusind tak for hjælpen alle, jeg lader pointene gå til "danishmale" for det sidst stykke arbejd her, selvfølig lave en mysql_query og fetch under subselecten... Tak for det, og tak til alle jer andre og til tjaz for opmærksomheden...
Mvh...MWM
Synes godt om
Slettet bruger
19. maj 2007 - 23:28#19
Synes udtrækket er meget langsomt. Kan det passe plx?
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.