2016-10-25 72 views
-5

我正在寻找与我的产品列表有关的帮助。使用HTML表单更新SQL数据

我的代码:

<!DOCTYPE html> 
<html> 
<head> 
<title> Produktliste </title> 
</head> 
<body> 
<iframe name="dir" style="display:none;"></iframe> 
<form action="shop.php" method="post"> 
<p> <h2> Produkt hinzufügen </h2> </p> 
<p> Produktname: <input type="text" name="Produktname"/> </p> 
<p> Produktbeschreibung: <textarea rows=2 cols=20 name="Produktbeschreibung"></textarea> </p> 
<p> Preis: <input type="text" name="Preis"/> </p> 
<input type="submit" name="speichern" value="Speichern"/> 
</form> 

<?php 
$connect = new mysqli ('localhost', 'root', ''); 
$connect->select_db('shop'); 
    if (@$_REQUEST["Produktname"] && @$_REQUEST["Produktbeschreibung"] && @$_REQUEST["Preis"]) { 
     $produktname = @$_REQUEST["Produktname"]; 
     $beschreibung = @$_REQUEST["Produktbeschreibung"]; 
     $preis = @$_REQUEST["Preis"]; 
     $result = $connect->query("INSERT INTO `shop`.`produkte` (`Produktname`, `Beschreibung`, `Preis`) VALUES ('$produktname', '$beschreibung', '$preis');"); 

     if(!$result) { 
      echo "SQL Fehler: " . $connect->error; 
      die; 
     } else { echo "Letzte ID: " . $connect->insert_id; 
     } 
    } 
?> 

<table border="2" width="30%" style="border:1px solid #000000; border-spacing:inherit; text-align:left;"> 
<br><br> 
<tr> 
    <td> Produkt </td> 
    <td> Beschreibung </td> 
    <td> Preis </td> 
    <td> Funktionen </td> 
    <?php 

     $result = $connect->query("SELECT * FROM produkte");  
     while($obj = $result->fetch_object()) { 
      echo '<tr><td>' . $obj->Produktname . '</td><td>' . $obj->Beschreibung . '</td><td>' . $obj->Preis . ' EUR ' . '</td><td><a href="?id=' . $obj->ProduktID . '"> Bearbeiten</a>, <a href="?delete=' . $obj->ProduktID . '">Löschen </a></td></tr>'; 
     } 
     ?> 
    </tr> 
</table> 

<?php 
    if (isset($_REQUEST["delete"])) { 
      $url = "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]"; 
      $urlpart = explode('=', $url); 
      $ProduktID = end($urlpart); 

      $result = $connect->query("DELETE FROM `shop`.`produkte` WHERE `ProduktID` = $ProduktID;"); 
      header('Location: ./shop.php'); 
     } 

     if(isset($_REQUEST["id"])) { 
      $url = "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]"; 
      $urlpart = explode('=', $url); 
      $ProduktID = end($urlpart); 

      // Update SQL Data? 
     } 

     if (!$result) { 
      echo "SQL Fehler: " . $connect->error; 
      die; 
     } 
?> 
</body> 
</html> 

我现在正在寻找一种方式来用等价ID到现有的HTML表单检索MySQL数据并更新回MySQL数据库...我目前在大学学习PHP,我无法再自己想。

它需要完成这个PHP文件,就像其他的东西一样。

感谢您的帮助! :)

+2

你应该真的使用'参数化查询'。 –

回答

-2

如果我理解你正确,你想echo从数据库插入的行。更改行:

$result = $connect->query("SELECT * FROM produkte"); 

到:

$result = $connect->query("SELECT * FROM produkte WHERE ID_prod_column = '$insertID'"); 

尝试这样的事情。只需更改“ID_prod_column”以更正名称和$ insertID以更正变量。

+0

好吧,那将是第一步,但我怎样才能在HTML输入表单中显示结果来编辑和保存数据? –