Avatar billede nickyc Nybegynder
08. marts 2005 - 21:12 Der er 7 kommentarer og
1 løsning

INSERT problem?

hey alle...

Har dette script til at tilføje brugere, har allerede tilføjet en bruger!
Det virkede fint, men når jeg vil oprette en til bruger, opretter den ikke brugeren!! :( :(

Mit script ser således ud:

<?
include("config.php");
$realname = $_REQUEST['realname'];
$brugernavn = $_REQUEST['brugernavn'];
$password = $_REQUEST['password'];
$billede = $_REQUEST['billede'];

$query = "SELECT brugernavn FROM brugere WHERE brugernavn = '$brugernavn'";
$resultat = mysql_query($query);

$result = mysql_num_rows($resultat);

if ($result > 0) {
    echo "Brugernavnet er desværre allerede optaget";
    echo "<br />";
    echo "Prøv venligst igen med et nyt brugernavn";
    exit();
    }
    else
    {
    $realname = $_REQUEST['realname'];
    $brugernavn = $_REQUEST['brugernavn'];
    $password = $_REQUEST['password'];
    $billede = $_REQUEST['billede'];
$query = "INSERT INTO brugere(realname, brugernavn, password, billede) VALUES ('$_POST[realname]', '$_POST[brugernavn]', '$_POST[password]', '$_POST[billede]')";
if (mysql_query($query)){

    echo "Du har nu oprettet en ny bruger med følgende oplysninger:";
    echo "<br />";
    echo "Rigtige navn: $realname";
    echo "<br />";
    echo "Brugernavn: $brugernavn";
    echo "<br />";
    echo "Password: $password";
}
    }

?>
Avatar billede bromer Nybegynder
08. marts 2005 - 21:16 #1
Når du ingen fejlbeskeder eller noget når du prøver? Prøv eventuelt at sætte noget debug rundt om din insert sætning, så du kan se hvis den fejlen
Avatar billede nickyc Nybegynder
08. marts 2005 - 21:17 #2
når jeg prøver at køre insert sætningen i mysql får jeg tilbage:

MySQL returnerede: 

#1062 - Duplicate entry '' for key 3
Avatar billede bromer Nybegynder
08. marts 2005 - 21:19 #3
aha. det er brugernavnet sikkert der skal være unikt. Hvordan ser database designet ud?
Avatar billede nickyc Nybegynder
08. marts 2005 - 21:21 #4
brugernavnet er sat til unique, det samme er email, kan det være det der skal fjernes, da når man opretter en bruger skriver man ikke deres email?
Avatar billede detox Nybegynder
08. marts 2005 - 21:24 #5
Det lyder da meget sandsynligt.
Avatar billede detox Nybegynder
08. marts 2005 - 21:30 #6
Du behøver heller ikke tildele dine variabler de samme værdier flere gange. Du kan nøjes med følgende:

<?
include("config.php");
$realname = $_REQUEST['realname'];
$brugernavn = $_REQUEST['brugernavn'];
$password = $_REQUEST['password'];
$billede = $_REQUEST['billede'];

$query = "SELECT count(*) FROM brugere WHERE brugernavn = '$brugernavn'";
$result = mysql_result(mysql_query($query), 0);

if ($result > 0) {
    echo "Brugernavnet er desværre allerede optaget";
    echo "<br />";
    echo "Prøv venligst igen med et nyt brugernavn";
    exit();
    }
    else
    {
$query = "INSERT INTO brugere(realname, brugernavn, password, billede) VALUES ('$realname', '$brugernavn', '$password', '$billede')";
if (mysql_query($query)){
    echo "Du har nu oprettet en ny bruger med følgende oplysninger:<br />";
    echo "Rigtige navn: $realname<br />";
    echo "Brugernavn: $brugernavn<br />";
    echo "Password: $password";
}
    }
?>
Avatar billede nickyc Nybegynder
08. marts 2005 - 23:24 #7
jeg takker.. det virkede, svar plz?
Avatar billede nickyc Nybegynder
17. juni 2005 - 09:32 #8
hmm, ingen svar ?
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester