<MyRusakov.ru />

Профессия Web-разработчик

Профессия Web-разработчик

Этот комплект за 8 месяцев превратит Вас в Web-разработчика с нуля. Учиться достаточно 1 час в день.

Начнёте Вы с HTML, CSS и вёрстки сайтов. Потом перейдёте к программированию и JavaScript. Затем изучите PHP, MySQL, SQL, Python. Изучите Web-фреймворки Laravel и Django. Создадите 5 своих сайтов для портфолио.

Комплект содержит:

- 540 видеоуроков

- 110 часов видео

- 1205 заданий для закрепления материала из уроков

- 5 финальных тестов

- 7 сертификатов

- 12 Бонусных курсов

Подробнее
Подписка

Подпишитесь на мой канал на YouTube, где я регулярно публикую новые видео.

YouTube Подписаться

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Какая тема Вас интересует больше?

Форум сайта MyRusakov.ru

Узнать id добавленной статьи
30.10.2013 17:26:52 Узнать id добавленной статьи Сообщение #1
ilyadenisovid

ilyadenisovid

Мастер

Мастер

Дата регистрации:
28.01.2013 18:32:29

Сообщений: 213

Здравствуйте! Есть функция добавления записи в БД. Нужно в этой же функции узнать id этой записи. Как это сделать?

<?php
function addTheme($id_theme, $id_user, $title) {
global $mysqli;
connectDB();
$mysqli->query("INSERT INTO `asks` (`id_theme`, `id_user`, `title`, `date`) VALUES ('$id_theme', '$id_user', '$title', UNIX_TIMESTAMP())";
closeDB();
}
?>
Профиль
30.10.2013 18:11:22 Узнать id добавленной статьи Сообщение #2
den98

den98

Новичок

Новичок

Дата регистрации:
21.12.2012 09:25:29

Сообщений: 14

Id записи надо передавать как параметр в функцию а при вызове этой функции подставлять значение, например:

http://site.ru?view=article&id=7;

$id_theme= $_GET['id'];
Вызываем функцию:
addTheme($id_theme, $id_user, $title);


Можно также воспользоваться внутри этой функции SQL запросом и вытащить id статьи из базы:

$id_theme = "SELECT `id_theme` FROM `table_name` WHERE .....";
Профиль
30.10.2013 18:19:11 Узнать id добавленной статьи Сообщение #3
ilyadenisovid

ilyadenisovid

Мастер

Мастер

Дата регистрации:
28.01.2013 18:32:29

Сообщений: 213

Вы меня не поняли, id - auto_increment, добавляется само, независимо от меня.
Профиль
30.10.2013 18:27:26 Узнать id добавленной статьи Сообщение #4
den98

den98

Новичок

Новичок

Дата регистрации:
21.12.2012 09:25:29

Сообщений: 14

Тогда только запросом.
Какие данные еще есть и структуру таблицы посмотреть бы.
Профиль
30.10.2013 19:04:51 Узнать id добавленной статьи Сообщение #5
ilyadenisovid

ilyadenisovid

Мастер

Мастер

Дата регистрации:
28.01.2013 18:32:29

Сообщений: 213

В запросе выше все видно.
Профиль
30.10.2013 21:14:24 Узнать id добавленной статьи Сообщение #6
fabrigas201

fabrigas201

Продвинутый

Продвинутый

Дата регистрации:
20.01.2012 13:08:31

Сообщений: 59

После инсерта ставите

$last_id = $mysqli->insert_id

http://php.net/manual/ru/mysqli.insert-id.php
$last_id id последней записи. Вам это нужно.

P.S. Избавьтесь от глобальных переменных. Это зло. Все можно обойтись без них. Особенно если используете ООП
Профиль
31.10.2013 05:36:36 Узнать id добавленной статьи Сообщение #7
ilyadenisovid

ilyadenisovid

Мастер

Мастер

Дата регистрации:
28.01.2013 18:32:29

Сообщений: 213

а почему это зло?
Профиль
01.11.2013 14:29:28 Узнать id добавленной статьи Сообщение #8
fabrigas201

fabrigas201

Продвинутый

Продвинутый

Дата регистрации:
20.01.2012 13:08:31

Сообщений: 59

Это я тоже выразился как-то не правильно. Нет , глобальные переменные есть зло. Но если нет выходя то можно использовать. Вообще из этих переменных ухудшается читаемость кода, переносимость. Так же это считается плохим стилем программирования. Также можно легко потерять данную переменную.


http://phpforum.ru/index.php?showtopic=77121
http://freehabr.ru/qa/222.html

Прочитайте и решите использовать или нет
Профиль