Yaricks Skrevet 23. februar 2007 Skrevet 23. februar 2007 Hei, maser litt til jeg.. Hvordan kan man sjekke i ett registrerings script om en bruker allerede eksisterer i databasen? Prøvde noe kode her, men ja.. Klikk for å se/fjerne innholdet nedenfor // hvis man trykker på send knappen if (mysql_real_escape_string(isset($_POST['post']))) { mysql_query (mysql_num_rows($_POST['username']) > 0); echo "Sorry, username allready exists!"; // } else if (mysql_real_escape_string(isset($_POST['post']))) { echo 'Your request has been sent!'; mysql_query (" INSERT INTO `pilots` (`pilot_id`, `username`, `password`, `name`, `user_email`, `city`, `country`, `userlevel`) VALUES ('', '$username', '$password', '$name', '$user_email', '$city', '$country', '1' )") or die (mysql_error ()); } Denne koden sender denne meldingen når man åpner siden, altså før man har tatt å trykket på knappen.. Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /mounted-storage/home15a/sub003/sc17720-BQAO/www/mytva/beta/inc/register_continue.php on line 42Sorry, username allready exists!
Ståle Skrevet 23. februar 2007 Skrevet 23. februar 2007 mysql_query (mysql_num_rows($_POST['username']) > 0); Det er feil $username = mysql_real_escape_string($_POST['username']); if (mysql_num_rows(mysql_query("SELECT * FROM brukere WHERE username='$username'")) > 0 ) echo 'Det finnes allerede en bruker med det brukernavnet';
Yaricks Skrevet 23. februar 2007 Forfatter Skrevet 23. februar 2007 Hm.. Funker ikke helt, poenget er at hvis brukernavnet eksisterer så skal den ikke poste til databasen. Det gjør den nå.. Og det står konstant: Det finnes allerede en bruker med det brukernavnet Kan legge ut hele koden.. Klikk for å se/fjerne innholdet nedenfor <form action="<?php $_SERVER['PHP_SELF'] ?>" method="post"> Username: <input name='username' type='text' id="username" value="" size='25'maxlength='25' /> <br /> Password: <input name='password' type='text' id="password" value="" size='30' maxlength='25' /> <br /> Name: <input name='name' type='text' id="name" value="" size='30' maxlength='100' /> <br /> E-mail: <input name='user_email' type='text' id="user_email" value="" size='30' maxlength='100' /> <br /> City: : <input name='city' type='text' id="city" value="" size='30' maxlength='100' /> <br /> Country: <input name='country' type='text' id="country" value="" size='30' maxlength='100' /> <br /> <br /> <input type='submit' name='post' value='Join us!' /> </form> <?php include ("inc/connect_db.php"); // $id = $_GET['id']; // altså må URL'en være noe slikt: // side.php?id=1 . Bytt ut 1 med ID nummeret til personen du skal slette. $username = mysql_real_escape_string($_POST['username']); $password = mysql_real_escape_string($_POST['password']); $name = mysql_real_escape_string($_POST['name']); $user_email = mysql_real_escape_string($_POST['user_email']); $city = mysql_real_escape_string($_POST['city']); $country = mysql_real_escape_string($_POST['country']); // hvis man trykker på send knappen if (mysql_real_escape_string(isset($_POST['post']))) { (mysql_num_rows(mysql_query("SELECT * FROM pilots WHERE username='$username'")) > 0 ); echo 'Det finnes allerede en bruker med det brukernavnet';// } else if (mysql_real_escape_string(isset($_POST['post']))) echo 'Your request has been sent!'; mysql_query (" INSERT INTO `pilots` (`pilot_id`, `username`, `password`, `name`, `user_email`, `city`, `country`, `userlevel`) VALUES ('', '$username', '$password', '$name', '$user_email', '$city', '$country', '1' )") or die (mysql_error ()); // } //mysql_query(" INSERT INTO `traning` ( `pilot_id` , `email` , `Aircraft` , `info` , `Instructor` ) // VALUES ('$pilot_id', '$email', '$aircraft', '$info')") or die (mysql_error ()); ?> <?php if ($profile[username] != "") { echo '<br /><br /><a href="logout.php">Logout</a>'; } ?>
Ståle Skrevet 23. februar 2007 Skrevet 23. februar 2007 (endret) jeg ville hatt det sånn: // hvis man trykker på send knappen if (isset($_POST['post'])) { if (mysql_num_rows(mysql_query("SELECT * FROM pilots WHERE username='$username'")) > 0 ) echo 'Det finnes allerede en bruker med det brukernavnet'; else { $check = mysql_query (" INSERT INTO `pilots` (`pilot_id`, `username`, `password`, `name`, `user_email`, `city`, `country`, `userlevel`) VALUES ('', '$username', '$password', '$name', '$user_email', '$city', '$country', '1' )") or die (mysql_error ()); if ($check == TRUE ) echo 'Your request has been sent!'; else echo 'Something happened!'; }} Endret 23. februar 2007 av Ståle
Yaricks Skrevet 23. februar 2007 Forfatter Skrevet 23. februar 2007 (endret) Hm.. Får feilmeldinger.. Parse error: syntax error, unexpected $end in /mounted-storage/home15a/sub003/sc17720-BQAO/www/mytva/beta/inc/register_continue.php on line 65 eller hvis jeg slutter de kommandoene får jeg denne: Parse error: syntax error, unexpected T_ELSE in /mounted-storage/home15a/sub003/sc17720-BQAO/www/mytva/beta/inc/register_continue.php on line 46 Endret 23. februar 2007 av Yaricks
Ståle Skrevet 23. februar 2007 Skrevet 23. februar 2007 det skulle være 1 til } på slutten. Eller var det det du prøvde?
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå