2016-04-07 23 views
0

Ich wurde informiert, dass ich Daten ohne eine POST-Funktion senden kann. Was ich herausfinden möchte, ist, wie ich das Formular um meinen Tisch loswerden und die Daten an meine Seite "edit-product" senden kann.Senden von Daten an eine andere Seite ohne ein Formular

Zusätzlich zu den Daten möchte ich, dass der Benutzer auch dorthin geschickt wird, genau wie das Aktionsattribut des Formulars.

Ab jetzt habe ich es wie folgt strukturiert:

<?php 
     $stmt = $dbc->query("SELECT `id`,`first`,`last`,`product` FROM users"); 
     $stmt->setFetchMode(PDO::FETCH_ASSOC); 

     while($row = $stmt->fetch()) { 
     ?> 
     <form method="POST" action="edit-product"> 
      <tr> 
       <td><?php echo $row['id'];?>"</td> 
       <td><?php echo $row['first'];?></td> 
       <td><?php echo $row['last'];?></td> 
       <td><?php echo $row['product'];?></td> 
       <input name="id" type="hidden" value="<?php echo $row['id'];?>" readonly> 
       <input name="first" type="hidden" value="<?php echo $row['first'];?>"> 
       <input name="last" type="hidden" value="<?php echo $row['last'];?>"> 
       <input name="product" type="hidden" value="<?php echo $row['product'];?>"> 
       <td><input name="save" type="submit" value="Save"></td> 
       <td><div class="delete-class" name="delete" id="<?php echo $row['id']; ?>">Delete</div></td> 
       <td><input name="edit" type="submit" value="Edit"></td> 
      </tr> 
     </form> 
     <?php } ?> 
     </tbody> 
    </table> 

In meinem edit-Produktseite, erhalte ich die Daten wie folgt aus:

$id = $_POST['id']; 
$first = $_POST['first']; 
$last = $_POST['last']; 
$product = $_POST['product']; 

Wie könnte ich das tun?

+0

Ajax wäre der beste (einzige?) Weg. Oder meinst du "GET" statt "POST". – pxgamer

+0

Wie kann ich den AJAX dazu bringen, mich zur Produktseite zu bringen? Ich kann den AJAX dafür herausfinden, nur nicht diesen Teil. – Becky

+0

Sie möchten den Benutzer auf die Seite zum Bearbeiten von Produkten senden? – pxgamer

Antwort

0

Sie können eine Bearbeitungsschaltfläche mit Anker verwenden.

<table> 
    <tbody> 
    <?php 
     $stmt = $dbc->query("SELECT `id`,`first`,`last`,`product` FROM users"); 
     $stmt->setFetchMode(PDO::FETCH_ASSOC); 

     while($row = $stmt->fetch()) { 
     ?>  
      <tr> 
       <td><?php echo $row['id'];?>"</td> 
       <td><?php echo $row['first'];?></td> 
       <td><?php echo $row['last'];?></td> 
       <td><?php echo $row['product'];?></td>      
       <td><input name="save" type="submit" value="Save"></td> 
       <td><div class="delete-class" name="delete" id="<?php echo $row['id']; ?>">Delete</div></td> 
       <td><a href="/edit-product?id=<?php echo $row['id']; ?>&first=<?php echo $row['first'];?>&last=<?php echo $row['last'];?>&product=<?php echo $row['product'];?>">Edit</a></td> 
      </tr>  
     <?php } ?> 
     </tbody> 
    </table> 

Und Sie können den URL-Wert von edit-prpduct Seite abfangen. wie

$id = $_GET['id']; 
$first = $_GET['first']; 
$last = $_GET['last']; 
$product = $_GET['product']; 

nur versuchen, dies ohne jede Post.

+0

Wie würde es aussehen? – Becky

+0

Edit

+0

U kann Javascript zum Aufteilen und Abrufen der Werte von der URL verwenden –

Verwandte Themen