SQL, проблема с foreign key

218
10 декабря 2017, 12:41

Моя проблема началась с того, что при добавлении комментариев, они добавлялись ко всем постам.

У меня есть две таблицы:

первая, под названием post, содержит колонки post_id, user_id, content и checked(это эдакая фишка, могут видеть написанный вами текст другие или нет).

и друга, под названием comments, содержит id_post, comment_id, content и user_name.

Как я понимаю, нужно было сделать эдакий запрос:

ALTER TABLE `comment` ADD FOREIGN KEY (id_post) REFERENCES `post`(post_id);

Но, в результате, в колонке id_post всё по нулях.

Очень прошу о помощи тех, кто это дочитал. Так же у меня в голове никак не укладывается понимание этих primary и foreign key, потому буду чрезвычайно благодарна за помощь.

Answer 1

Сделайте скрытое поле в блоке ввода комментария, типа:

<input type="hidden" value="<?php echo $row['ID']?>" name="post_id">

При добавлении комментария используйте:

$post_id = $_GET['post_id'];
$sql = `insert intro comment(id_post, content, date) values ('$post_id','$text','$date');`
READ ALSO
Проверка строки на вхождение букв в верхнем и нижнем регистре

Проверка строки на вхождение букв в верхнем и нижнем регистре

Привет Stackoverflow! Есть проблемаНапример, есть строка: CTyZQW9c5j2ja

452
Отправка POST без формы PHP

Отправка POST без формы PHP

Здравствуйте, подскажите пожалуйстаПочему обработка POST не происходит на стороне контроллера? Код:

203
Регулярные выражения Кратность

Регулярные выражения Кратность

Как с помощью регулярного выражения проверить кратно ли число 100 числу 1000?

311