Ayola.net
Новости: В связи с обилием спама, постинг на форуме временно закрыт.

Для связи с поддержкой используйте тикеты в панели управления.
 
*
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь. Сентябрь 25, 2017, 12:59:21


Войти


Страниц: [1]
  Печать  
Автор Тема: Вопрос по запросам к БД  (Прочитано 5066 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Tanatos
Новичёк
*

Карма: 0
Сообщений: 31


Просмотр профиля
« : Февраль 05, 2008, 15:20:41 »

помгите пожалуйста в следующем. Я вставляю запись в БД, создается ключ автоинкриментом. Как мне сразу же при следующем запросе получить этот ключ для дальнейшей работы.
Записан
jr
Старший Новичёк
**

Карма: 3
Сообщений: 78

Злобный Ёж


Просмотр профиля WWW
« Ответ #1 : Февраль 05, 2008, 20:43:36 »

нуу, например
select max(field) from table;
выдаст максимальное значение поля field. покажите пример, всегда есть нормальные варианты %)
Записан

Error: The server is unwilling to process the request.
So sorry to disappoint you all, but you wont be dying tomorrow.
Tanatos
Новичёк
*

Карма: 0
Сообщений: 31


Просмотр профиля
« Ответ #2 : Февраль 06, 2008, 11:19:33 »

ну впринципе предложенный вами вариант, не так плох, если еще использовать в запросе какие-то условия. А пример прост. Есть 2 таблицы. 2-я связана с первичном ключом 1-й таблицы. Вставка происходит в 2 шага. сначало вставляется запись в первую таблицу, затем вставляется во-вторую, первичный ключ 1-й вставляется в поле 2-й.

P.S.

Есть еще вопросик, не хотел создавать новую тему.

Вопрос интересный. Как можно сделать так, чтобы при нажатии на ссылку типа ....script.php?id=$id переменная $id записывалась в сессию запущенную именно в этом скрипте, но ссылок много, создаются они в цикле, у каждой свой id. Просто можно передать через глобальную переменную, но почему-то у меня в следующем скрипте, сначало при открытии она значение id есть, а после обновления страницы пропадает. При каком условии переменная в глобальном массиве $_GET уничтожается. И как все это организовать.

для примера
...............
 $g=mysql_query("select * from forum1 where id_for=".$id." ORDER BY `data` DESC") or die("Error query");
for ($i=0; $i<mysql_num_rows($g); $i++)
      {
      $f=mysql_fetch_array($g);
     echo "<tr>";
      echo "<td><a href=\"forum/tema/messcr.php?id1=$f[id_f1]\">$f[tema]</a></td>"; 
                 }
..............

id1=$f[id_f1] вот это надо записать в сесию
Записан
Astraller™
Маэстро
*****

Карма: 151
Сообщений: 1389

Вселенское зло


Просмотр профиля WWW
« Ответ #3 : Февраль 06, 2008, 17:34:28 »

Вопрос интересный. Как можно сделать так, чтобы при нажатии на ссылку типа ....script.php?id=$id переменная $id записывалась в сессию запущенную именно в этом скрипте, но ссылок много, создаются они в цикле, у каждой свой id. Просто можно передать через глобальную переменную, но почему-то у меня в следующем скрипте, сначало при открытии она значение id есть, а после обновления страницы пропадает. При каком условии переменная в глобальном массиве $_GET уничтожается. И как все это организовать.

для примера
...............
 $g=mysql_query("select * from forum1 where id_for=".$id." ORDER BY `data` DESC") or die("Error query");
for ($i=0; $i<mysql_num_rows($g); $i++)
      {
      $f=mysql_fetch_array($g);
     echo "<tr>";
      echo "<td><a href=\"forum/tema/messcr.php?id1=$f[id_f1]\">$f[tema]</a></td>"; 
                 }
..............

