singlepost

PHP: Обработка форм HTML << На главную или назад  

Всем привет!
Подскажите, что не так?

файл html:
___________
<html>
<body>
<form action="index.php" name="myform" method="post">
<input type="text" name="mytext" size="50">
<textarea name="msg" cols="20" rows=”10” ></textarea>
<input name="Submit" type=submit value="Отправить данные">
</form>
</body>
</html>

файл php:
_____________
<?php
$text =($_POST['mytext']);
$msg =($_POST['mytext']);
echo $text; // Выводим содержимое текстового поля
echo 'текст';
?>

результат:
____________
вместо того чтобы показать
введенный в поле текст,
на странице вылезает

<?php
$x = ($POST['text']);
echo $x;
?>

70 ответов в теме “PHP: Обработка форм HTML”

  1. 25
    Андрей Дивеев ответил:

    Заходил щас на //beneto.ru
    Круто! Респект..

    Теперь вопрос:
    Сесси вPHP не получаются.

    Сессия это когда к зареганой
    переменной можно обращаться
    за пределами страницы в которой
    ее объявили, я правильно понимаю?

    Так вот для этого в настройках php.ini
    нужно указать какой-то путь к какой-то
    временной папке.. Как?

    Что-то шаманил, ниче хорошего не вышло..

  2. 24
    Сергей Сергеевич ответил:

    Так, вот без этого)

  3. 23
    ответил:

    Да правильно!
    XHTML в топку

  4. 22
    Сергей Jensi ответил:

    Да эт просто так:)

  5. 21
    ответил:

    А чейто я извращенец? 0_о

  6. 20
    Сергей Jensi ответил:

    >action="<?$_SERVER['PHP_SELF']?>"

    Это чё такое? Неужели работает??? о_О

    ><input type="file" name="text"/>
    Что значит не выбирает? У меня всё работает.

    >$f = $_POST['text'];
    >$fp = fopen( $f, "r" ) or die ( "Не удалось открыть $f" );
    Бред. Что ты пытаешься делать? Для загрузки учи $_FILES. Для открытия делается не так:))

    #20
    Вообще извращенец:)))

  7. 19
    ответил:

    Потомучто слеш надо ставить только в XHTML если такой случай%)

  8. 18
    Андрей Дивеев ответил:

    Всем привет!
    почему если вместо
    <textarea name="text">
    </textarea>

    поставить

    <input type="file" name="text"/>

    дальше своей папки не выбирает файлы?

    <html>
    <title>
    Mini-Builder
    </title>
    <body>

    <form name="myform" action="<?$_SERVER['PHP_SELF']?>" method="POST">
    <textarea name="text">
    </textarea>
    <input type="submit" name="submit" value="Загрузить" >
    </form>
    <?

    $f = $_POST['text'];
    $fp = fopen( $f, "r" ) or die ( "Не удалось открыть $f" );
    $fsize = filesize( $f );
    ?>
    <form name="myform2">
    <textarea rows="30">

    <?
    echo ( fread( $fp, ($fsize) ) );
    ?>
    </textarea>
    </form>
    </body>
    </html>

  9. 17
    Сергей Jensi ответил:

    #17
    Жди, пока загружу сайт в интернет, сейчас тестирую

    Alexandr Uniser Zlatokrylets, да не, у него же заработал мой скрипт и он использует локальный сервак, а не сервер в нете:)

    #17
    Да забудь об этом:)

  10. 16
    Андрей Дивеев ответил:

    #15
    А можешь в личку отправить свою статью или сдесь выложить?)

    #16
    что это за настройка?? это в денвере?

  11. 15
    Александр Златокрылец ответил:

    по всей вероятности на вэб-сервере не включена поддержка рхр-скриптов, поэтому он гонит их в качестве ответа

  12. 14
    Сергей Jensi ответил:

    Roman Shevelev, ЭТО что за ХЕРОМАНТИЯ ???!!! Я офигел с такой защиты, на крайний случай можно регулярками всё сделать, но нафига же пихать циклы, перерабатывать это всё о_О.

    #14
    Тебе на данный момент необходимо просто понять это всё, а про защиту скриптов пока забудь.

    p.s.: я статью про $_GET && $_POST уже написал, но сайт пока не закидывал в интернет о_О

  13. 13
    Андрей Дивеев ответил:

    Огромное спасибо, за отзывчивость!
    Но походу у меня что-то с компом не так….
    #13
    уже все варианты перепробовал,
    вместо результата выводится php код (((
    мне уже просто стыдно…

    а вот
    #7
    работает))))

    А еще я понял, что моё обучение
    в колледже мне ничего не даёт.
    Почти всему, что я умею научился
    по книжкам, по гуглу, и самое главное
    по ответам на мои вопросы от других людей.
    Т.к. иногда встаёшь на одном месте и пока
    тебе человек, а не книга не объяснит,
    дальше не идёшь.

    А простая сухая теория в двух словах, о
    том какая компания в каком году выпустила Apache,
    как на парах мало что дает.

  14. 12
    Роман Шевелев ответил:

    index.html

    <html>
    <body>
    <form action="index.php" method="post">
    <input name="mytext" size="50" />
    <textarea name="msg" cols="20" rows=”10”></textarea>
    <input type="submit" value="Отправить данные"/>
    </form>
    </body>
    </html>

    index.php:

    <?php
    function deslash(&$a) {
    foreach($a as $k=>$v)
    if (is_array($v)) {
    deslash($a[$k]);
    } else {
    $a[$k] = stripslashes($v);
    }
    }

    if(get_magic_quotes_gpc()) {
    deslash($_GET);
    deslash($_POST);
    }

    $text=array_key_exists('mytext',$_POST)?$_POST['mytext']:'Не передан параметр!!!';
    echo $text;
    ?>

    Вот как-то так, наверное…

  15. 11
    Сергей Jensi ответил:

    >Сергей прогер-заучка, а вот с глабальными массивами в формах работать >не есть гуд

    Не во всех случаях,иногда лучше оставить атрибут пустым или "#", но пусть человек хоть поймёт, что так тоже можно:)

    >$_SERVER нужен чтобы выводить результат на этой же странице?

    Да, но прочитайте чуть выше предложение:)

    >Можно ли по нажатию на submit выводить echo $msg; в другом документе?
    Да, конечно. $_POST || $_GET и передаёте.

    p.s.: напишу мануал тогда потом по использованию этих переменных, оказалось, что у народа много таких лёгких вопросов не решённых.

  16. 10
    Андрей Дивеев ответил:

    Спасибо за ответ, сергей! А суперглобальный массив $_SERVER нужен чтобы выводить результат на этой же странице? Можно ли по нажатию на submit выводить echo $msg; в другом документе?

  17. 9
    Сергей Сергеевич ответил:

    Сергей прогер-заучка, а вот с глабальными массивами в формах работать не есть гуд

  18. 8
    Сергей Сергеевич ответил:

    имена переменных в кавычках?
    ^⏝^ учите матчасть

  19. 7
    Сергей Jensi ответил:

    <html>
    <body>
    <form action="<?=$_SERVER['PHP_SELF']?>" name="myform" method="POST">
    <input type="text" name="mytext" size="50" value="Your text here!"><br>
    <textarea name="msg" cols="20" rows="10" >
    </textarea><br>

    <input name="Submit" type=submit value="Отправить данные">
    </form>
    </body>
    </html>

    <?php
    @$text = $_POST['mytext'];
    @$msg = $_POST['msg'];

    echo $text; // Выводим содержимое текстового поля

    echo $msg;

    echo 'текст'; // а это здесь нах*я ? Тесты?))
    ?>

    Я думаю, что автор сам догадается в чём проблема была:))

  20. 6
    Сергей Jensi ответил:

    ^⏝^ , ты меня просто убил таким… О_о

  21. 5
    ответил:

    Давай давай
    пиши скрипры без ковычек:)
    а еще скрипты без символов и букаф ты писал?
    И да я непоет.
    У меня реч запутаная и непонятная.
    Невсегда могу обьяснить нормально.

  22. 4
    Александр Мачехин ответил:

    А чего это вдруг кавычки стали обязательны? Ты вообще внимательно прочитал, что написано? Вот и заметно, что с телефона тебе нифига не видно. То, где ты вроде как ошибку нашёл – это окончательный вывод. Понимаешь, вообще, что предлагаешь?

  23. 3
    ответил:

    В самом файле вывода значения переменной очепятка.
    Он неуказал кавычки.
    echo "$х";
    надо так.
    Я сижу с телефона и то заметил.

  24. 2
    Александр Мачехин ответил:

    Нужно больше информации. Где-то совершенно глупая ошибка. Вплоть до указания не того файла. А пхп вообще обрабатывается?

  25. 1
    ответил:

    Текст который должен выводить оператор ехо должен быть в кавычках.
    echo "text";
    кстати.
    В двойных кавычках значение переменой будет выводится.
    А в одинарных переменая как текст выводится.

Клуб программистов работает уже ой-ой-ой сколько, а если поточнее, то с 2007 года.