12. november 2005 - 11:22Der er
29 kommentarer og 1 løsning
find højeste værdi og læg en til.
Jaa min titel beskriver mit spg godt , hvilken stump kode kan finde den højeste værdi i en tabel og lægge en til ..
Tabellen hedder users .. kolonnen hedder room . den skal finde det højeste værdi i room og lægge en til .. hvis i forstår .. har prøvet UPDATE user SET room=$room+1 , men den virker ik . altså det kun en del af koden jeg skrev der .. der ligger den kun +1 til 0 da 0 er standard værdien i den ..
inctor: Den finder først den højeste værdi af room og lægger denne værdi over i $room. Derefter opdaterer den tabellen. %d er et "signal" til sprinf() til at indsætte det tal den får som argument i slutningen altså room.
Det kan du godt gøre, men så opdaterer du alle rækker i usertabelen der har det specifikke brugernavn. Det er altså ikke nødvendigvis det højeste room der findes.
den skal update den user som der bliver skrevet i inpuT .. altså $_POST[usr] .. det eR den user den skal opdatere , ikk de andre .. kun den som blir skrevet i input'et ..
Det var fordi vi ikke havde din kode. Prøv med følgende:
$room = mysql_result(mysql_query("SELECT MAX(room)+1 FROM users"),0); mysql_query("UPDATE users SET spir=spir-100 , room='$room' , roomname='$_POST[navn]' WHERE username='".$_POST[usr]."'") or die(mysql_error());
Men jeg har room nummeret 666 , så rummene blir over 666 , hvorn får jeg dem til at blive på 150 , altså fra 150 og opefter .. har flere spg endnu Såå .. :D
Du får et svar her. Jeg har generelt ikke så voldsom meget tid. Jeg synes istedet du skulle spørge her på eksperten eller på irc kanalen #php.dk på quakenet serverne.
altså room er det tal ens lej nummer er .. mit lej nr er 666 , det står i rækken room .. kan man gøre så at den undlader og tager 666 med ? når den skal ligge +1 til , for det rum jeg oprettede kom til at hedde 667 .. vil gerne have det blev 150+1 og så 151+1 osv ..
der står 0 til at starte med , jeg har bare lavet mit rum til nummer 666 .. standard værdi er 0 ,men jeg har været inde i db og ændret min til 666 manuelt, ville bare have dette script til at gøre det nemmere for brugerne til at oprette en lej .. istedet for jeg skal gøre det manuelt ..
Hvis der står 0 til at starte med kommer der jo bare til at stå 1 ikke? Men du vil gerne have det sådan at hvis der staår 0 kommer der til at stå 150 (eller skal der står 151). Eller vil du have det sådan at hvis tallet der står i room er under 150 så kommer der til at stå 150 (eller 151), men ellers kommer der bare til at stå room+1...
øhm .. :S hehe .. Tjaa .. forstår jeg ikk så meget af menn .. Joo standard er 0 dvs room=0+1 , der skal stå 151 på den første som opretter rum, den næste 152 osv 153, 154 osv osv osv ..
$room = mysql_result(mysql_query("SELECT MAX(room)+1 FROM users"),0); if ($room <= 150) $room = 150; mysql_query("UPDATE users SET spir=spir-100 , room='$room' , roomname='$_POST[navn]' WHERE username='".$_POST[usr]."'") or die(mysql_error());
NeeJ , den +1 med en på det højeste, som nu er 666 .. som er mit eget lej nr , den skal undlade 666 , hedder det ikk noget med NOT IN (666,'') eller sån noget ?
tror ikk på at der kommer mere end 500 brugere ind på chatten .. så kendt er den ikke , men så når den når 666 så skal den springe det tal over , hvordan får man den til det ??
666 er mit lej nummer .. lige som 150 & 151 .. lejligheds nummer .. sys bare at 666 er et fedt nummer, har altid haft det nummer på forskellige chatte hvor det var valgfrit ..
Okay. En god løsning ville være at lave en tabel med reserverede eller specille numre, hvor man også havde tilknyttet en bruger. Når en bruger så skulle have et nyt nummer ville vedkommende enten få det der var reserveret til ham (i den nye tabel) eller bare det næste ledige nummer som ikke var i den tabel (hvis han ikke havde en "reservation").
Hvis det kun er dig, der skal have et specielt nummer så er dette en acceptabel måde at gøre det på.
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.