[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Вывод добавленных данных в $_POST
Sw1tchBack
Хочу написать скрипт комментов к статье. Надо чтобы данные вводились и выводились на одной странице, т.е. есть форма ввода и кнопка, человек вводит данные и они выводятся ниже. Никак не приходит мысль как это можно сделать на одной странице. Обьясните плиз rolleyes.gif



Спустя 2 минуты, 20 секунд (10.04.2009 - 13:57) Kuliev написал(а):
Цитата (Sw1tchBack @ 10.04.2009 - 10:55)
Хочу написать скрипт комментов к статье. Надо чтобы данные вводились и выводились на одной странице, т.е. есть форма ввода и кнопка, человек вводит данные и они выводятся ниже. Никак не приходит мысль как это можно сделать на одной странице. Обьясните плиз rolleyes.gif

Все очень просто! Найди на форуме тут полно таких примеров!!!

Спустя 3 минуты, 23 секунды (10.04.2009 - 14:00) Sw1tchBack написал(а):
Kuliev
Искал ненашел blink.gif

Спустя 5 минут, 37 секунд (10.04.2009 - 14:06) Viking написал(а):
дык в чем конкретно загвоздка?
выводишь форму;
if(данные запощены) выводишь данные

Спустя 1 минута, 44 секунды (10.04.2009 - 14:08) Kuliev написал(а):
Цитата (Sw1tchBack @ 10.04.2009 - 11:00)
Kuliev
Искал ненашел  blink.gif

Лана вот тебе пример
PHP
$form "<form method=post>";
$form .= "<input type=text name=text1 ><br>";
$form .= "<input type=text name=text2 ><br>";
$form .= "<input type=submit name=go value=GOOOO>";

echo 
$form;

// Если нажата кнопка проверяем данные
if (isset($_POST['go']))
{

// здесь утюжим переменные и записываем куда вам угодно
// в БД или файл

}

Спустя 5 минут, 35 секунд (10.04.2009 - 14:13) Sw1tchBack написал(а):
Kuliev
Блин, isset забыл wink.gif

Спустя 36 минут, 55 секунд (10.04.2009 - 14:50) agrus написал(а):
Если атрибут "action" тега "form" оставить пустым, данные из формы будут отправляться на ту же страничку, на которой эта форма находиться, на ней и пиши скрипт-обработчик формы:
<form method="post" action="">

Спустя 18 минут, 9 секунд (10.04.2009 - 15:08) apc написал(а):
Цитата (agrus @ 10.04.2009 - 11:50)
Если атрибут "action" тега "form" оставить пустым, данные из формы будут отправляться на ту же страничку, на которой эта форма находиться, на ней и пиши скрипт-обработчик формы:
<form method="post" action="">

я обычно делаю так:
action="?" более наглядно

Спустя 9 минут, 10 секунд (10.04.2009 - 15:17) Sw1tchBack написал(а):
Чето у меня не пашет blink.gif
PHP
echo "<font size=2 face=Arial><table cellpadding=0 cellspacing=0 width=600 align=center bgcolor=#EAEAEA><tr>";
echo 
"<td class=imgtd width=40>Name:</td>";
echo 
"<td class=imgtd><form method=post action=?><input type=text name=uname size=80%></td></tr>";
echo 
"<tr><td class=imgtd width=40>Comment:</td>";
echo 
"<td class=imgtd><textarea name=ucomment rows=5 cols=60></textarea></td></tr>";
echo 
"<tr><td colspan=2 class=imgtd><center><input type=submit value=o_O name=go><form></center></td></tr>";
echo 
"</td></tr></table></font>";
if (isset(
$_POST['go']))
{
mysql_query("INSERT INTO comments (`uname`,`ucomments`,`picid`) VALUES (`{$_POST['uname']}`,`{$_POST['ucomment']}`,`{$_GET['id']}`)");
}

Спустя 5 минут, 22 секунды (10.04.2009 - 15:23) Kuliev написал(а):
Sw1tchBack
PHP
mysql_query("INSERT INTO comments (`uname`,`ucomments`,`picid`) VALUES ('','".$_POST['uname']."','".$_POST['ucomment']."','".$_GET['id']."')") or die ( mysql_error() );


Спустя 5 минут, 9 секунд (10.04.2009 - 15:28) agrus написал(а):
comments у тебя не в кавычках huh.gif

Спустя 9 минут, 51 секунда (10.04.2009 - 15:38) Sw1tchBack написал(а):
Kuliev
Спс пашет smile.gif

Но другой баг появился. При нажатии на кнопку переадресовывается на страницу info.php? (адрес где форма - например info.php?id=8) и отображается соотв не та статья

Спустя 1 час, 31 минута, 14 секунд (10.04.2009 - 17:09) Sw1tchBack написал(а):
Так что делать? sad.gif

Спустя 1 день, 2 часа, 33 минуты, 10 секунд (11.04.2009 - 19:42) Kuliev написал(а):
Цитата (Sw1tchBack @ 10.04.2009 - 12:38)
Kuliev
Спс пашет smile.gif

Но другой баг появился. При нажатии на кнопку переадресовывается на страницу info.php? (адрес где форма - например info.php?id=8) и отображается соотв не та статья

Весь код выложи вместе с формой!

Спустя 35 минут, 40 секунд (11.04.2009 - 20:18) PandoraBox2007 написал(а):
PHP
mysql_query("INSERT INTO comments (`uname`,`ucomments`,`picid`) VALUES ('','".$_POST['uname']."','".$_POST['ucomment']."','".$_GET['id']."')") or die ( mysql_error() );


тут скуль инекции ....

Экранирование

PHP
// Variables (переменные)
$uname    = htmlspecialchars($_POST['uname']);
$ucomment = htmlspecialchars($_POST['ucomment']);
$id       = intval($_GET['id']);

// Строим запрос
$sql =  "INSERT INTO comments (`uname`, `ucomments`, `picid`) ";
$sql .= "VALUES ('$uname', '$ucomment', '$id')";

// Запрос в БД при возвращении (нуля = False) скрипт помирает die и отображает лог ошибки БД mysql_error с его хандлетом
if (!$result = mysql_query($sql))
{
    // Ошибка остановка выполнение 
    die( mysql_error($result) );
}

Спустя 23 часа, 33 минуты, 59 секунд (12.04.2009 - 19:52) Sw1tchBack написал(а):
Kuliev
PHP
<?php
include("./upload/config.php");
echo 
"
<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" 
   \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">
<html xmlns=\"http://www.w3.org/1999/xhtml\" lang=\"EN\" xml:lang=\"EN\">
<meta http-equiv=Content-Type content=text/html; charset=utf-8>
<meta http-equiv=Content-Language content=ru>
<head><title>Aleksey Chekini gallery</title></head>
<style type=text/css>
table {border-collapse: collapse;}
a:link {color: #808080;font-family: Tahoma;}
a:visited {color: #808080;font-family: Tahoma;}
a:active {background-color: #808080;font-family: Tahoma;}
a:hover {color: #808080k;font-family: Tahoma;}
.imgtd{border: 1px solid gray;}
table {border-collapse: collapse;}
td {padding: 5px;}
</style>
<body>
"
;
$strid=$_GET['id'];
$v=mysql_query("SELECT imgname,name,comment,style,cost,ptype FROM $dbtable WHERE id='$strid'");
$info=mysql_fetch_array($v);
echo 
"<div align=center><p><a href=all.php?act=show&type=$info[ptype]><font size=3><b><<< Return to gallery</b></font></a></p><table cellpadding=0 cellspacing=0 width=600>
            <tr>
                <td class=imgtd width=170 height=170 bgcolor=#EAEAEA><center><font face=Verdana size=2><br>"
;
echo 
"<img src=./upload/files/$info[0]><br>";
if (
$info[name] != "")
{ echo 
"<b>$info[name]</b><br>"; }
if (
$info[comment] != "")
{ echo 
"$info[comment]<br>"; }
if (
$info[style] != "")
{ echo 
"$info[style]<br>"; }
if (
$info[cost] != "")
{ echo 
"$info[cost]<br>"; }
echo 
"<br>

<b><font color=red>Call us +370 682 13595</font></b></td>
            </tr>
         </table></center></div></font>"
;
echo 
"<br>";
echo 
"<font size=2 face=Arial><table cellpadding=0 cellspacing=0 width=600 align=center bgcolor=#EAEAEA><tr>";
echo 
"<td class=imgtd width=40>Name:</td>";
echo 
"<td class=imgtd><form method=post action=?><input type=text name=uname size=80%></td></tr>";
echo 
"<tr><td class=imgtd width=40>Comment:</td>";
echo 
"<td class=imgtd><textarea name=ucomment rows=5 cols=60></textarea></td></tr>";
echo 
"<tr><td colspan=2 class=imgtd><center><input type=submit value=o_O name=go><form></center></td></tr>";
echo 
"</td></tr></table></font>";
if (isset(
$_POST['go']))
{
mysql_query("INSERT INTO comments (`uname`,`ucomment`,`picid`) VALUES ('".$_POST['uname']."','".$_POST['ucomment']."','".$_GET['id']."')") or die ( mysql_error() );
}
echo 
$copyright;
echo
"</body></html>";


Спустя 17 часов, 3 минуты, 41 секунда (13.04.2009 - 12:56) Sw1tchBack написал(а):
Есть хто? blink.gif

Спустя 23 дня, 8 часов, 37 минут, 48 секунд (6.05.2009 - 21:33) Claster написал(а):
Привет всем!

Нашёл по поиску похожую тему и обращаюсь с аналогичной проблемой.

1. Есть таблица в БД с такими полями:
id_cat int(11)
matter tinytext
dpi tinytext
price float(5,2)
note tinytext


2. Есть файл с формой. Addcatform.php

HTML
<form action="addcat.php" method="post" onsubmit="return sendform();">
<p>Добавить материал: <input type='text' name='matter'></p>
<p>Добавить разрешение: <input type='text' name='dpi'></p>
<p>Добавить цену: <input type='text' name='price'></p>
<p>Добавить примечание: <textarea name='note' rows='10' cols='60'></textarea></p>
<input type='submit' name='submit' value='добавить в каталог '>
</form>



3. И есть файл, обрабатывающий форму, и заносящий данные в БД. Addcat.php

3.1. первый код не работал. Был он такой:

PHP
if (isset($_POST["submit"])) {

$sql = 'INSERT INTO cat VALUES (NULL,  
'
.$_POST['matter'].',  
'
.$_POST['dpi'].',  
'
.$_POST['price'].',  
'
.$_POST['note'].'
)'
;    

  $result 
= mysql_query($sql);
}



3.2. Второй код тоже не работал. Был такой:

PHP
if (isset($_POST["submit"])) {
mysql_query("INSERT INTO cat (`matter`, `dpi`, `price`, `note`) VALUES (
'"
.$_POST['matter']."', '".$_POST['dpi']."', '".$_POST['price']."', '".$_POST['note']."' ")



3.3. В этой же теме нашёл ещё пример. Тоже не работает! Вот он:

PHP
if (isset($_POST["submit"])) {
 $matter = htmlspecialchars($_POST['matter']);
 $dpi = htmlspecialchars($_POST['dpi']);
 $price = htmlspecialchars($_POST['price']);
 $note = htmlspecialchars($_POST['note']);

$sql =  "INSERT INTO cat (`matter`, `dpi`, `price`, `note`) ";
$sql .= "VALUES ('$matter', '$dpi', '$price', '$note')";

 $result = mysql_query($sql);

if ($result)
  echo "<a href='index.php'>Вернуться в основной каталог</a>";
  else echo "Ошибка при добавлении каталога";
}



И постоянно "Ошибка при добавлении каталога".

Всю голову уже сломал, не знаю что делать. Надеюсь на помощь.

Спустя 1 час, 23 минуты, 26 секунд (6.05.2009 - 22:57) kirik написал(а):
Замени if ($result) на if (!$result) smile.gif

Зы. А это че такое?
Цитата
if (isset($_POST["submit"])) {
mysql_query("$sql = "INSERT INTO cat (`matter`, `dpi`, `price`, `note`) VALUES (
'".$_POST['matter']."', '".$_POST['dpi']."', '".$_POST['price']."', '".$_POST['note']."' )

Спустя 22 часа, 7 секунд (7.05.2009 - 20:57) Claster написал(а):
Цитата
Замени if ($result) на if (!$result)


Пробовал... Не помогает.


Цитата
Зы. А это че такое?


На форуме нашёл.

Спустя 19 часов, 10 минут, 43 секунды (8.05.2009 - 16:08) Claster написал(а):
kirik,

Цитата
Зы. А это че такое?


Кто-то собщение подкорректировал. Изначально было три варианта и не так. Вот как:

PHP
if (isset($_POST["submit"])) {
mysql_query("INSERT INTO cat (`matter`, `dpi`, `price`, `note`) VALUES (
'"
.$_POST['matter']."', '".$_POST['dpi']."', '".$_POST['price']."', '".'note']."' ");


_____________
Постигаю PHP... а он убегает :(
Быстрый ответ:

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