neli: Textarea und $_POST wo ist mein Denkfehler

Hallo Leute,

irgendwie komm ich heute nicht vorwärts. Ich möchte ein Textfeld nochmal auslesen, bevor es in die mysqldatenbank geschrieben
wird. Das Reinschreiben selber geht, aber warum kann ich es mir nicht ansehen?

Ich habe für den relevanten Text zwecks Fehlersuche zwei Testdateien gemacht:

test.html:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
 <title>Eingabe</title>
 <meta name="generator" content="NetAuthor 2.0">   <!-- http://www.bluebelt.de/ -->
</head>

<body>
<form action="gbtest2.php" method="POST">

<table>
<tr>
<td>Ihr Text</td>
<td><textarea name="gasttext" rows="6" cols="40"></textarea></td>
</tr>
<tr>
<td> </td>
<td><input type="SUBMIT" name="eintragsenden" value="Eintrag senden"></td>
</tr>
</table>
</form>
</body>
</html>

test1.php
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
 <title>Ausgabe</title>
 <meta name="generator" content="bluebelt NetAuthor 2.0">   <!-- http://www.bluebelt.de/ -->
</head>

<body bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">

<?php
if (!empty($_POST[$gasttext]))
{
echo "Ihr Text : ".$_POST[$gasttext]."<br>";
}
else
{
echo "ich seh nichts<br>";
}
?>

</body>
</html>

schon mal vielen Dank im voraus für eure Mühe

Neli

  1. Hi!

    Der Fehler liegt hier:
    $_POST[$gasttext]
    (ein Dollar-Zeichen zu viel)

    Es handelt sich hierbei um ein assoziatives Array und du sprichst ein Element an, das es nicht gibt.
    Als erstes wird die Variable $gasttext ausgewertet. Diese gibt es nicht und darum erhälst du dann:
    $_POST[]

    Schreib
    $_POST['gasttext']
    und dein Script sollte laufen.

    Gruß, rob

    1. Hi rob!

      Der Fehler liegt hier:
      $_POST[$gasttext]
      (ein Dollar-Zeichen zu viel)

      hab ich gemacht

      Es handelt sich hierbei um ein assoziatives Array und du sprichst ein Element an, das es nicht gibt.

      daran hab ich nicht gedacht

      Als erstes wird die Variable $gasttext ausgewertet. Diese gibt es nicht und darum erhälst du dann:
      $_POST[]

      Schreib
      $_POST['gasttext']
      und dein Script sollte laufen.

      geht leider nicht ganz, da kommt diese Meldung
      Notice: Undefined index: was da in C:\wampp2c\htdocs\cr_gaestebuch\gbtest2.php on line 14
      Ihr Text :

      Gruß, rob

      Trotzdem danke, ich werd weiter probieren

    2. Sorry ;-)

      das kommt ja 2mal im Text vor

      $_POST['gasttext']

      Jetzt geht das natürlich
      danke Rob und schönen Tag noch
      und auch danke an lulu

  2. Huhu Neli

    <textarea name="gasttext" rows="6" cols="40"></textarea>

    if (!empty($_POST[$gasttext]))
    {
    echo "Ihr Text : ".$_POST[$gasttext]."<br>";
    }

    Du möchtest sicherlich den Array-Index "gasttext" verwenden und
    nicht die variable $gasttext.

    Ein Computer macht das was man programmiert, nicht was man meint ;-)

    Viele Grüße

    lulu

    --
    bythewaythewebsuxgoofflineandenjoytheday