PHP Formular nach Klicken des Submit Buttons nicht löschen

Fehlermeldung - (Programmieren, Fehlermeldung, HTML)

7 Antworten

Vor dem ersten Senden sind die Variablen $_POST['s1'] noch nicht gesetzt. Daher kommt die Fehlermeldung. Schickst du das Formular 1x ab, geht es.

Als erster Schritt ist das doch schon mal geeignet.

Jetzt gehst Du iterativ weiter voran:

Du hast soeben vom PHP-Interpreter in aller Form und Schönheit erläutert bekommen, daß Deine Daten beim ERSTEN Aufruf des Formulars noch nicht gesetzt sind. Klar, oder? Wenn Du ein Geschäft frisch betrittst, erwartest Du ja AUCH nicht hellseherische Fähigkeiten vom Verkäufer, daß der unmittelbar beim ersten Betreten Dir Deinen zukünftig gefüllten Einkaufskorb MITSAMT dem zukünftigen Inhalt präsentiert!

Oder?!

Gehe also davon aus, daß Du dem Besucher ERSTMAL LEERE(!) Dateninhalte bietest.

Zu deutsch und zum mit-Tackern:

  • Sorge dafür, daß Deine Daten ERSTMAL(!) zu Leer-Strings initialisiert werden!
  • Sorge DANACH (!) dafür, daß eventuell (!) gesendete Nutzerdaten in Deine bereits initialisierten Datenelemente übernommen werden!

Damit kannst (und - dringend - solltest) Du alle Hinweis-Meldungen eingeschaltet lassen. Denn GERADE (!) für einen Anfänger sind diese Hinweise krass wichtig, ihm seine massiv auftretenden Flüchtigkeitsfehler um die Ohren zu hauen! Tu Dir das nicht an, daß Du diese gut gemeinte und gut funktionierende Hilfe unter dem eigenen Hintern absägst!

Die $_POST-Variablen existieren nicht, die du benutzt. Hast du im form-Element method auf post gesetzt?

<form action="" method="post">

Wenn nicht, landen deine Werte in $_GET

Ja habe ich

0

was anderes würde mir da jetzt auch nicht einfallen.

0
@cat64k

Habs nun "hingekriegt", hab diesen Code davorgesetzt:

error_reporting(E_ERROR | E_WARNING | E_PARSE);
0
@Phippe

Wow ._.

Damit löst du das Problem nicht, du unterdrückst nur die Meldung ^^

0
@Phippe

Vom Setzen eines geänderten Error-Reports muss ich dringends abraten. Fehlermeldungen, gerade die Warnings, sind sehr wichtig, um mögliche Tippsel- oder Logikfehler zu erkennen. Erst, wenn ein Script wirklich fertig ist und soweit überblickbar garantiert fehlerfrei läuft, kann an der Fehlerausgabe etwas geändert werden. Und da empfiehlt sich, jegliche Fehlermeldung zu unterdrücken, also error_reporting(0);

0

php radio button div ein und ausblenden?

Hallo,

ich möchte anhand von Radio-Buttons weitere Formularfelder (in einem DIV) ein und ausblenden. Damit diese eingeblendet werden habe ich bereits. Sobald ich aber auf einen anderen Radio Button klicke bleibt die erste auswahl bestehen und verschwindet nicht mehr.

Desweiteren, wie mache ich es, damit bei auswahl des Radio Buttons die dann aufblendenen Felder Pflichtfelder werden?

Hier mein Script was das einblenden ausgibt, aber nicht das ausblenden:

<script type="text/javascript" language="javascript">

   function showFormSendWahl(ID, getShow){

       if(getShow == true){

           document.getElementById(ID).style.display = "inline";

       } else {

            document.getElementById(ID).style.display = "none";

       }

   }   

</script>

</head>

--------------------------------------------------------------- (ausschnitt aus dem html teil) ->

<label><b>Bezahlung:</b></label><br>

<input type="radio" name="wahl" value="1" onclick="showFormSendWahl('show', this.checked)" /> Lastschrift<br />

   <input type="radio" name="wahl" value="1" onclick="showFormSendWahl('show1', this.checked)" /> Kreditkarte<br />

   <input type="radio" name="wahl" value="2" /> Nachname (zzgl. 4,28€)

   <br><br>

   <div id="show" style="display: none;">

   <label for="ktoinh"><b>Kontoinhaber:</b></label><br />

<input type="text" id="Kontoinhaber" name="Kontoinhaber" required placeholder="Kontoinhaber">

<label for="iban"><b>IBAN:</b></label><br />

<input type="text" id="IBAN" name="IBAN" required placeholder="IBAN"><br>

   </div>

 <div id="show1" style="display: none;">

   <label for="kkk-art"><b>Kreditkarte:</b></label><br />

   <select id="KK-Art" name="KK-Art">

                              <option value="VISA-Card" selected="selected">Visacard</option>

                              <option value="Mastercard">Mastercard</option>

                              </select><br>

<input type="text" id="Karteninhaber" name="Karteninhaber" required placeholder="Karteninhaber">

<label for="KK-Nr"><b>Kartennr.:</b></label><br />

<input type="text" id="KK-NR" name="KKNR" required placeholder="Kartennummer"><br>

<label for="gültig"><b>Gültig bis:</b></label><br />

<input type="text" id="gültig" name="gültig" required placeholder="Gültig bis"><br>

<label for="SS-NR"><b>Sicherheitsnr.:</b></label><br />

<input type="text" id="SS-NR" name="SSNR" required placeholder="Sicherheitsnummer"><br>

   </div>   

...zur Frage

Suchfunktion mit PHP Version 7.1.12 und MySQL?

Hallo,

ich habe mir letztens auf YouTube ein Video angeschaut, wie man mit Hilfe von PHP eine MySQL-Datenbank durchsucht. Ich habe es selber ausprobiert, doch musste leider feststellen, dass der Code nicht für meine PHP-Version (7.1.12) geeignet ist.

Also habe ich versucht ihn umzuschreiben. Das hat aber leider nicht geklappt.

<html>
  <head>
    <title>Suche</title>
  </head>
  <body>
    <form action="" method="get">
      <input type="text" name="suchfeld"/>
      <input type="submit" name="suche_enter" value="suchen"/>
    </form>
    <hr /><br />
    <?php
      if (isset($_GET['suche_enter'])) {
        $host = "localhost";
        $user = "root";
        $pass = "";
        $db = "test_db";
        $conn = new mysqli($host, $user, $pass, $db);

        if ($conn->connect_errno) {
          die("Verbindung fehlgeschlagen: " . $mysqli->connect_error);
        }

        $suchbegriff = trim(htmlentities(stripslashes(mysqli_real_escape_string($_GET['suchfeld']))));
        $sql = "SELECT headline, text FROM article WHERE
          headline LIKE '%$suchbegriff%' OR
          image LIKE '%$suchbegriff%' OR
          overtext LIKE '%$suchbegriff%' OR
          text LIKE '%$suchbegriff%' OR
          gender1 LIKE '%$suchbegriff%' OR
          gender2 LIKE '%$suchbegriff%'
          ORDER BY headline, gender1, overtext, text, gender2, image";
        $query = mysqli_query($sql);

        echo "<ul>";

        WHILE ($row = mysqli_fetch_assoc($query)) {
          $headline = $row['headline'];
          $overtext = $row['overtext'];
          $text = $row['text'];

          echo "<li>$headline <br /><br />$overtext<br /><br /><hr /><br /></li>";
        }

        echo "</ul>";
      }
    ?>
  </body>
</html>

Wie müsste der Code richtig aussehen?

...zur Frage

Was möchtest Du wissen?