Ingo: Formular Problem(e)

Hallo,

ich möchte Werte aus einem Formular in deine DB schreiben.
Nun habe ich ein Formular erstellt:
<from name="+++" action="addNews.php" method="post">
.
.
.

in der Datei addNews.php steht dann das ganze Zeugs um mysql_query() usw.
aber der browser zeigt nichts an, noch nicht einmal html-tags vor oder nach dem php-part?!

Kann mir jemand sagen was ich da falsch gemacht habe?

Code Eingabe Formular:
<h1>News schreiben</h1>
<table width="100%" border="0">
<tr>
<form action="addNews.php" name="write_news" method="post">
<input type="hidden" name="send" value="1" />
<td>Titel:</td><td><input type="text" name="headline" value="<? echo $headline; ?>" size="60" /><br></td>
</tr>
<tr>
<td valign='top'>Nachricht:</td><td><textarea name="nachricht" rows="10" cols="50">
</textarea></td>
<td colspan='2'><input type="submit" name="speichern" value="Speichern" />
</form>
</table>
Code DB-Connection + Insert:
<?
echo "hallo1";
if ($_POST[speichern])
{
include ("connection.inc.php");
$zeitstempel = time();
$datum = date("d.m.Y , H:i",);
$sql="INSERT INTO 'nachrichten' VALUES ('','$_POST["headline"]','$_POST["nachricht"]','ingo','$zeitstempel')";
$erg= mysql_query($sql, $connection);
echo 'hallo';
if ($connection)
echo 'jepp';
else
echo 'no connection';
if ($erg)
echo 'jepp';
else
echo 'no erg';
}
?>

  1. Hallo,

    hast du für den action-Wert den richtigen Namen geschrieben?
    (gross,klein-schreibung Beachten)

    <from name="+++" action="addNews.php" method="post">
    .

    1. hast du für den action-Wert den richtigen Namen geschrieben?

      Ja, datei sowie action-wert heißen exakt addNews.php

      gruß
      ingo

      1. Ein ganz einfaches Skirpt hast du schon ausprobiert?

        z.B.

        <body>
        <?php echo "Hallo Welt?"; ?>
        <body>

        Machst du weiter oben in der Datei schon was mit PHP?

        1. Ein ganz einfaches Skirpt hast du schon ausprobiert?

          z.B.

          <body>
          <?php echo "Hallo Welt?"; ?>
          <body>

          Machst du weiter oben in der Datei schon was mit PHP?

          PHP funzt, da ich in der datei mit dem formular noch ein auswahl menue habe, das per formular-variablen quasi nur bestimmmte tiele des codes anzeigt. (kompliziert ausgedrückt?)

          gru0
          ingp

          1. Der Browser zeigt nichts an? Auch nicht wenn du dir den Quelltext anzeigen lässt?

            1. Der Browser zeigt nichts an? Auch nicht wenn du dir den Quelltext anzeigen lässt?

              nur standard header und nen leeren body-part.

              wenn ich bei method "get" eintrage, werden die vars an die url angehängt, also werden sie schon mal übergeben.

              habe die datei auch schon in add_news.php umbenannt.

              gruß
              ingo

              1. Kannst du mal den ganzen Code posten?

                1. Kannst du mal den ganzen Code posten?

                  No Probleme:

                  admin.php
                  ---------------------
                  <?
                   if ($_POST[write])
                   {
                  ?>

                  <h1>News schreiben</h1>
                  <table width="100%" border="0">
                  <tr>
                  <form action="add_news.php" name="write_news" method="post">
                  <input type="hidden" name="send" value="1" />
                  <td>Titel:</td><td><input type="text" name="headline" value="<? echo $headline; ?>" size="60" /><br></td>
                  </tr>
                  <tr>
                  <td valign='top'>Nachricht:</td><td><textarea name="nachricht" rows="10" cols="50">
                  </textarea></td>
                  <td colspan='2'><input type="submit" name="speichern" value="Speichern" />
                  </form>
                  </table>

                  <?
                  }
                  if ($_POST[send] !='1')
                  {
                  ?>
                  <html>
                  <head>
                  <title>Sans Titre</title>
                  <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
                  <meta name="generator" content="HAPedit 3.0">
                  </head>
                  <body bgcolor="#FFFFFF">
                  <h1>JGParsau Adminbereich</h1>
                  <form action="<? echo $PHP_SELF; ?>" name="auswahl" method="post">
                  <input type="hidden" name="send" value="1" />
                  <input type="radio" name="write" />News schreiben<br>
                  <input type="radio" name="delete" />News löschen<br>
                  <input type="radio" name="change" />News ändern <br>
                  <input type="submit" name="submit" value="Weiter" />
                  </form>
                  </body>
                  </html>
                  <?
                  }
                  ?>

                  add_news.php:
                  ----------------------------------------
                  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

                  <html>

                  <head>
                  <title>Sans Titre</title>
                  <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
                  <meta name="generator" content="HAPedit 3.0">
                  </head>
                  <body bgcolor="#FFFFFF">

                  hallo du da!!!!
                  <?
                  echo $_POST['send'];
                  if ($_POST[send]='1')
                  {
                  echo "hallo1";
                  include ("connection.inc.php");
                  echo $connection;
                  $zeitstempel = time();
                  $datum = date("d.m.Y , H:i",);
                  $sql="INSERT INTO 'nachrichten' VALUES ('','$_POST["headline"]','$_POST["nachricht"]','ingo','$zeitstempel')";
                  $erg= mysql_query($sql, $connection);
                  echo 'hallo';
                  if ($connection)
                  echo 'jepp';
                  else
                  echo 'no connection';
                  if ($erg)
                  echo 'jepp';
                  else
                  echo 'no erg';
                  }
                  else
                  echo '2134245';
                  ?>
                  </body>

                  </html>

                  1. Ich nehme an diese Datei hat keinen Einfluss auf deinen Fehler:

                    admin.php

                    Also bräuchte ich nur das hier: (oder?)

                    add_news.php:

                    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

                    <html>

                    <head>
                    <title>Sans Titre</title>
                    <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
                    <meta name="generator" content="HAPedit 3.0">
                    </head>
                    <body bgcolor="#FFFFFF">

                    Das gibt er aus?:

                    hallo du da!!!!
                    <?

                    echo $_POST['send'];
                    if ($_POST[send]='1')
                    {

                    und das nicht mehr?:

                    echo "hallo1";
                    include ("connection.inc.php");
                    echo $connection;
                    $zeitstempel = time();
                    $datum = date("d.m.Y , H:i",);
                    $sql="INSERT INTO 'nachrichten' VALUES ('','$_POST["headline"]','$_POST["nachricht"]','ingo','$zeitstempel')";
                    $erg= mysql_query($sql, $connection);
                    echo 'hallo';
                    if ($connection)
                    echo 'jepp';
                    else
                    echo 'no connection';
                    if ($erg)
                    echo 'jepp';
                    else
                    echo 'no erg';
                    }
                    else
                    echo '2134245';
                    ?>
                    </body>

                    </html>

                    Wenn das so ist probier mal den php-part mit <?php zu beginnen.

                    1. nichts...

                      auch das "hallo du da nicht"

                      gruß
                      ingo

                      1. lösch mal den ganzen Teil bis:

                        "hallo du da nicht"

                        Wenns dann immer noch nichts geht, weiss ich auch nich warum.

                        1. lösch mal den ganzen Teil bis:

                          "hallo du da nicht"

                          Wenns dann immer noch nichts geht, weiss ich auch nich warum.

                          also durch lauter kommentare und tests muss der fehler in diesem teil liegen:

                          $zeitstempel = time();
                          $datum = date("d.m.Y , H:i",);
                          $sql="INSERT INTO nachrichten (headline, news, autor, datum) VALUES ('$_POST["headline"]','$_POST["nachricht"]','ingo','$zeitstempel')";
                          $erg= mysql_query($sql, $connection);
                          echo 'hallo';
                          if ($connection)
                          echo 'jepp';
                          else
                          echo 'no connection';
                          if ($erg)
                          echo 'jepp';
                          else
                          echo 'no erg';

                          1. Das hier ist nicht korrekt:

                            $datum = date("d.m.Y , H:i",);

                            entferne das Komma!

                            1. Das hier ist nicht korrekt:

                              $datum = date("d.m.Y , H:i",);

                              entferne das Komma!

                              schon entdeckt, aber ich weiß jetzt

                              dass es am "INSERT..." liegen muss

                              gruß
                              ingo

                              1. ich hab es!!!!

                                man darf zwischen dem tabellennamen und der klammer kein leerzeichen machen!!

                                man is das leicht, wenn man es wüsste.

                                danke für deine hilfe und zeit.

                                gruß
                                ingo

                              2. Ach jo,

                                $sql="INSERT INTO nachrichten (headline, news, autor, datum) VALUES ('$_POST["headline"]','$_POST["nachricht"]','ingo','$zeitstempel')";

                                nimm die " weg. Ist zwar nicht schöner Stil, aber ich weiss nicht wie man es besser macht.

  2. hi, nur eine Vermutung

    <input type="submit" name="speichern" value="Speichern" />

    if ($_POST[speichern])

    gib mal

    echo '<pre>';
    print_r($GLOBALS);
    echo '</pre>

    in dein script ein und schau ob da überhaupt so was existiert

    Gruesse, Christian

    1. »

      echo '<pre>';
      print_r($GLOBALS);
      echo '</pre>

      zeigt alle vars wunderbar an

      gruß
      ingo