Textarea $ _POST不返回任何值

时间:2018-09-27 06:52:22

标签: php html

我正在尝试创建一个将数据发布到变量中的文本区域,然后稍后可以调用该变量以将其保存到数据库中,但是无论我尝试执行什么操作,它都不会返回任何内容,无论是空字符串还是NULL,代码看起来像这样

<textarea id="comments" name="comments" cols="30" rows="4" placeholder="Kirjoita tähän:">' . $comments = $_POST['comments'] .
            $_SESSION['commentone'] = $_POST['comments']; echo '</textarea>';

但是由于某种原因,如果我将其更改为:

    <textarea id="comments" name="comments" cols="30" rows="4" placeholder="Kirjoita tähän:">' . $comments = $_POST['comments'] .
    $_SESSION['commentone'] = $_POST['comments'] . "test123"; echo '</textarea>';

无论我在其后添加任何内容还是从文本区域中完全删除它,它都会返回“ test123”。如果有不清楚的地方,请询问。 小修改:在文本区域中添加了一个名称

根据要求,这里是完整的表单代码:

<form action="" method="POST" style="border:0px solid #ccc">
            <fieldset><legend><b>Tuotteiden palautus</b></legend>
              <div class="step">
            <legend>Askel 3/3</legend>
          </div>
          <br />
              <p class="important">Palautuksen varmistus</p>
              <br />
              <div class="valitse">
            <p class="important">Haluatko varmasti palauttaa seuraavat tuotteet?</p>
          </div>
            <hr>';
            $test = $_POST['productinfo'];
            $total2 = 0;
            for($i=0; $i < sizeof($test); $i++) {
            list($name, $quantity, $total) = explode("|", $test[$i]);
            echo "Nimi: ".$name;
            echo "<br>";
            echo "Määrä: ".$quantity;
            echo "<br>";
            echo "Hinta: ".$total . "€";
            echo "<br>";
            echo "<br/>";
            $total2 += $total;
}

            $_SESSION['product'] = $name;

            echo '
            <br />
            <br />
            <h4>Kirjoita alas, miksi haluat palauttaa tuotteen/tuotteet?</h3>
            <textarea name="comments" id="comments" cols="30" rows="4" placeholder="Kirjoita tähän:">' . $comments = $_POST['comments'] . $_SESSION['commentone'] = $_POST['comments']; echo '</textarea>';

            $comments = $_POST['comments'];
            echo $comments;
            echo'

            <div class="refundprice">' .
            '<label>Palautettavien tuotteiden yhteishinta: ' . $total2 . '€' . '</label>
          </div>
            <div class="clearfix">
              <input type="hidden" name="page" value="3">
              <input type="submit" class="signupbtn" name="sendrqst" value="Lähetä">
          </div>
        </fieldset>
        </form>

2 个答案:

答案 0 :(得分:0)

使用以下代码

<form action="" method="POST" style="border:0px solid #ccc">
        <fieldset><legend><b>Tuotteiden palautus</b></legend>
          <div class="step">
        <legend>Askel 3/3</legend>
      </div>
      <br />
          <p class="important">Palautuksen varmistus</p>
          <br />
          <div class="valitse">
        <p class="important">Haluatko varmasti palauttaa seuraavat tuotteet?</p>
      </div>
        <hr>';
        $test = $_POST['productinfo'];
        $total2 = 0;
        for($i=0; $i < sizeof($test); $i++) {
        list($name, $quantity, $total) = explode("|", $test[$i]);
        echo "Nimi: ".$name;
        echo "<br>";
        echo "Määrä: ".$quantity;
        echo "<br>";
        echo "Hinta: ".$total . "€";
        echo "<br>";
        echo "<br/>";
        $total2 += $total; }

        $_SESSION['product'] = $name;

        echo '
        <br />
        <br />
        <h4>Kirjoita alas, miksi haluat palauttaa tuotteen/tuotteet?</h3>'.
        $comments = $_POST['comments'] . $_SESSION['commentone'].'
        <textarea name="comments" id="comments" cols="30" rows="4" placeholder="Kirjoita tähän:">' 
        . $comments .'</textarea>';

        $komment = $_POST['comments'];
        echo $comments;
        echo'

        <div class="refundprice">' .
        '<label>Palautettavien tuotteiden yhteishinta: ' . $total2 . '€' . '</label>
      </div>
        <div class="clearfix">
          <input type="hidden" name="page" value="3">
          <input type="submit" class="signupbtn" name="sendrqst" value="Lähetä">
      </div>
    </fieldset>
    </form>

答案 1 :(得分:0)

在行

<textarea name="comments" id="comments" cols="30" rows="4" placeholder="Kirjoita tähän:">' . $comments = $_POST['comments'] . $_SESSION['commentone'] = $_POST['comments']; echo '</textarea>';

您正在做几次分配,但实际上没有回显任何内容,因此文本区域为空白。