Вот код в файле submit.php. Я не получаю никаких ошибок на моем конце, я думаю, что данные должны поступать в базу данных, но я не знаю, где это происходит после того, как пользователь нажимает кнопку submit. Я думаю, что проблема находится где-то во втором php if else, поскольку он работал до того, как я добавил, проверяя, был ли пользователь зарегистрирован или нет.Форма не вставляет данные в базу данных mysql
<?php
session_start();
include_once 'dbconnect.php';
// variables for input data
$Comment = $_POST['Comment'];
$ip=$_SERVER['REMOTE_ADDR'];
// variables for input data
// sql query for inserting data into database
$sql_query = "INSERT INTO sentences(Comment, ipaddress) VALUES('$Comment','$ip')";
// sql query for inserting data into database
?>
<html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>The Internet Writes a Book</title>
<link rel="stylesheet" href="style.css" type="text/css" />
<link rel="stylesheet" href="css/bootstrap.min.css" type="text/css" />
</head>
<body>
<center>
<nav class="navbar navbar-default" role="navigation">
<div class="container-fluid">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar1">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="index.php">The Internet Writes A Novel</a>
</div>
<div class="collapse navbar-collapse" id="navbar1">
<ul class="nav navbar-nav navbar-right">
<?php if (isset($_SESSION['usr_id'])) { ?>
<li><p class="navbar-text">Signed in as <?php echo $_SESSION['usr_name']; ?></p></li>
<li><a href="logout.php">Log Out</a></li>
<?php } else { ?>
<li><a href="login.php">Login</a></li>
<li><a href="register.php">Sign Up</a></li>
<?php } ?>
</ul>
</div>
</div>
</nav>
<?php if (isset($_SESSION['usr_id'])) { ?>
<div id="body">
<div id="content">
<form method="post">
<table align="center">
<tr>
<td><input type="paragraph_text" cols="50" rows="10" name="Comment" placeholder="Sentence" required /></td>
</tr>
<tr>
<td><button type="submit" name="btn-save"><strong>Add to the Novel</strong></button></td>
</tr>
</table>
</form>
</div>
</div>
<?php } else { ?>
<a href="http://theinternetwritesanovel.tk/login.php">You must be logged in to submit a sentence!</a>
<?php } ?>
<br>
<a href="http://theinternetwritesanovel.tk/">Click here to view the novel!</a>
</div>
</center>
</body>
</html>
ли это не вставить данные в базу данных? $ sql_query = "INSERT INTO предложения (комментарий, ipaddress) VALUES ('$ Comment', '$ ip')"; – kooldawgstar
Подготовленные заявления значительно безопаснее, абсолютно. «Sanitizing» с функциями эвакуации является подверженным ошибкам. По возможности используйте ссылку на официальную документацию PHP. Сайты, такие как w3schools, имеют совершенно различное качество. – tadman
Нет $ sql_query - это буквально просто переменная со строкой внутри. Инициализация строки не будет немедленно отправлена в базу данных. Когда вы выполняете mysqli_query ($ dbc, $ sqlStatement), оператор SQL фактически отправляется на обрабатываемый сервер MySQL. И да, я согласен, санировать себя на самом деле недостаточно, поэтому я упоминаю, используя подготовленные заявления. –