php / mysql - данные не регистрируются в базе данных - PullRequest
0 голосов
/ 12 декабря 2018

Я хочу сделать регистрационную форму студента.Я не получаю сообщений об ошибках, но данные не вводятся в базу данных.

INDEX для INDEX NUMBER USERNAME для USER EMAIL для EMAIL

У меня были проблемы с индексной переменной, которая сказала, чтоон не определен, я не уверен, правильно ли я определил переменную.

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<!-- TemplateBeginEditable name="doctitle" -->
<title>Untitled Document</title>
<!-- TemplateEndEditable -->
<!-- TemplateBeginEditable name="head" -->
<!-- TemplateEndEditable -->
</head>

<body>

<?php
	session_start();
	$_SESSION["message"] = "";
	
	
	$mysqli = new MySQLi("localhost","root","","accounts");
	
	if ($_SERVER['REQUEST_METHOD'] == "POST"){
		$username = $mysqli->real_escape_string($_POST["username"]);
		$email = $mysqli->real_escape_string($_POST["email"]);
		
		$index = ($_POST["email"]);
		
		
		
		$_SESSION["username"] = $username;
		$_SESSION["email"] = $email;
		
		
		
		$sql = "INSERT INTO users (index, email, name) "
    . "VALUES ('$index', '$email', '$username')";	
		
		//check if mysql query is successful
if ($mysqli->query($sql) === true)
{
    $_SESSION[ 'message' ] = "Registration succesful! Added $username to the database!";
    //redirect the user to welcome.php
    header( "location: welcome.php" );
}
		else{
			$_SESSION["message"] = "user could not be added to the database";
		}
		
		
		
	}
	else{
			$_SESSION["message"] = "could not initiate session";
		}
		
	
	
	
	
	?>



<link href="//db.onlinewebfonts.com/c/a4e256ed67403c6ad5d43937ed48a77b?family=Core+Sans+N+W01+35+Light" rel="stylesheet" type="text/css"/>
<link rel="stylesheet" href="form.css" type="text/css">
<div class="body-content">
  <div class="module">
    <h1>Create an account</h1>
    <form class="form" action="form.php" method="post" enctype="multipart/form-data" autocomplete="off">
      <div class="alert alert-error"></div>
      
      <input type="text" placeholder="User Name" name="username" required />
<input type="email" placeholder="Email" name="email" required />
      <br>
      
      <input type="text" placeholder="Index Number" name="index" required /><br>
     
      <input type="submit" value="Register" name="register" class="btn btn-block btn-primary" />
    </form>
  </div>
</div>



</body>
</html>

1 Ответ

0 голосов
/ 12 декабря 2018

Измените эту строку:

$sql = "INSERT INTO users (index, email, name) "
. "VALUES ('$index', '$email', '$username')";    

На это:

$sql = 'INSERT INTO users (index, email, name) '
. 'VALUES ("$index", "$email", "$username")';   

Надеемся решить вашу проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...