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

Форум PHP

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

 

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

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

тема: Помогите доработать скрипт обновления
 
 автор: zloi_burgui   (05.07.2007 в 13:15)   письмо автору
3.7 Кб
 
 

Пишу скрипт обновления. Примеры брал на этом форуме и никак не могу найти ошибку, не обновляет информацию в БД. Ниже прикладываю сам скрипт и кладу его и другие файлы в прикрепленном файле. Народ помогите пожалуйста, а то уже второй день сижу как дурак не могу найти в чем проблема. Сам файл для обновления:redact1.php
<?
$onpage = 1; // записей на страницу
$table = "nzdpm"; // из какой таблицы
include ('config.php');
$page=page();
$result=sql_query($onpage, $page, $table);
while($data=mysql_fetch_array($result))
{
echo '
<table border="0">
<form action=update.php method=POST>
<tr>
<td>УДК:</td>
<td><input type=text name="udk" value="'.$data['udk'].'"></td>
</tr>
<tr>
<td>Автор:</td>
<td><input type=text size="140" name="avtors_ua"
value="'.$data['avtors_ua'].'">
</td>
</tr>
<tr>
<td>Автор_ru:</td>
<td><input type=text size="140" name="avtors_ru"
value="'.$data['avtors_ru'].'">
</td>
</tr>
<tr>
<td>Автор_en:</td>
<td><input type=text size="140" name="avtors_en"
value="'.$data['avtors_en'].'">
</td>
</tr>
<tr>
<td>Заголовок:</td>
<td><textarea name="title_ua" rows="3" cols="105">"'.$data["title_ua"].'"
</textarea>
</td>
</tr>
<tr>
<td>Заголовок_ru:</td>
<td><textarea name="title_ru" rows="3" cols="105">"'.$data['title_ru'].'"
</textarea>
</td>
</tr>
<tr>
<td>Заголовок_en:</td>
<td><textarea name="title_en" rows="3" cols="105">"'.$data['title_en'].'"
</textarea>
</td>
</tr>
<tr>
<td>Рік:</td>
<td><input type=text size="140" name="rik" value="'.$data['rik'].'">
</td>
</tr>
<tr>
<td>Том:</td>
<td><input type=text size="140" name="tom" value="'.$data['tom'].'">
</td></tr>
<tr>
<td>Сторінки:</td>
<td><input type=text name="page" size="140" value="'.$data['page'].'"></td>
</tr>
<tr>
<td>Розділ:</td><td><input type=text name="rozdil" size="140"
value="'.$data['rozdil'].'">
</td>
</tr>
<tr><td>Розділ_ru:</td>
<td><input type=text name="rozdil_ru" size="140"
value="'.$data['rozdil_ru'].'">
</td>
</tr>
<tr>
<td>Розділ_en:</td>
<td><input type=text name="rozdil_en" size="140"
value="'.$data['rozdil_en'].'"></td></tr>
<tr>
<td>Резюме:</td>
<td><textarea name="abstract_ua" rows="6" cols="105">
"'.$data['abstract_ua'].'"</textarea>
</td></tr>
<tr>
<td>Резюме_ru:</td>
<td><textarea name="abstract_ru" rows="6" cols="105">"'.$data['abstract_ru'].'"
</textarea>
</td></tr>
<tr>
<td>Резюме_en:</td>
<td><textarea name="abstract_en" rows="6" cols="105">"'.$data['abstract_en'].'"
</textarea>
</td></tr>
<input type=hidden name="id" value='.$data['id'].'><br /></td></tr></table>
<br /><br />';
echo '<input type=submit class=butt value="Записати дані">
</form><br /><br />
<form action=delete.php method=post>
<input type=hidden name=id value='.$data['id'].'>
<input type=submit class=butt value="Видалити запис"></form>';
};
$navigation = navigation($onpage, $page, $table); // определим навигацию
echo $navigation; // выведем ее
mysql_close(); // отключение от БД
echo '<br /><br />';
echo '<a href="index.php">На головну сторінку</a>';
?>

