|
|
|
|
|
для: Loki
(21.12.2007 в 13:49)
| | Большое спасибо за совет. =) Теперь tema_id во второй таблице равна tema_id первой. Только подскажите пожалуйста как сделать чтоб при нажатии на первую tema_id выводилась вторая? Буду ну очень вам благодарен | |
|
|
|
|
|
|
|
для: Sergey1984
(21.12.2007 в 13:30)
| | 1. не надо при введении каждой новости пытаться создавать таблицу.
2. значение 0 у вас потому, что вы его туда не вводите. надо что-то типа такого
<?
mysql_query ("INSERT INTO Table_1 (text_tema, ndate)
VALUES ('". addslashes($Tema). "', NOW())");
$theme_id=mysql_insert_id();//узнаем последний добавленный идентификатор
mysql_query ("INSERT INTO Table_2 (text_novost, tema_id)
VALUES ('". addslashes($Nov). "', $theme_id)");
|
| |
|
|
|
|
|
|
|
для: Sergey1984
(21.12.2007 в 13:30)
| | ...tema_id во второй таблице у меня почему-то всегда 0
Если ты ВНИМАТЕЛЬНО посмотришь на свой запрос во вторую таблицу
mysql_query ("INSERT INTO Table_2 (text_novost)
VALUES ('". addslashes($Nov). "')");
|
То увидишь, что в неё ты НЕ ВСТАВЛЯЕШЬ ИД новости!...
поэтому у тебя там 0 (по твоим словам). На самом деле, судя по описанию второй таблицы
Create table table_2 (
Novost_id int not null Auto_increment,
tema_id int not null,
text_novost text not null,
PRIMARY KEY(Novost_id)
)
|
В неё новости ВООБЩЕ не добавляются, потому что tema_id не может быть NULL, а дефолтное значение ты НЕ ЗАДАЛ...
ЗЫ Убедительная просьба, АККУРАТНО оформлять вопросы! Это же невозможно нормально читать! | |
|
|
|
|
|
|
|
для: Loki
(21.12.2007 в 11:42)
| | Извиняюсь за не точный вопрос.
Есть форма
<html>
<body>
<form action="2.php" method="POST">
Тема:<input type="=text" name="Tema">
Новость:<input type="text" name="nov">
<br><input type="submit" value="сохранить" >
<input type="reset" value="Очистить">
</form>
</body>
</html>
<?php //2.php
$Nov= $_POST['nov'];
$Tema=$_POST['Tema'];
$link = mysql_connect("localhost", "root", "");
$sqwe= mysql_select_db('Novostnaja',$link);
//Создаются две таблицы
$sql = 'CREATE TABLE Table_1 (tema_id INT NOT NULL AUTO_INCREMENT, text_tema TEXT NOT NULL,
ndate DATETIME NOT NULL, PRIMARY KEY(tema_id))';
mysql_query($sql);
$sql2 = 'Create table table_2 (Novost_id int not null Auto_increment, tema_id int not null,
text_novost text not null, PRIMARY KEY(Novost_id))';
mysql_query($sql2);
//Заполнение таблиц: в одну тема, в другую новость
mysql_query ("INSERT INTO Table_1 (text_tema, ndate)
VALUES ('". addslashes($Tema). "', NOW())");
mysql_query ("INSERT INTO Table_2 (text_novost)
VALUES ('". addslashes($Nov). "')");
// Затем цикл выводит темы сообщений
$request = "SELECT text_tema, ndate FROM Table_1 ORDER BY ndate DESC";
$result = mysql_query($request);
while ($row = mysql_fetch_row($result)) {
print("<h3>". $row[0]. "</h3>");
};
?>
Мне надо чтоб при нажатии на Тему выводилась соответствующая ей новость. Как это сделать?
tema_id во второй таблице у меня почему-то всегда 0
Помогите, а то я уже всю голову сломал =( | |
|
|
|
|
|
|
|
для: Sergey1984
(21.12.2007 в 11:38)
| | если имеется ввиду что одной теме может соответствовать несколько новостей, то примерно так:
table_1
theme_id, theme_name
table_2
news_id, theme_id, news_text | |
|
|
|
|
|
|
| В две таблицы из HTML формы одновременно записывается ТЕМА и НОВОСТЬ соответственно.
Подскажите пожалуйста как правильно связать две таблицы чтоб потом можно было из первой сделать ссылку на вторую? | |
|
|
|
|