[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: БД
dia
Я только начинаю осваивать пхп. Есть такое задание - в БД (БД "библиотека")с таблицей нужно вывести на экран эту таблицу, предусмотреть добавление новых записей и изображений через форму, удаление записей, сортировку и т.д.
может, кто-нибудь знает пример с подобной бд?
Большое спасибо.





Спустя 14 минут, 31 секунда (6.02.2011 - 18:40) Invis1ble написал(а):
dia
Цитата
Я только начинаю осваивать пхп. Есть такое задание - в БД (БД "библиотека")с таблицей нужно вывести на экран эту таблицу, предусмотреть добавление новых записей и изображений через форму, удаление записей, сортировку и т.д.
может, кто-нибудь знает пример с подобной бд?

прикольно.... это не просто пример, это по сути приложение полноценное...
Имхо, ты не с того начал )

Спустя 9 минут, 58 секунд (6.02.2011 - 18:50) dia написал(а):
вот есть хороший пример для начала http://htmlweb.ru/php/mysql.php
вроде он не более-менее понятен, но тут мало возможностей)

Спустя 4 минуты, 1 секунда (6.02.2011 - 18:54) Invis1ble написал(а):
dia
Я просто не совсем понимаю тебя.... Какова твоя цель? хочешь научиться программировать? или же тебе просто нужен рабочий код?

Спустя 1 час, 6 секунд (6.02.2011 - 19:54) dia написал(а):
Я хочу научиться программировать, но у меня есть такое задание.

Попробовала вывести на экран и добавить новую запись. Со вторым не получается - ошибок не пишет но и не добавляет запись в таблицу.

БД new_base, таблица tablica c двумя колонками - автор и книга


bibliothek.php


<html><body>

<h1
style="text-align:center;color:#ff0000">Библиотека</h1>
<form
action="add_books.html" method="post">
<table
border="0">
<tr
bgcolor="#cccccc">

<td
colspan=2 align=center ><input type=submit value="Добавить новую запись"></td>

</tr>
</table>

</form>

</body></html>







<?php
$link = mysql_connect("localhost", "root", "") or die("Не соединилось!!!");
mysql_select_db("new_base") or die("Не найдена БД");
$query = "SELECT * FROM tablica";
$result = mysql_query($query) or die("Запрос ошибочный");

echo "<table border='1' cellpadding='1' width='100%' highth='20'>";
echo "<tr>";

echo "<th>". '№1' ."</th>" ;
echo "<th>". '№' ."</th>" ;
echo "<th>". 'Автор' ."</th>" ;
echo "<th>". 'Название книги' ."</th>" ;
echo "</tr>";


$i=1;
WHILE ($row = mysql_fetch_array($result)){
echo "<tr
onMouseover =
\"this.bgColor = '#CCDAFF'\"
onMouseout = \"this.bgColor = '#FFFFFF'\">";

echo "<td>
"
. $i. "</td>";
$i++;
echo "<td
title='Номер в БД'>
"
.$row['id']. "</td>";


echo "<td
title='Автор'>"
;
echo $row['author'];
echo "</td>";


echo "<td
title='Название книги'>
"
.$row['book']. "</td>";



echo"</tr>";
}

echo"</table>";

mysql_free_result($result);
mysql_close($link);
?>




add_book.html

<html><body>

<form
action="insert_book2.php" method="post">
<table
border="0">


<tr
bgcolor="#cccccc">
<td
width="150">Автор</td>
<td
width="150">Название</td>
<!--<td width="150">Год издания</td>
<td width="150">Количество</td>
<td width="150">Количество в наличие</td>-->

</tr>

<tr >
<td >
Автор</td>
<td
align=center><input type="text" name="author" size="30" maxlength="30"></td>
</tr>

<tr>
<td >
Название</td>
<td
align=center><input type="text" name="book" size="30" maxlength="60"></td>
</tr>



<tr>
<td
colspan=2 align=center ><input type=submit value="Ввести"></td>

</tr>
</table>

</form>

</body></html>



insert_book2.php



<?php
error_reporting(E_ALL);
if (!$_POST['author'] || !$_POST['book'])
die("Не все данные введены. <br>
Пожалуйста, вернитесь назад и закончите ввод"
);

$author = trim($_POST['author']);
$book = trim($_POST['book']);

$author = addslashes($_POST['author']);
$book = addslashes($_POST['book']);

$db = "new_base";


$link = mysql_connect("localhost", "root", "") or die("Не соединилось!!!");
mysql_select_db($db) or die ("Невозможнго открыть $db");
$query = "INSERT INTO tablica VALUES('".$author."','".$book."')";

$result = mysql_query($query);
if($result) echo "Запись добавлена в БД";
mysql_close($link);
?>

Спустя 26 минут, 25 секунд (6.02.2011 - 20:21) Basili4 написал(а):
$result = mysql_query($query);

напиши так
$result = mysql_query($query) or die(mtsql_error());

будет видно что за ошибка

Спустя 20 секунд (6.02.2011 - 20:21) Invis1ble написал(а):
dia
ну у тебя тут и понамешано.. )))
попробуй в insert_book2.php
Цитата
$result = mysql_query($query);

заменить на
$result = mysql_query($query) or die(mysql_error());

Спустя 33 секунды (6.02.2011 - 20:22) Invis1ble написал(а):
Basili4
блин, вечно ты девушек уводишь )))

Спустя 4 минуты, 43 секунды (6.02.2011 - 20:26) Basili4 написал(а):
Invis1ble
wink.gif

Спустя 27 минут, 43 секунды (6.02.2011 - 20:54) dia написал(а):
Спасибо,заменила, извиняюсь за запутанный код,
вот что пишут

Column count doesn't match value count at row 1

Спустя 20 минут, 48 секунд (6.02.2011 - 21:15) dia написал(а):
может, это связано с полем id в таблице, который должен автоматически работать при добавлении новой записи.

Спустя 8 минут, 42 секунды (6.02.2011 - 21:24) Invis1ble написал(а):
dia
Цитата
может, это связано с полем id в таблице, который должен автоматически работать при добавлении новой записи.

совершенно верно. Попробуй так:
$query = "INSERT INTO tablica (`author`,`book`) VALUES ('".$author."','".$book."')";

Спустя 16 минут, 40 секунд (6.02.2011 - 21:40) dia написал(а):
Спасибо. заработало))). может, вы подскажете еще где почитать про добавление в табл. изображений книги и удаление записей)

Спустя 28 минут, 58 секунд (6.02.2011 - 22:09) Invis1ble написал(а):
изображений? ну это вроде бы надо про бинарные данные почитать, я в этом не силен... Но лучше, имхо, просто пути к файлам хранить в БД
а удаление -
DELETE FROM `table` WHERE ....
вобщем обычный синтаксис

Спустя 46 минут, 38 секунд (6.02.2011 - 22:56) inpost написал(а):
dia
php.su, mysql.ru - работа c мускулом.
В таблицу не надо добавлять картинки, туда лишь ссылку на картинку помещаются, картинка же хранится на сервере в папке.

Спустя 12 минут, 21 секунда (6.02.2011 - 23:08) dia написал(а):
с изображениями, кажется, понятно.

а как задать, что нужно удалить выделенную строку в таблице? Выделенную - например, кликом на строке?

Спустя 6 минут, 6 секунд (6.02.2011 - 23:14) inpost написал(а):
dia
Передаёшь через $_GET в браузной строке (строка и есть ссылка), так вот, передаёшь именно ID строки, которую удаляешь, а там "WHERE `id` = ".(int)$_GET['id']."
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.