id1=$f[id_f1] вот это надо записать в сесию
1) Молодой человек запомните - если вы пользуетесь ассоциативными массивами то ключ массива надо брать в ковычки:
Код:
$id1=$f['id_f1'];
2)Исходя из того что ошибок в такой реализации вы не получаете, значит - они у вас отключены. Поверь мне на слово - это не панацея. Пока приложение в процессе разработки вы должны видеть ВСЕ ошибки.
3)Массив $_GET получается из URL-строки. Т.е. исчезнуть он может в двух случаях:
 1. Будет переход, где соответственно будет другой URL.
 2. Вы сами его обнулите.
Записан

Гамлета здесь больше нет. Осталась только тень.
Tanatos
Новичёк
*

Карма: 0
Сообщений: 31


Просмотр профиля
« Ответ #4 : Февраль 08, 2008, 12:23:17 »

каким образом можно самому обнулить массив данных. например человек в форме вводит данные, они записываются по if(isset($_GET['submit']))
{запись}
страница обновляется, но если нажать кнопку "Назад", в браузере, происходит еще одна запись, такая же.

как этого избежать?
Записан
Astraller™
Маэстро
*****

Карма: 151
Сообщений: 1389

Вселенское зло


Просмотр профиля WWW
« Ответ #5 : Февраль 08, 2008, 12:53:57 »

каким образом можно самому обнулить массив данных. например человек в форме вводит данные, они записываются по if(isset($_GET['submit']))
{запись}
страница обновляется, но если нажать кнопку "Назад", в браузере, происходит еще одна запись, такая же.

как этого избежать?
if(isset($_GET['submit']))
{
[запись в БД]
header("Location: ".$_SERVER['HTTP_REFERER']);
}
Записан

Гамлета здесь больше нет. Осталась только тень.
tzps@ayola.ru
Модератор
Маэстро
*****

Карма: 79
Сообщений: 1695



Просмотр профиля WWW
« Ответ #6 : Февраль 08, 2008, 14:32:39 »

Этот способ сработает только для GET запроса, имейте в виду.
Записан

Tanatos
Новичёк
*

Карма: 0
Сообщений: 31


Просмотр профиля
« Ответ #7 : Февраль 08, 2008, 15:05:39 »

спасибо. попробую. отпишусь
Записан
Tanatos
Новичёк
*

Карма: 0
Сообщений: 31


Просмотр профиля
« Ответ #8 : Февраль 08, 2008, 15:38:03 »

и еще. не взыщите за навящивость. подскажите. когда я пишу в строке браузера например http://сайт/подкаталог/ он выдает мне список файлов

Index of /подкаталог
 Name                    Last modified       Size  Description
--------------------------------------------------------------------------------
 Parent Directory        10-Jan-2008 12:

как этого избежеть? как это скрыть?

тестирую на локальном хосте.
Записан
N@KE
Просветлённый
****

Карма: 2
Сообщений: 898



Просмотр профиля WWW
« Ответ #9 : Февраль 08, 2008, 15:46:27 »

и еще. не взыщите за навящивость. подскажите. когда я пишу в строке браузера например http://сайт/подкаталог/ он выдает мне список файлов

Index of /подкаталог
 Name                    Last modified       Size  Description
--------------------------------------------------------------------------------
 Parent Directory        10-Jan-2008 12:

как этого избежеть? как это скрыть?

тестирую на локальном хосте.
а здесь такое не прокатит Улыбающийся
Записан
Tanatos
Новичёк
*

Карма: 0
Сообщений: 31


Просмотр профиля
« Ответ #10 : Февраль 08, 2008, 18:10:43 »

спасибо. успокоили )))))))
Записан
Страниц: [1]
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.13 | SMF © 2006, Simple Machines LLC

2003-2008 © ООО "Инфотур" - Бесплатный хостинг Ayola.net
Valid XHTML 1.0! Valid CSS! Dilber MC Theme by HarzeM
Страница сгенерирована за 0.072 секунд. Запросов: 17.