Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: запись в базу при обновлении страницы
 
 автор: ipic   (30.01.2008 в 12:18)   письмо автору
 
 

Здравствуйте.
В форме сообщений необходимо сделать так, чтобы запрос на запись в базу производился после нажатия кнопки "Отправить", а не после обновления страницы.
Покажите, пожалуйста, примеры того, как это делается.
Спасибо

   
 
 автор: R_A_D_I_S_T   (30.01.2008 в 12:43)   письмо автору
 
   для: ipic   (30.01.2008 в 12:18)
 

как вариант, можно сделать это через сессии.

if(isset($_POST['name'])){
if ($_SESSION['name']!=$name){

$sql="INSERT into table (name) VALUES ('$name'')";
mysql_query($sql) or die($sql);
$_SESSION['name']=$name;
}
}

запись в БД будет произведена тока 1 раз, несмотря на то, сколько раз была обновлена страница. Надо не забыть стартануть сессию в начале страницы:

session_start();

   
 
 автор: Петр   (30.01.2008 в 13:47)   письмо автору
 
   для: ipic   (30.01.2008 в 12:18)
 

т.е. по нажатию на кнопку отправить осуществляется первая запись в БД, а при обновлении страницы (F5) добавлять не надо? Сделать можно так:
1 после записи в БД перегрузить страницу функцией (header('location: index.php');)
2 перед записью проверять нет ли точно такой же записи в БД

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования