Ankündigung

Einklappen
Keine Ankündigung bisher.

Abfrage an "Button" weitergeben.

Einklappen

Neue Werbung 2019

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

  • Abfrage an "Button" weitergeben.

    Hallo allerseits

    Habe folgendes Problem mit folgender Abfrage:
    PHP-Code:
    <?php
    $sqlabfrage 
    "select bestellnummer, bezeichnung, format, preis from artikel where preis like '%" $_POST["preis"] . "%' ";
    $searchresult mysql_query($sqlabfrage);

    echo 
    "<table border='1'>";
    echo 
    "<tr><td>Details</td><td>Bestelln.</td><td>Bezeichnung</td><td>Format</td><td>Typ</td></tr>";
        
    while(
    $dsatz mysql_fetch_assoc($searchresult))
        
    {
        echo 
    "<tr>";
        echo 
    "<form action = 'details.php' method = 'post'>";
        echo 
    "<td><input type = 'submit' name = 'details_button' value = 'Details'></td>";
        echo 
    "<td>" $dsatz["bestellnummer"] . "</td>";
        echo 
    "<td>" $dsatz["bezeichnung"] . "</td>";
        echo 
    "<td>" $dsatz["format"] . "</td>";
            echo 
    "<td>" $dsatz["preis"] . "</td>";
        echo 
    "</tr>";
    }
    echo 
    "</table>";
    echo 
    "</form>";

    ?>
    Der Button (detail_button) der in der ersten Tabelle angezeigt wird sollte die beim Klick ein Fenster öffnen wo man dann die Details angezeigt bekommt.

    Folgende Situation:
    Das Ergebnis das auf der Seite ausgegeben wird sind mehrere Hundert Stück.

    Dazu meine Frage: Wie kann ich es so programmieren das ich, wenn ich auf den Button klick auch das gewünschte Produkt sehe ?

    Vielen Dank für die Hilfe.

  • #2
    Entweder gibst du ein "hidden"-Feld mit, welches beim submit mitgesendet wird, oder du gibst deiner Form-Action einen weitere Parameter mit, welchen du später dann mit $_GET abfragst

    Kommentar


    • #3
      In dem du keinen Submitbutton benutzt, sondern einen Button/Link, der auf eine Seite weiterführt wo die Details des Produktes mit der ID 0815 aufgelistet werden, aber das sind einfach Basics.

      Zudem Mysql bitte nicht mehr verwendet, sondern mysqli/Pdo und mal was zu sqlinjection durchlesen.
      Außerdem ist dein HTML Code nicht wirklich richtig verschachtelt und für Tabellenüberschriften gibt es <th>-Tags

      Kommentar


      • #4
        Zudem Mysql bitte nicht mehr verwendet, sondern mysqli/Pdo und mal was zu sqlinjection durchlesen.
        Ja mysql ist ab PHP5.6 oder PHP6 nicht mehr unterstützt.
        zu sql injection: schau dir real_escape_string im Manual an.

        Kommentar


        • #5
          Wow, hätte nicht gedacht das in so kurzer Zeit doch soviele Antworten kommen. Danke für die schnellen und hilfreichen Tipps.

          Werde die Vorschläge testen.

          Kommentar


          • #6
            Bitte um eure Mithilfe.

            Habe jetzt alles mögliche mit "mysql_real_escape_string" durchprobiert doch leider komme ich nicht zu dem Ergebnis was ich gerne hätte.

            Kann mir jemand auf die Sprünge helfen.

            Danke

            Kommentar


            • #7
              zeig deinen momentanen code und erkläre uns dein Problem anhand des Codes genauer!

              Kommentar


              • #8
                Code steht im ersten Beitrag. Das was ich alles probiert habe ist leider nicht mehr vorhanden weil es ja nicht funktioniert hat.

                Kommentar


                • #9
                  Also so würde das dann mit mysqli ausschauen:
                  PHP-Code:
                  <?php
                      $mysqli 
                  = new mysqli('deine''tollen''verbindungsdaten''zurDatenbank');
                      
                  $preis_esc $mysqli->real_escape_string($_POST['preis']);
                      
                  $sql "SELECT `deinStatement` FROM `deineTabelle` WHERE `preis` LIKE '%".$preis_esc."%'";
                      
                  //usw.
                  ?>

                  Kommentar


                  • #10
                    Danke für die Antwort. Funktioniert leider auch nicht.

                    Kommentar


                    • #11
                      Fehlerausgabe? andere Ideen deinerseits? Zum Debuggen deines Codes siehe auch: Debugging:Leitfaden - PHP.de Wiki, bzw. Debugging:SQL - PHP.de Wiki!
                      Mal ganz davon abgesehen, dass das funktionieren müsste, zumindest hatte ich noch nie ein Problem damit...

                      Kommentar


                      • #12
                        Vielleicht mal zu besseren Erklärung für alle die mir bei der Fehlerbehebung helfen wollen. Hier mal die ganzen Codes.

                        EDIT: Habs anders gelöst, danke trotzdem für die Hilfe.

                        Kommentar

                        Lädt...
                        X