Ankündigung

Einklappen
Keine Ankündigung bisher.

If Abfrage

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • If Abfrage

    Möchte in der form action mit 'raufladen.php?form='add' undbei der anderen form action 'del' abfragen ob entweder das eine oder das andere jetzt ausgeführt werden soll.
    Aber irgendwie macht er mir das nicht.

    Ist meine If Abfage bzw. meine Form Action korrekt!?

    Code:
    $form="";
        echo"
            <form action='raufladen.php?form='add' METHOD='POST'>
                <div>
                    Hier bitte neues Zitat eingeben
                    <input type='text' name='hinzu'></input>
                    Autor:
                    <input type='text' name='autor'></input>
                    <input type='submit' value='senden'></input>
                </div>
            </form>";
        
        if($form=='add'){
            $text= $_POST['hinzu'];
            $autor = $_POST['autor'];
            if($text !=null && $auto !=null){
                mysql_query($eintrag = "INSERT INTO Zitate(Zitat, Autor) VALUES ('$text','$autor')");
            }
            else{
                echo "Felder leer";
                die();
            }
        }
        //$result = mysql_query("SELECT COUNT(*) FROM Zitate") OR die(mysql_error());    
        //$ergebnis = mysql_result($result,0);
        //echo $ergebnis."<br />";
        
        echo"
            <form action='raufladen.php?form='del' METHOD='POST'>
                <div>
                    Zitate löschen
                    <input type='text' name='loeschen'></input>
                    <input type='submit' value='Löschen'></input>
                </div>
            </form>";
        if($form=='del'){
            $loeschen = $_POST['loeschen'];
            $loesch = "DELETE FROM 'Zitate' WHERE 'Id'=$loeschen" OR die(mysql_error());
            $ausgeben = mysql_query($loesch);
        }
        
        $tabelle = mysql_query("SELECT Zitat, Autor FROM Zitate") OR die(mysql_error());
        while($row = mysql_fetch_assoc($tabelle)){
            echo $row['Zitat']." ".$row['Autor']."<br><br>";
        }

  • #2
    Es heisst datei.php?action=add und nicht 'add'

    Und im HTML-Code ersetzt du
    Code:
    <form action='raufladen.php?form='add' METHOD='POST'>
    mit
    Code:
    <form action='raufladen.php?form=add' METHOD='POST'>

    Kommentar


    • #3
      Hm... okay.. aber abfragen tut ers noch nicht!?

      Ist das überhaupt richtig mit if($form=='add') .... ?

      Kommentar


      • #4
        Stichwort register_globals, du benutzt doch $_POST, dann musst du für deine Get-Variablen auch $_GET benutzen

        Kommentar


        • #5
          if($form=='add') schreibt man ohne Anführungszeichen.

          Was mir Spanisch vorkommt ist, dass du am Anfang $form = ""; schreibst(dann ist es eine leere Variable).

          Kommentar


          • #6
            Das Ganze ist ziemlich sinnfrei. Du hast zwei Formulare, aus denen du jeweils ein anderes Script aufrufst. Die Überprüfung der $_POST, bzw. $_GET-Parameter machst du aber im gleichen Script. In diesem kommen die Daten natürlich gar nie an.
            Also mache die Verarbeitung entweder in den angegebenen Scripts, oder falls du sie hier machen willst, rufe auch dieses Script wieder auf.
            Ausserdem würde ich auf die Mischung von Post- und Get-Parametern verzichten.
            Gruss
            L

            Kommentar

            Lädt...
            X