Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.69/39: Рейтинг темы: голосов - 39, средняя оценка - 4.69
0 / 0 / 0
Регистрация: 03.06.2010
Сообщений: 10

Ввод/вывод из полей input и textarea в бд mysql с помощью php

17.12.2011, 23:37. Показов 7990. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
суть такая... из бд выводятся комментарии для редактирования... вывод работает нормально...

Страница:

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
<?php
error_reporting(E_ALL & ~ E_NOTICE);
  // Устанавливаем соединение с базой данных
  require_once("../config.php");
// Формируем заголовок страницы и подсказку
  $titlepage="Админка\n \"Редактирование комментариев\"\n";
  
  // Выводим шапку страницы
  include "../dump/adm_head.php";  
 
    if(isset($_GET['id_news']))
  {
    $query = "SELECT * FROM comments WHERE id_news=".$_GET['id_news'];
  }
 
  $new = mysql_query($query);
  if (!$new) echo("Ошибка");
?>
 
<table width=100% border="0" align=center >
        <tr>
<p class=boxmenu align=center><a class=menu href="index.php">Вернуться в администрирование новоcтей</a></p>
</tr>
    <table width=75% class=bodytable border=1 align=center>
      <tr class=tableheadercat align="center">
        <td width=150><p class=zagtable><p>Дата</p></td>
        <td width=400><p class=zagtable><p>Имя</p></td>
        <td width=800><p class=zagtable><p>Комментарий</p></td>
        <td colspan=2 width=150><p class=zagtable><p>Действие</p></td>
      </tr>
 
<?php  
    while($news = mysql_fetch_array($new))
    {
      // Выводим комментарии
      echo "<tr $colorrow >
              <td><p class='comments'>".$news['putdate']."</p></td>
              <td align=center><input class=input size=30 type=text name=name value=".$news['com_name']."></td>
              <td align=center><textarea class=input name=body rows=3 cols=50>".$news['com_body']."</textarea></td>
          <td align=center><p><a href=editcomment.php?id_com=".$news['id_com']." title='Редактировать комментарий'>Редактировать</a></p></td>
          <td align=center><p><a href=delcomment.php?id_com=".$news['id_com']." title='Удалить комментарий'>Удалить</a></p></td>
            </tr>";
    }
    echo "</table>";
?>
А вот при вводе обратно в бд после редактирования говорит что поля пустые...

Действие:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
error_reporting(E_ALL & ~ E_NOTICE);
 
  include "../config.php";
 
  if(empty($_POST['name'])) links("Отсутствует имя");
  if(empty($_POST['body'])) links("Отсутствует информация");
 
  $query = "UPDATE comments SET com_name='".$_POST['name']."',
                            com_body='".$_POST['body']."'
                    WHERE id_com=".$_GET['id_com'];
  if(mysql_query($query)) header("Location: editcomments.php?id_news=".$_POST['id_news']);
  else echo("Ошибка при добавлении комментария");
 
  function links($msg)
  {
    echo "<p>".$msg."</p>";
    echo "<p><a href=# onClick='history.back()'>Вернуться к редактированию</a></p>";
    echo "<p><a href=index.php>Администрирование новостей</a></p>";
    exit();
  }
?>
Подскажите в чем проблем пожалуйста...
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
17.12.2011, 23:37
Ответы с готовыми решениями:

php+mysql+textarea выполняется код в textarea
Здравствуйте проблема вот в чём Я вывожу в printf код &lt;textarea name=&quot;text&quot; rows=&quot;26&quot;&gt;%s&lt;/textarea&gt; и присваиваю %s переменную...

Ввод/вывод данных MySQL PHP
Сделал форму ввода формой вывода данных с БД(MySQL), в value прописал данные с БД(&lt;input name='$w' type='text' value='$w' size='10'&gt;)...

ВЫборка mysql с помощью input type='text'
есть список параметров который надо вводить в ручную... значение расхода топлива в городе от значение1 до значение 2.Значение вводишь, в...

9
 Аватар для kernel
28 / 28 / 7
Регистрация: 12.06.2009
Сообщений: 71
18.12.2011, 11:16
Я так понял что ты передаешь данные методом GET а проверяешь POST. Что бы проверять POST и отправлять данные с помощью ссылки, нужно будет создать форму, а ссылке с помощью JAVASCRIPT создать имитацию кнопки submit
0
Обитатель
 Аватар для vasvas7775
539 / 317 / 42
Регистрация: 24.12.2010
Сообщений: 795
18.12.2011, 12:18
lordofdeath,
HTML5
1
<input />
заключи в теги
HTML5
1
<form action='' method=''></form>
, где action, путь к обработчику, а method метод, которым передаешь данные формы post/get.
1
0 / 0 / 0
Регистрация: 03.06.2010
Сообщений: 10
18.12.2011, 16:54  [ТС]
подскажите еще плз как правильно такое организовать...
PHP
1
2
3
4
5
    $action1 = "editcomment.php?id_com="$news['id_com']";
    $action2 = "delcomment.php?id_com="$news['id_com'];
 