и файл который обновляет записи update.php
<?
/*Об'являємо глобальні настройки*/
$host="localhost";
$user="root";
$passw="";
$dbase="museum";
$table="nzdpm";
/*зєднання з БД*/
mysql_connect($host,$user,$passw) or die ("<font color='red'>Неможливо встановити з'єднання з базою даних. Зверніться до адміністратора.</font>");
/*вибір БД*/
mysql_select_db($dbase) or die ("<font color='red'>База даних зараз недоступна. Зверніться до адміністратора.</font>");
$id=$_POST['id'];
$rik=$_POST['rik'];
$rozdil=$_POST['rozdil'];
$rozdil_ru=$_POST['rozdil_ru'];
$rozdil_en=$_POST['rozdil_en'];
$udk=$_POST['udk'];
$avtors_ua=$_POST['avtors_ua'];
$avtors_ru=$_POST['avtors_ru'];
$avtors_en=$_POST['avtors_en'];
$title_ua=$_POST['title_ua'];
$title_ru=$_POST['title_ru'];
$title_en=$_POST['title_en'];
$page=$_POST['page'];
$abstract_ua=$_POST['abstract_ua'];
$abstract_ru=$_POST['abstract_ru'];
$abstract_en=$_POST['abstract_en'];
$query='UPDATE nzdpm SET
rik="'.$rik.'",
rozdil="'.$rozdil.'",
rozdil_ru="'.$rozdil_ru.'",
rozdil_en="'.$rozdil_en.'",
udk="'.$udk.'",
avtors_ua="'.$avtors_ua.'",
avtors_ru="'.$avtors_ru.'",
avtors_en="'.$avtors_en.'",
title_ua="'.$title_ua.'",
title_ru="'.$title_ru.'",
title_en="'.$title_en.'",
page="'.$page.'",
abstract_ua="'.$abstract_ua.'",
abstract_ru="'.$abstract_ru.'",
abstract_en="'.$abstract_en.'"
WHERE id="'.$id.'"';
$ath=mysql_query($query);
?>

   
 
 автор: zloi_burgui   (06.07.2007 в 07:53)   письмо автору
 
   для: zloi_burgui   (05.07.2007 в 13:15)
 

Народ помогите пожалуйста. Очень нужно доработать этот скрипт.

   
 
 автор: provodnik   (06.07.2007 в 14:34)   письмо автору
 
   для: zloi_burgui   (06.07.2007 в 07:53)
 

Ну помочь доработать я не помогу, но кое что посоветую:

1. Включите рапортование об ошибках: error_reporting(E_ALL) . Это всегда помогает...
2. Посмотрите данные, находящиеся в массиве ($query) перед инъекцией в БД. Может какие либо значения переменных несоответствуют типу, либо вообще пустые и т.д.
3. И, блин, на время отладки и поиска ошибок - упростите форму до одного, двух полей...
Если сам алгоритм заработает, значит ищите ашыпку в коде формы..

   
 
 автор: zloi_burgui   (06.07.2007 в 15:04)   письмо автору
 
   для: provodnik   (06.07.2007 в 14:34)
 

Уровень ошибок включен. А как посмотреть какие даные находятся в масиве? А насчет упрощения уже сам додумался, буду делать. Спасибо за совет. Между прочим форма небольшая, просто у нее много полей, на этом форму я видел формы больш складные.

   
 
 автор: provodnik   (06.07.2007 в 17:29)   письмо автору
 
   для: zloi_burgui   (06.07.2007 в 15:04)
 

>Уровень ошибок включен.
Выводит что-нибудь?

>А как посмотреть какие даные находятся в масиве?
после всех проверок, перед самой вставкой в БД

echo $query;

либо

print_r ($query);


>Между прочим форма небольшая, просто у нее много полей, на этом форму я видел формы больш складные.
Я о том речь и веду - оставьте пару полей, и отлаживайте алгоритм... После чего добавляйте дополнительные поля, предварительно всё проверив...

   
 
 автор: zloi_burgui   (07.07.2007 в 15:50)   письмо автору
 
   для: provodnik   (06.07.2007 в 17:29)
 

Так и сделал, все заработало. Проблема была в самой БД. Теперь предо мной постала проблема создания постраничной навигации. Форум посмотрел, пробую что-то делать, пока получается не очень. Подскажите совет, как лучше сделать навигацию.
Всем спасибо за ответы, они очень мне пригодились.

   
Rambler's Top100
вверх

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