Я создаю веб-сайт, где пользователь должен создать учетную запись. после входа в систему они могут добавить проект. Для этого я разделил детали проекта на 3 страницы, и пользователь должен заполнить детали. вот идея первых двух страниц, где "save and continue"
будет кнопка
первая страница будет выглядеть примерно так
project by:
email:
project title:
goal
Save and continue
Вторая страница будет выглядеть примерно так
tagline:
category:
details:
Save and continue
База данных будет выглядеть так (имя таблицы — createproject)
id projectby email projecttitle goal tagline category details
1 name1 email1 title1 goal1
PHP кодирование, которое я использовал для первой страницы
<?php
include('creator_session.php');
$con=mysqli_connect("asd","asd","asd","asd");
// Check connection
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
// escape variables for security
$projectby = mysqli_real_escape_string($con, $_POST['projectby']);
$email = mysqli_real_escape_string($con, $_POST['email']);
$projecttitle = mysqli_real_escape_string($con, $_POST['projecttitle']);
$goal = mysqli_real_escape_string($con, $_POST['goal']);
$sql="INSERT INTO creatorproject (projectby,email,projecttitle,goal) VALUES ('$projectby', '$email','$projecttitle', '$goal')";if (!mysqli_query($con,$sql)) {
die('Error: ' . mysqli_error($con));
}
header("Location: add_creator_project_basic.php");
exit;
mysqli_close($con);
?>
PHP кодирование, которое я использовал для второй страницы
<?php
include('creator_session.php');
$con=mysqli_connect("asd","asd","asd","asd");
// Check connection
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$tagline = mysqli_real_escape_string($con, $_POST['tagline']);
$category = mysqli_real_escape_string($con, $_POST['category']);
$details = mysqli_real_escape_string($con, $_POST['details']);
$sql = "UPDATE creatorproject SET tagline='".$tagline."',category='".$category."',details='".$details."' WHERE id='".$id."'";if (!mysqli_query($con,$sql)) {
die('Error: ' . mysqli_error($con));
}
header("Location: add_creator_project.php");
exit;
mysqli_close($con);
?>
По сути, я хочу, чтобы данные, которые сохраняются на второй странице, сохранялись в той же строке, где сохраняются данные на первой странице, для этого я использовал запрос на обновление и, поскольку идентификатор уникален, поэтому я поставил условие на Это. хотя ошибки не отображаются, но запись не сохраняется в базе данных. возможно я не несу идентификатор правильно. Может кто-нибудь, пожалуйста, скажите мне, как я могу сохранить данные
Сохраните идентификатор из вставленной строки со страницы 1 в параметре сеанса или в качестве параметра URL на странице 2.
Вы можете получить идентификатор из вставленной строки, выполнив это:
$id = mysql_insert_id();
Затем либо установите параметр как ?project_id='ID'
при отправке пользователя на страницу 2 или сеанс с:
session_start();
$_SESSION['project_id'] = $id;
Теперь вы можете обновить SQL-запрос на странице с помощью $_GET['project_id']
или же $_SESSION['project_id']
как это:
$sql = "UPDATE creatorproject SET tagline='".$tagline."',category='".$category."',details='".$details."' WHERE id='".$_SESSION['id']."'";
Других решений пока нет …