[PHP & MySQL] Autmoatisches Eintragen feat. Klickshop

Morgan Girl
Also iwie steh ich aufm Schlauch... es klappt einfach nciht so wie ichs gern hätte.
Der Shop ist nach dem Tut von Mordred, allerdings wollte ich das jetz automatisch eintragen lassen. Pustekuchen, klappt nicht. Es sagt mir zwar dass es erfolgrech eingetragen wurde, aber das stimmt nicht großes Grinsen
Ich glaube es liegt an der Variablen $Warenkorb, ich weiß nur nciht ob im Shop.php oder im ShopKaufen.php

Ihr kriegt jetz einfach mal die Codes.

Shop.php (nur der wichtigste Auszug, der Rest ist so lang rotes Gesicht )
php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:

<script type="text/javascript">
function newitem(costs,value) {
    newelement = new Option(value,value+"|"+costs);
    document.getElementsByName("items[]")[0].options[document.getElementsByName("items[]")[0].length] = newelement;
    document.getElementById("costs").innerHTML = parseInt(document.getElementById("costs").firstChild.data) + costs;
}
function removeitem() {
    var item = document.getElementsByName("items[]")[0].value.split("|");
    document.getElementById("costs").innerHTML = parseInt(document.getElementById("costs").firstChild.data) - parseInt(item[1]);
    document.getElementsByName("items[]")[0].options[document.getElementsByName("items[]")[0].selectedIndex] = null;
}
function selectall() {
    for(i = 0; i < document.getElementsByName("items[]")[0].length; i++) {
        document.getElementsByName("items[]")[0].options[i].selected="selected"; 
    }
}
function multicat(costs, value, t) {
    var cat = t;
    if(cat.value != 0) {
        value = value + " in " + cat.value;
        newitem(costs, value);
        cat.selectedIndex = null;
    }
}
</script>
<form method="POST" action="ShopKaufen.php" onsubmit="selectall()">
<input type="hidden" name="Pferd" value="<?php echo"$Data[Name]"?>">
  <select name="items[]" size="4" scrolling="auto" onchange="removeitem()" multiple="multiple"
   style="background: #AAC254; color:#E8F5B8; border:2px solid #8ead1e; FILTER: chroma (color=#ffffff); width: 200px">
  </select><br>
<b>Kosten:</b> <img src="Geld.png"> <span id="costs">0</span><br><br>
<input type="submit" value="&nbsp;Kaufen&nbsp;" style="border:2px solid #8ead1e; background-color:#AAC254; color:#E8F5B8;">
</form>



ShopKaufen.php
php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:

<link rel="stylesheet" href="style.css">
<?php
session_start();
?>
<?php
if(!isset($_SESSION["Username"]))
   {
   echo "<br><h1>Nicht eingeloggt</h1>
         Du musst dich erst <a href="Login.htm">einloggen!</a>";
   exit;
   }
?>
<?php
   include('Datenbank.php');
   $Warenkorb $_POST['items'];
   $Kosten $_POST['costs'];
   $Pferd $_POST['Pferd'];
   $User $_SESSION[Username];

$sql "UPDATE `pferd` SET `Zubehoer` = '$Warenkorb' WHERE Name='$Pferd'";
mysql_query($sql);

      if($sql==true) {
         echo '<br><h1>Erfolgreich eingekauft</h1>Das Zubehör ist nun bei deinem Pferd im Spind und kann verwendet werden.';
      } else {
         echo '<br><b><font color="red">Es ist ein Fehler beim Kaufen aufgetreten. Vielleicht hast du zu wenig Geld?</font></b><br><br>';
         include('Shop.php');
      }
?>
cll
versteh ich das richtig, du speicherst unter der Spalte Zubehoer eine Liste von Dingen? autsch.... Sollte man gar nicht machen! Sonst kannst du hinterher verdammt schlecht mit den Werten arbeiten!

Lass dir außerdem im shop.php mal die Variable $Data[Name] ausgeben, ob die nicht leer ist! Das würde das Phänomen erklären, dass es ok zurückgibt aber ncihts tut.
Morgan Girl
nein die ist nciht leer, es wird ein bild mit dem anemn angezeigt.

wie könnte ich das mit der liste denn anders machen?
cll
Du solltest eine extra Tabelle machen namens zubehoer und das hat dann eine spalte pferd, eine spalte gegenstand
Ansatt die Pferdetabelle upzudaten machst du einen INSERT in die zubehoer-tabelle. So kannst du die Teile ganz einfach auflisten, einzelne löschen usw.
Morgan Girl
super
also soll ich nur spalten mit gegenstand1, gegenstand2 etc machen oder mit sattel, trense etc?
und wie ordne ich dann die einzelnen gegenstände aus der JS-liste in die einzelnen spalten ein?