28. november 2005 - 20:39Der er
20 kommentarer og 1 løsning
tjekke om eksisterer i tabel
Hey Champs!! ;o)
Jeg har et system hvor man kan oprette sig som bruger! Men jeg vil gerne have at man ikke kan oprette sig med samme brugernavn som en anden bruger, og heller ikke at man kan oprette en "tom" bruger!! Det her virker ikke helt efter hensigten!! :-(
$optaget = mysql_query("select * from users where user = '$user'") or die (mysql_error()); if(!isset($optaget)){ echo "Brugernavn optaget"; } else { if(empty($user) || empty($pass)){ echo "Du skal mindst udfylde brugernavn og kodeord"; } else { //indsætter i db }}
unikt er en smart måde, så vil der aldrig kunne oprettes 2. Så vil din insert fejle.
Synes godt om
Slettet bruger
28. november 2005 - 20:51#7
Så kan det slet ikke lade sig gøre at oprette to brugere med samme brugernavn. Heller ikke hvis to brugere forsøger med samme brugernavn på samme tid. Med dit script ville det kunne lade sig gøre at to brugere prøver samme tid, og bruger2 kontrollerer mens den første er lige mellem kontrollen og selve oprettelsen.
Bruger du blob/text til brugernavn? Hvis ja, overvej evt: varchar() (længden må du finde hvad som passer dig)
Synes godt om
Slettet bruger
28. november 2005 - 21:47#14
Ja, jeg vil også mene at 64KB er måske lige at skyde over målet hvad angår længden af brugernavne. char eller varchar (eller TINYTEXT) ville nok være mere passende.
Så prøv at lave det om til en varchar på smme størrelse som din TINYTEXT. Hvis du ikke har angivet størrelse, så må 30-50 tegn være ganske rigeligt for et brugernavn.
Tjah, jeg fk besked på at lægge et i starten af tråden, men så fortsatte diskussionen, og jeg glemte det. Men hvis spørger er enig, synes jeg vi skulle dele lige over.
Det er ved at være et stykke tid siden, men her pointene..
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.