Я пытаюсь реализовать двухэтапную регистрационную форму для своего сайта, в которой я использовал 2 отдельные страницы, чтобы получить информацию от пользователя.Многоступенчатая форма регистрации PHP/MySql с использованием сеансов
Первый шаг:
if($submit)
{
$connect = mysql_connect("localhost","root","");
mysql_select_db("mydb");
$queryreg = mysql_query("INSERT INTO volunteerbio VALUES (<my insert values>)");
}
//gets the latest id added
$query = mysql_query("SELECT MAX(volunteerID) FROM volunteerbio");
$numrows = mysql_num_rows($query);
if($numrows!=0)
{
while($row = mysql_fetch_assoc($query))
{
$dbaccountID = $row['volunteerID'];
}
header("Location: http://localhost/RedCrossCaloocan/registration2_volunteer.php");
$_SESSION['volunteerID']=$dbaccountID;
}
}
?>
Что первый шаг делает то, что он создает полную строку таблицы, в котором значение, необходимое для второго этапа будет временно оставил с пустыми значениями, пока они не будут обновлены в следующий шаг.
Второй шаг:
<?php
session_start();
$idnum = @$_SESSION['volunteerID'];
$connect = mysql_connect("localhost","root","");
mysql_select_db("mydb");
if($submit)
{
$updateSkills = mysql_query("
UPDATE volunteerbio
SET medicalSkillRating = $medicalRating,
electronicsSkillRating = $electronicRating,
errandSkillRating = $errandRating,
childCareSkillRating = $childCareRating,
counsellingSkillRating = $counsellingRating,
officeSkillRating = $officeRating,
communicationSkillRating =$communicationRating,
carpentrySkillRating = $carpentryRating
WHERE volunteerID = $idnum;
");
}
?>
Второй шаг в основном обновляет поля, где заполнены с пустыми значениями в течение первого шага, чтобы завершить регистрацию.
Первый шаг уже работает и может добавлять значения в базу данных, однако у меня возникла проблема с обновлением пустых значений с помощью второго шага.
У меня такое ощущение, что может возникнуть проблема с моим использованием сеансов, чтобы получить новый сгенерированный идентификатор с первого шага, но я просто не могу понять это.
Удалось устранить проблему. Кажется, мне пришлось изменить некоторые имена, когда я использовал MAX. Спасибо за помощь и отличный совет по кодированию! – Programmer
NP. Добро пожаловать в SO! – PeeHaa