Gå til innhold

Sjekke om bruker allerede er i databasen?


Anbefalte innlegg

Skrevet

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 42

Sorry, username allready exists!

Videoannonse
Annonse
Skrevet

mysql_query (mysql_num_rows($_POST['username']) > 0);

 

:no:

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';

Skrevet

Hm.. :ermm:

 

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>';
}
?>

Skrevet (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 av Ståle
Skrevet (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 av Yaricks

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 konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...