Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: редактирование записей в бд
 
 автор: enodik   (05.12.2010 в 21:02)   письмо автору
 
 

Помогите, пожалуйста, разобраться, запуталась совсем:)
Необходимо создать форму запроса поиска к базе данных, для поиска записей которые необходимо редактировать, и скрипт обработки этого запроса.
Имя базы данных-lab7, имя таблицы - date.
Форма поиска:
<HTML>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<meta http-equiv="Content-Language" content="ru">

<title>Редактирование данных</title>
<Body >
<form action="7.php" method="post">
<font face="times new roman cyr" size="6">
Редактирование данных<br>
</div></font>
<table width="80%" border="1" cellspacing="1" cellpadding="2">
<tr>
<td width=80% colspan=3>Имя: <input type="text" name="name" value="Введите имя" size = 40>
</td>
</tr>
<tr>
<td width=80% colspan=3>Отчество:<input type="text" name="otch" value="Введите отчество" size = 80></td>

</tr>

<tr>
<td width=80% colspan=3>Фамилия:<input type="text" name="family" value="Введите фамилию" size=80></td>
</tr>
<td width=80% colspan=3>e-mail <input type="text" name="mail" value="Введите адресс" size = 40>
</td>
<tr>
<td width=80% colspan=3>Телефон <input type="text" name="tel" value="Введите № телефона" size = 40>
</td>
</tr>
<tr>
<td width=80% colspan=3>город <input type="text" name="gorod" value="Введите город" size = 40>
</td>
</tr>
<tr> <td width=80% colspan=3>Страна <input type="text" name="strana" value="Введите страну" size = 40>
</td></tr>
</table>
<input type="submit" value="передать" name="knopka">

</form>
</Body>
</HTML>


7.php, обработка запроса:

<?php
$hostname="localhost";
$username="lena";
$password="123";
$dbName="lab7";
$usertable="date";
/* Создать соединение с MySql*/
mysql_connect($hostname,$username,$password) or die("No connect");
mysql_select_db("$dbName") or die("No select DB");
/* Выбрать людей, имена которых начинаются на $family */

$query="select * from $usertable where (`name`, `family`, `otch`, `mail`, `tel`, `sity`, `country`) like ('".$_POST['name']."','".$_POST['otch']."','".$_POST['family']."', '".$_POST['mail']."','".$_POST['tel']."', '".$_POST['gorod']."','".$_POST['strana']."') " ;

$result=mysql_query($query);
/* Сколько нашлось таких сотрудников? */
$number=mysql_numrows($result);
/* Распечатка выбранных сотрудников */
$i=0;
if ($number == 0)
{
print "Нет данных о '".$_POST['family']."' в БД <br>";
}
elseif ($number > 0)
{
while ($i < $number)
{
/* Присвоение переменным значений полей family, tel для i-й строки */
$family=mysql_result($result,$i,"family");
$tel=mysql_result($result,$i,"tel");
$name=mysql_result($result,$i,"name");
$otch=mysql_result($result,$i,"otch");
$sity=mysql_result($result,$i,"sity");
$country=mysql_result($result,$i,"country");
$mail=mysql_result($result,$i,"mail");
/* Удаление записи */
$query="delete from $usertable where family='".$_POST['family']."'";
$result=mysql_query($query);
/* Создание формы для редактирования */

print "<form method=post action='form5.php'>";

print "<br><b>Введите имя:</b>";
print "<br><input name='name' value='$name' size=30>";

print "<br><b>Введите фамилию:</b>";
print "<br><input name='family' value='$family' size=30>";


print "<br><b>Введите отчество:</b>";
print "<br><input name='otch' value='$otch' size=30>";

print "<br><b>Введите почту:</b>";
print "<br><input name='mail' value='$mail' size=30>";

print "<br><br><b>Введите номер телефона:</b>";
print "<br><input name='tel' value='$tel' size=10>";

print "<br><b>Введите город:</b>";
print "<br><input name='sity' value='$sity' size=30>";

print "<br><b>Введите страну:</b>";
print "<br><input name='country' value='$country' size=30>";

print "<br><br><input type='submit' value='Зарегистрировать'>";
print "</form>";
}
?>

form5.php, сохранение данных в базе данных:

<?php
hostname="localhost";
$username="lena";
$password="123";
$dbName="lab7";
$usertable="date";
/* Создать соединение */
MYSQL_CONNECT($hostname,$username,$password) OR DIE("Не могу подсоединиться");
/* Выбор БД */
MYSQL_SELECT_DB($dbName) or die("Не могу выбрать БД");
/* Введение информации в БД */
$query="INSERT INTO $usertable VALUES ('".$_POST['name']."','".$_POST['otch']."','".$_POST['family']."', '".$_POST['mail']."','".$_POST['tel']."', '".$_POST['gorod']."','".$_POST['strana']."') " ;
$result=MYSQL_QUERY($query);
/* Закрыть соединение */
MYSQL_CLOSE();
print "Запись введена в БД! <br>";
?>

  Ответить  
 
 автор: slo_nik   (09.12.2010 в 00:09)   письмо автору
 
   для: enodik   (05.12.2010 в 21:02)
 

оформляйте куски кода соответствующими тегами, которые расположены над формой, что бы выглядело вот так

<?php
/* код оформленный тегами  */
echo ;
?>

А по теме....
В первую очередь выставьте уровень ошибок при помощи error_reporting(), это поможет Вам следить за ошибками, предупреждениями и замечаниями в работе скрипта.
Если Вы хотите редактировать/обновить запись в базе, то зачем Вам оператор INSERT? Для обновления используется совсем другой оператор
Не надо подключаться к базе два раза, достаточно в начале скрипта установить соединение
Сами SQL запросы это отдельный разговор...

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования