|
|
|
|
|
для: Trianon
(04.07.2006 в 18:46)
| | Да спасибо. Я уже это исправила. А почему именно так? Дабовление заработало. | |
|
|
|
|
|
|
|
для: Trianon
(04.07.2006 в 18:46)
| | И создайте новую тему. Эта выросла так, что открывать её уже невозможно. | |
|
|
|
|
|
|
|
для: Сквиртел13
(04.07.2006 в 18:27)
| | Он неправильный. Где именно - я показал в (04.07.2006 в 16:53)
Вместо
$query="insert into books values
('".$isbn."','".$author."', '".$title."',
'".$price."')";
|
должно быть написано
$query="insert into books (isbn, author, title, price)
values ('$isbn','$author', '$title', $price)";
|
А изменять содержание можно будет.
Вы сначала добейтесь , чтоб добавление книг опять заработало. | |
|
|
|
|
|
|
|
для: Trianon
(04.07.2006 в 18:16)
| | Вот он этот код:
<html>
<head>
<title>Магазин "Буквофил" - Результаты вводы
новой книги</title>
</head>
<body>
<h1>Магазин "Буквофил" - Результаты ввода новой
киги</h1>
<?php
$isbn=$_POST['isbn'];
$author=$_POST['author'];
$title=$_POST['title'];
$price=$_POST['price'];
if (!$isbn || !$author || !$title || !$price)
{
echo 'Вы ввели не все необходимые сведенья.<br/>'
.'Пожалуйста, вернитесь на предыдущую
страницу и повторите ввод';
exit;
}
$price = doubleval($price);
if (!get_magic_quotes_gpc())
{
$isbn=addslashes($isbn);
$author=addslashes($author);
$title = addslashes($title);
$id=addslashes($id);
}
$link= mysql_connect('localhost',
'Irina13','pdtplf', 'books')
or die("Не соединилось!!!");
print ("Соединение успешно");
mysql_query("SET NAMES 'cp1251'");
$query="insert into books values
('".$isbn."','".$author."', '".$title."',
'".$price."')";
mysql_select_db("books") or die("Не найдена БД");
$result=mysql_query ("$query");
if ($result)
echo "Книга добавленна в базу данных";
?>
<a href="soedinenie-10.php">Посмотреть
изменение</a>
</body>
</html>
Но он правильный. Просто понимаете в чем дело. Мне нужно как я уже говорила изменять содержание строки таблицы щелкнув на нее. А у меня это не получается. В книги как это сделать не написанно. А я пока новечек в этом деле и не все знаю. Но сделать мне это нужно. | |
|
|
|
|
|
|
|
для: Сквиртел13
(04.07.2006 в 18:03)
| | Не идет у Вас другой скрипт.
Тот, который называется insert_book.php
Его то Вы и не показали. А зря. Т.к. ошибка, вероятно, там. Либо в структуре таблицы.
А из того, что показали, я могу ответить, почему в базе в таблице колонка id первая, а в html (как Вы выразились) последняя.
Первая она там потому что так вставлена. И это правильно. Вполне естественно, когда первичный ключ идет первым.
А html-таблицу (которая в общем случае может не иметь ничего общего с таблицей из БД) Вы рисуете сами. Вот этим кодом:
echo "<table border='1' width=10% bgcolor=gold>";
echo "<td>isbn</td>";
echo "<td>author</td>";
echo "<td>title</td>";
echo "<td>price</td>";
echo "<td>id</td>";
И здесь видно вполне отчетливо, что id надписан над пятым столбцом. | |
|
|
|
|
|
|
|
для: Trianon
(04.07.2006 в 17:53)
| | Значит так пишу все по порядку:
У меня есть код:
<?
$link = mysql_connect("localhost", "Irina13", "pdtplf")
or die("Не соединилось!!!");
print "Соединение успешно";
mysql_query("SET NAMES 'cp1251'");
mysql_select_db("books") or die("Не найдена БД");
echo "<table border='1' width=10% bgcolor=gold>";
echo "<td>isbn</td>";
echo "<td>author</td>";
echo "<td>title</td>";
echo "<td>price</td>";
echo "<td>id</td>";
$r=mysql_query("select * from books");
for ($i=0; $i<mysql_num_rows($r); $i++)
{ echo "<tr>";
$f=mysql_fetch_array($r);
echo "<td>$f[isbn]";
echo "<td>$f[author]</td>";
echo "<td>$f[title]</td>";
echo "<td>$f[price]</td>";
echo "<td><a href='newbook.html?id=$f[id]'>добавить</a> <a href='delete.html ?id=$f[id]'>удалить</a></td>";
echo "</tr>";
}
echo "</table>";
?>
<a href="delete.html">Изменить</a>
<a href="connect.html">Вернуться</a>
Он выводит таблицу на экран.
когда я добавила:
echo "<td><a href='newbook.html?id=$f[id]'>добавить</a> <a href='delete.html ?id=$f[id]'>удалить</a></td>";
у меня появился столбик id и в нем соответственно удалить добавить. Я щелкаю дабавить и появляется форма:
<html>
<head>
<title>Магазин "Буквофил" - Форма ввода новой
книги</title>
</head>
<body>
<h1>Магазин "Буквофил" - Форма ввода новой
книги</h1>
<form action="insert_book.php" method="post">
<table border="0">
<tr>
<td>ISBN</td>
<td><input type="text" name="isbn" maxlength="13"
size="13"></td>
</tr>
<tr>
<td>Автор</td>
<td><input type="text" name="author"
maxlength="30" size="30"></td>
</tr>
<tr>
<td>Название</td>
<td><input type="text" name="title"
maxlength="60" size="30"></td>
</tr>
<tr>
<td>Цена</td>
<td><input type="text" name="price" maxlength="7"
size="7"></td>
</tr>
<tr>
<td colspan="2"><input type="submit"
value="Зарегистрировать"></td>
</tr>
</table>
</form>
</body>
</html>
И почему то не добовляется.
Хотя раньше работало, без столбика id. | |
|
|
|
|
|
|
|
для: Сквиртел13
(04.07.2006 в 17:25)
| | Только что взял Ваш скрипт, добавил предоженные изменения, и несколько изменив подключение к БД, проверил. Всё замечательно добавляется.
Правда, цена искажается - я пробовал на книге за 191 р. Но в целом всё идет.
Так что показывайте скрипт, который не идет. И дамп структуры таблицы. Ошибки где-то там.
А чем Вы в html таблицу смотрите? | |
|
|
|
|
|
|
|
для: Trianon
(04.07.2006 в 17:08)
| | И в html таблица выглядит так:
isbn author title price id
ппп ппп 89 0.00 добавить удалить
А в консоле
id идет первым столбцом а за ним все остальные
Почему? | |
|
|
|
|
|
|
|
для: Trianon
(04.07.2006 в 17:08)
| | Хорошо таблица у меня теперь такая но он все равно не дабавляет!)) | |
|
|
|
|
|
|
|
для: Сквиртел13
(04.07.2006 в 17:01)
| | AUTO_INCREMENT должно стоять в операторе создания таблицы. Я же показал Вам дамп.
CREATE TABLE books (
id int(11) NOT NULL auto_increment,
isbn char(13) NOT NULL default '',
author char(50) default NULL,
title char(100) default NULL,
price float(4,2) default NULL,
PRIMARY KEY (id)
);
|
| |
|
|
|
|