<form name=form1 enctype='multipart/form-data' action=$action1 method=post>
<form name=form2 enctype='multipart/form-data' action=$action2 method=post>
0
Обитатель
 Аватар для vasvas7775
539 / 317 / 42
Регистрация: 24.12.2010
Сообщений: 795
18.12.2011, 17:12
PHP
1
$action1 = "editcomment.php?id_com=".$news['id_com'];
PHP
1
<form name=form2 enctype='multipart/form-data' action=".$action2." method=post>
но вообще, путь сразу прописывается,
ведь твоя форма постоянна, как и ее обработчик

PHP
1
<form action="/ff/obr.php" method="post">
0
0 / 0 / 0
Регистрация: 03.06.2010
Сообщений: 10
18.12.2011, 17:23  [ТС]
прост при выполнении
PHP
1
editcomment.php?id_com=".$news['id_com']
передается только

PHP
1
editcomment.php?id_com=
а
PHP
1
.$news['id_com']
ID не передает=(
0
 Аватар для kernel
28 / 28 / 7
Регистрация: 12.06.2009
Сообщений: 71
18.12.2011, 17:50
покажи код полностью
0
Обитатель
 Аватар для vasvas7775
539 / 317 / 42
Регистрация: 24.12.2010
Сообщений: 795
18.12.2011, 18:03
Попробуй так
PHP
1
$action1 = "editcomment.php?id_com={$news['id_com']}";
Добавлено через 11 минут
если сделаешь форму вот так, Она передаст нужные тебе параметры как ты хочешь
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
$news = array(
id_com => sss
);
 
print"
<form action='editcomment.php'>
<input type='hidden' name='id_com' value='{$news['id_com']}' />
<input type='text' name='text' />
<input type='submit' />
</form>
";
?>
0
0 / 0 / 0
Регистрация: 03.06.2010
Сообщений: 10
18.12.2011, 18:18  [ТС]
Страница
editcomments.php


PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
<?php
error_reporting(E_ALL & ~ E_NOTICE);
  // Устанавливаем соединение с базой данных
  require_once("../config.php");
// Формируем заголовок страницы и подсказку
  $titlepage="Админка\n \"Редактирование комментариев\"\n";
  
  // Выводим шапку страницы
  include "../dump/adm_head.php";  
 
    if(isset($_GET['id_news']))
  {
    $query = "SELECT * FROM comments WHERE id_news=".$_GET['id_news'];
  }
 
  $new = mysql_query($query);
  if (!$new) echo("Ошибка");
?>
 
<table width=100% border="0" align=center >
        <tr>
<p class=boxmenu align=center><a class=menu href="index.php">Вернуться в администрирование новоcтей</a></p>
</tr>
    <table width=75% class=bodytable border=1 align=center>
      <tr class=tableheadercat align="center">
        <td width=150><p class=zagtable><p>Дата</p></td>
        <td width=400><p class=zagtable><p>Имя</p></td>
        <td width=800><p class=zagtable><p>Комментарий</p></td>
        <td colspan=2 width=150><p class=zagtable><p>Действие</p></td>
      </tr>
 
<?php  
    while($news = mysql_fetch_array($new))
    {
      // Выводим комментарии
      echo "<tr $colorrow >
              <td><p class='comments'>".$news['putdate']."</p></td>
              <td align=center><input class=input size=30 type=text name=name value=".$news['com_name']."></td>
              <td align=center><textarea class=input name=body rows=3 cols=50>".$news['com_body']."</textarea></td>
          <td align=center><p><a href=editcomment.php?id_com=".$news['id_com']." title='Редактировать комментарий'>Редактировать</a></p></td>
          <td align=center><p><a href=delcomment.php?id_com=".$news['id_com']." title='Удалить комментарий'>Удалить</a></p></td>
            </tr>";
    }
    echo "</table>";
?>
Действие
editcomment.php

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
error_reporting(E_ALL & ~ E_NOTICE);
 
  include "../config.php";
 
  if(empty($_POST['name'])) links("Отсутствует заголовок");
  if(empty($_POST['body'])) links("Отсутствует информация");
 
  $query = "UPDATE comments SET com_name='".$_POST['name']."',
                            com_body='".$_POST['body']."'
                    WHERE id_com=".$_GET['id_com'];
  if(mysql_query($query)) header("Location: editcomments.php?id_news=".$_GET['id_news']);
  else echo("Ошибка при добавлении комментария");
 
  function links($msg)
  {
    echo "<p>".$msg."</p>";
    echo "<p><a href=# onClick='history.back()'>Вернуться к редактированию</a></p>";
    echo "<p><a href=index.php>Администрирование новостей</a></p>";
    exit();
  }
?>
Действие 2 удаление комментария
delcomment.php


PHP
1
2
3
4
5
6
7
8
9
10
11
<?php
error_reporting(E_ALL & ~ E_NOTICE);
 
  require_once("../config.php");
 
  if(!preg_match("|^[\d]+$|",$_GET['id_news'])) echo("Ошибка при обращении к блоку новостей");
 
  $query = "DELETE FROM comments WHERE id_com=".$_GET['id_com'];
  if(mysql_query($query)) header("Location: index.php");
  else echo("Ошибка при обращении к блоку новостей");
?>
как это все добро выглядит


Проблема. Из полей name и body не передается текст. распознает как пустые поля.
0
 Аватар для kernel
28 / 28 / 7
Регистрация: 12.06.2009
Сообщений: 71
18.12.2011, 20:48
Страница
editcomments.php
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
<?php
error_reporting(E_ALL & ~ E_NOTICE);
  // Устанавливаем соединение с базой данных
  require_once("../config.php");
// Формируем заголовок страницы и подсказку
  $titlepage="Админка\n \"Редактирование комментариев\"\n";
  
  // Выводим шапку страницы
  include "../dump/adm_head.php";  
 
    if(isset($_GET['id_news']))
  {
    $query = "SELECT * FROM comments WHERE id_news=".$_GET['id_news'];
  }
 
  $new = mysql_query($query);
  if (!$new) echo("Ошибка");
?>
 
<table width=100% border="0" align=center >
        <tr>
<p class=boxmenu align=center><a class=menu href="index.php">Вернуться в администрирование новоcтей</a></p>
</tr>
    <table width=75% class=bodytable border=1 align=center>
      <tr class=tableheadercat align="center">
        <td width=150><p class=zagtable><p>Дата</p></td>
        <td width=400><p class=zagtable><p>Имя</p></td>
        <td width=800><p class=zagtable><p>Комментарий</p></td>
        <td colspan=2 width=150><p class=zagtable><p>Действие</p></td>
      </tr>
 
<?php  
    while($news = mysql_fetch_array($new))
    {
      // Выводим комментарии
      echo "<tr $colorrow >
              <td><p class='comments'>".$news['putdate']."</p></td>
<form action=edit.php method=post>
              <td align=center><input class=input size=30 type=text name=name value=".$news['com_name']." /></td>
              <td align=center><textarea class=input name=body rows=3 cols=50>".$news['com_body']."</textarea></td>
              <input type=hidden name=idcom value=".$news['id_com']." />
              <td align=center><input type=submit name=edit value=\"Редактировать\" /></td>
              <td align=center><input type=submit name=delete value\"Удалить\" /></td>
</form>
            </tr>";
    }
    echo "</table>";
?>
Действие
edit.php
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<?php
error_reporting(E_ALL & ~ E_NOTICE);
 
include "../config.php";
 
if(isset($_POST['edit'])){
  if(empty($_POST['name'])) links("Отсутствует заголовок");
  if(empty($_POST['body'])) links("Отсутствует информация");
 
  $query = "UPDATE comments SET com_name='".$_POST['name']."',
                            com_body='".$_POST['body']."'
                            WHERE id_com='".$_POST['idcom']."'";
  if(mysql_query($query)) header("Location: editcomments.php?id_news=".$_GET['id_news']);
  else echo("Ошибка при добавлении комментария");
 
  function links($msg)
  {
    echo "<p>".$msg."</p>";
    echo "<p><a href=# onClick='history.back()'>Вернуться к редактированию</a></p>";
    echo "<p><a href=index.php>Администрирование новостей</a></p>";
    exit();
  }
 
 }
 
 if(isset($_POST['delet'])){
  if(!preg_match("|^[\d]+$|",$_GET['id_news'])) echo("Ошибка при обращении к блоку новостей");
  $query = "DELETE FROM comments WHERE id_com='".$_POST['idcom']."'";
  if(mysql_query($query)) header("Location: index.php");
  else echo("Ошибка при обращении к блоку новостей");
}
?>
Попробуй такой вариант. Думаю должен работать правильно.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
18.12.2011, 20:48
Помогаю со студенческими работами здесь

PHP вывод в textarea
Всем привет. Как сделать кнопку которая будет выводить в textarea то что мне надо? Допустим есть: Имя: Фамилия: Телефон:. ...

Ввод данных в Input и их последующий вывод на странице
Добрый день. Только начал осваивать MVC. Осваиваю по оф документам и сайту metanit.com Под спойлером лирика о сложностях, можно...

Ввод данных с помощью формы, проведение каких-либо расчетов с помощью Excel и вывод данных в форму
Разработать одну - две электронные формы по теме и запрограммировать их с помощью языка VBA Автоматизация работы с MS Excel (ввод данных...

Вывод в mysql из нескольких полей
$result = @mysql_query(&quot;SELECT ID,category,status FROM $textable WHERE category = ''inomarki'' and status=''ok'' order by date DESC&quot;); ...

Реализовать ввод и вывод полей структуры
Здравствуйте ещё раз. Тут во второй лабе не могу понять как реализовать ввод и вывод полей структуры с клавиатуры. Функции должны работать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru