私は PHP を初めて使用するので、エラーを見つけるのに苦労していますが、これは単純に見つけることができません。私が持っているコードは、送信時にユーザーを登録していないだけで、最後のコードを実行しない理由がわかりません。- 「挿入」機能になると停止します。
助言がありますか?
<?php
session_start();
?>
<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>Member system version 1.0</title>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<header>
<h1>Simpelt login system</h1>
</header>
<nav>
<ul>
<li><a href="./">Forside</a></li>
<li><a href="login.php">Log ind</a></li>
<li><a href="register.php">Registrer dig</a></li>
<li><a href="memberpage.php">Medlemsside</a></li>
<li><a href="contact.php">Kontakt</a></li>
</ul>
</nav>
<section>
<aside>
<ul>
<li><h3>Lille test overskrift</h3></li>
<li></li>
</ul>
</aside>
<article>
<?php
if($_POST['registerbtn']) {
$getuser = $_POST['user'];
$getemail = $_POST['email'];
$getpass = $_POST['pass'];
$getconfirmpass = $_POST['confirmpass'];
if ($getuser){
if ($getemail) {
if ($getpass) {
if ($getconfirmpass) {
if ($getpass === $getconfirmpass) {
if ((strlen($getemail) >= 7) && (strstr($getemail, "@")) && (strstr($getemail, "."))) {
require("connect.php");
$query = mysql_query("SELECT * FROM users WHERE username='$getuser'");
$numrows = mysql_num_rows($query);
if ($numrows == 0) {
$query = mysql_query("SELECT * FROM users WHERE email='$getemail'");
$numrows = mysql_num_rows($query);
if ($numrows == 0) {
$getpass = md5(md5("Jasdl".$getpass."SDa823k"));
$date = date("F, d Y");
$code = md5(rand());
mysql_query("INSERT INTO users VALUES(
'', '$getuser', '$getpass', '$getemail', '0', '$code', '$date'
)");
$query = mysql_query("SELECT * FROM users WHERE username='$getuser'");
$numrows = mysql_num_rows($query);
if ($numrows == 1) {
$site = "http://localhost:8888/php-projekter/login-projekt";
$webmaster = "Kasper Legarth <kaspersunivers@gmail.com>";
$headers = "From: $webmaster";
$subject = "Aktivering af din konto";
$message = "Tak fordi du oprettede en konto, for at aktivere din konto skal du klikke på nedstående link.\n";
$message .= "$site/activate.php?user=$getuser&code=$code\n";
$message .= "Du skal aktivere din konto for at kunne logge ind.";
if (mail($getemail, $subject, $message, $headers)) {
$confirmpass_error = "DET VIRKER!!!!";
$getuser = "";
$getemail = "";
}
else
$confirmpass_error = "Der skete en fejl, din mail blev ikke sendt";
}
else
$confirmpass_error = "Der skete en fejl, din bruger blev ikke oprettet";
}
else
$email_error = "Den email er allerede i brug";
}
else
$user_error = "Det brugernavn er desværre allerede taget";
mysql_close();
}
else
$email_error = "Du skal bruge en gyldig email";
}
else
$confirmpass_error = "Dine adgangskoder er ikke ens";
}
else
$confirmpass_error = "Du skal skrive din kode igen";
}
else
$pass_error = "Du skal vælge en adgangskode";
}
else
$email_error = "Du skal indstate din email";
}
else
$user_error = "Du skal indtaste et brugernavn";
}
$form = "<form action='register.php' method='post'>
<h2>Opret din egen konto</h2>
<p>Ønsket brugernavn:
<br><input type='text' name='user' value='$getuser' placeholder='Brugernavn' />
<br><small>$user_error</small></p>
<p>Din email adresse:
<br><input type='text' name='email' value='$getemail' placeholder='Email adresse' />
<br><small>$email_error</small></p>
<p>Vælg en adgangskode:
<br><input type='password' name='pass' value='' placeholder='Adgangskode' />
<br><small>$pass_error</small></p>
<p>Gentag adgangskode:
<br><input type='password' name='confirmpass' value='' placeholder='Gentag' />
<br><small>$confirmpass_error</small></p>
<p><input type='submit' name='registerbtn' value='Registrer dig' /></p>
</form>";
echo $form;
?>
</article>
</section>
<footer>
Copyright © 2013 - Design: <a href="http://kaspersunivers.dk">Kasper Legarth</a>
</footer>
</body>
</html>