2016-05-22 6 views
1

Unten ist mein Code, im Grunde zieht es Informationen aus der Datenbank und zeigt den Bestand zugeordnet, von hier habe ich eine Schaltfläche Details, die ich verwenden möchte, um Daten an eine andere HTML-Seite zu senden mehr anzuzeigen Informationen zum Produkt, in den Warenkorb usw.PHP-Weitergabe Wert über Schaltfläche Best Practice

Meine Frage ist, was gilt als "Best Practice", um diese Informationen zu senden, sollte ich einfach ein Formular, das die ID aus dem Array erhält und sendet es auf klicken? Oder gibt es einen effizienteren Weg mit jquery?

Ich nehme an, dass die beste Methode wäre, eine Funktion zu haben, an die der Wert von der Knopfform übergeben wird?

<section> 
     <div class="row"> 
      <div class="col-md-12"> 
       <div class="heading"> 
        <h1>New Mag Wheel Arrivals</h1> 
       </div> 
      </div> 
     </div> 
     <div class="row products"> 
      <?php while ($product = mysqli_fetch_assoc($wheelResult)) : ?> 
       <div class="col-md-3 col-sm-6"> 
        <div class="product border"> 
         <div class="image"> 
          <a href="#"><img src=" <?= "images/wheels/wheelphotos/" . $product["bigpic"]; ?>" 
              alt="<?= $product["manufacturer"]; ?>" class="img-responsive img-demo"></a> 
         </div> 
         <div class="ribbon ribbon-quick-view sale"> 
          <div class="theribbon">NEW</div> 
          <div class="ribbon-background"></div> 
         </div> 
         <div class="ribbon ribbon-quick-view logo"> 
          <div class="theribbon"><img src="images/wheels/logos_small/Vs2.png"></div> 
          <div class="ribbon-background"></div> 
         </div> 
         <div class="text text-background"> 
          <h4><a href="detail.php"><?= $product["diam"] . "\" " . $product['manufacturer'] ?></a></h4> 
          <p class="brand"><a href="#"><?= "Model " . $product["part_no"]; ?></a></p> 

          <button class="btn btn-default btn-sm btn-primary" href="detail.php">Details</button> 
         </div> 
        </div> 
       </div> 
      <?php endwhile; ?> 
     </div> 
    </section> 

Sudo Kodeform Beispiel

EG

<form action=details.php method="GET"> 
    <button class="btn btn-default btn-sm btn-primary" href="detail.php">Details</button> 
hidden-value = $product["recid"] 
</form> 
+0

Was ist schlecht daran, nur etwas wie '">' zu verwenden? – Rehmat

+0

Wird der Recid-Wert an die detail.php-Seite übergeben, um den Inhalt zu generieren? – Jcode

+0

Ja, der Wert wird an die Detailseite übergeben. Schau dir meine Antwort unten für eine Idee an. – Rehmat

Antwort

2

Wie Sie brauchen eine völlig neue Seite zu laden, so Ajax ist keine großen Verbesserungen in Bezug auf Freundlichkeit Benutzer gehen zu bringen. Ich würde vorschlagen, dass Sie dies einfach zu tun, wie unten:

auf Produktliste Seite (in while-Schleife), platzieren Sie Ihre Taste wie folgt aus:

<a href="detail.php?id=<?php echo $product["recid"];?>"><button class="btn btn-default btn-sm btn-primary" >Details</button></a> 

Auf detail.php Seite, nehmen Sie einfach die ID aus $_GET Anfrage und dann Detail für das Produkt aus der Datenbank holen:

i.e. "SELECT * FROM `products` WHERE `product_id` = ?" 

Hinweis: Benutzen sie $_GET['id'] für ?, wie es von den vorherige Seite gebenen ID des Produkts enthält.