2015-12-08 2 views
-1

Пока я обновляю свой браузер, записи регистрационной формы поступают в базу данных каждый раз, когда я нажимаю REFRESH, профессор сказал мне решить эту проблему с помощью LAST_INSERT_ID().Регистрационная форма PHP, включая базу данных

Я могу получить last_insert_id из базы данных, но не знаю, что бы я сделал дальше с этим ID. Пожалуйста, помогите .. enter image description here

+0

Вы должны добавить свой код к своему вопросу, он поможет другим взглянуть на него и предоставить вам обратную связь. – Raisen

+0

Перенаправление на любую другую страницу или перезагрузку этой страницы через заголовок после отправки формы. –

+0

Вы можете сообщить об успешном сообщении пользователю –

ответ

0

Рекомендуемый способ заключается в использовании Post/Redirect/Get шаблон. Есть другие способы достижения желаемого here.

Я не уверен, что ваш профессор просит сделать с последним идентификатором вставки. Может быть, он имеет в виду что-то вроде этого,

if(isset($_SESSION['last_insert_id'])){ // At the beggining  
       //redirect to a another location 
    } 

    // Code for insertion goes here 

    $_SESSION['last_insert_id'] = $last_insert_id; // Get and store the insertion id as a session 
+0

hey a3ey спасибо за вышесказанное, но все еще не работает, пока я применял ваш код, значения не могут быть введены в базу данных.please предложить else @waiting :) –

+0

Могу ли я увидеть код? – 73ey

+0

a3ey Я прикрепил снимки, пожалуйста, проверьте –

0

Я думаю, что вы используете ту же страницу, чтобы сохранить данные, если это так, то выполните следующий метод:

<?php 
if(isset($_POST[userName])) 
{ 
    // Put your Registration Operation Code Here 

    header('Location: ./Registrationform.php'); 
} 
?> 

После DataBase вставки он перенаправляется на ту же страницу. Теперь Refresh выполняется с помощью метода GET не методом POST. Таким образом, вы можете исключить дубликаты записей таким образом.

+0

Это было правильно, но мне нужно решить эту проблему с помощью last_insert_id(), надеюсь вы сэр. –

0

В соответствии с вашим требованием я использовал последний вставленный идентификатор для проверки перед вставкой записей в базу данных.

<?php 
session_start(); 
if(isset($_POST[userID])) 
{ 
    $flag = false; 
    if(isset($_SESSION['last_insert_id'])) 
    { 
    if($_SESSION['last_insert_id'] == $_POST[userID]) 
    { 
     $flag = false; 
     header('Location: ./Registrationform.php'); 
    } 
    else 
    { 
     $flag = true; 
     $_SESSION['last_insert_id'] = $_POST[userID]; 
    } 
    } 

    if($flag == true) 
    { 
    // Put your Registration Operation Code Here 
    } 
} 
?> 
+0

Спасибо за помощь, сэр, не смог ответить вовремя извините за это. –

+0

Идентификатор автоматически генерируется, как плохо вы получаете идентификатор пользователя и как? –

+0

@ KushmeetSingh - Все поля, которые вы используете? и каковы все почтовые переменные, которые вы используете? Пожалуйста, напишите сценарий, который я вам помогу ... –

Смежные вопросы