MySQL Datenbank Eintrag...

  • HI leuts,
    ich hab seit tagen n Problem das ich irgendwie nicht beheben kann...
    Ich hab ein Anmeldeformular gemacht in das man halt Userdaten eingibt und unter 7 Kateogorien wählen kann. Ich speicher die Userdaten und die User-kateogorien in 2 getrennten Tabellen.
    Die Userdaten werden gespeichert, da gibts keine Probleme.
    Die User-ID von dem gerade gespeicherten user aufrufen kann ich auch. Nur kann ich nicht die betroffenen Kateogorien in die Tabelle eintragen.
    hier der Code für die eintragung der Kateogorien:

    ich komm da einfach nicht weiter, hab im PHP-Handbuch rum gesucht, die Seite für die While-funktion mehrmals durchgelesen, aber kann nirgends n fehler finden.


  • man kann zwar solche "dynamischen" variablen-namen verwenden, doch mit einem array ist das ganze viel einfacher

    Sei immer du selbst. Außer du kannst Batman sein. Sei immer Batman!

  • ja über n array hab ich auch nachgedacht... nur kapier ich das nicht so ganz...

    ne das funktioniert auch nicht.
    Da wird auch keine fehlermeldung gegeben... es sieht so aus als wurde alles korrekt ausgeführt aber wenn ich dann per phpmyadmin in die datenbank schau ist da nix.


  • was wird ausgegeben ?

    Sei immer du selbst. Außer du kannst Batman sein. Sei immer Batman!

  • es wird nur "0123456" ausgegeben, also dieses $i++, sonst nix.
    vielleicht liegt der Fehler ja irgendwo anders im Code.. also hier der komplette code:

  • ja, dass heist ja dass kein wert in cat[] eins enthält, also geb die mal aus und schau was da falsch ist

    Sei immer du selbst. Außer du kannst Batman sein. Sei immer Batman!

  • also ich habs mal mit

    Code
    echo "$cat[0]/$cat[1]/$cat[2]/$cat[3]/$cat[4]/$cat[5]/$cat[6]/";


    ausgeben lassen und es kommt
    "1/1/1/1/1/1/1/" dabei raus, also sind die gewählten cats auf "1", wie es ja sein sollte...
    ich werd nicht schlau draus, wenn ich irgendwo mit tabellenname was falsch geschrieben hätte wurde ich dann nicht ne fehlermeldung bekommen?

  • Hallo Serkan,

    der Fehler liegt doch auf der HAnd:

    $i=0;
    while($i < count($cat)) {
    echo $i;
    if($cat[i]==1) {
    echo "ja";
    mysql_query("INSERT INTO user_cats (user_id, cat_id) VALUES ('$user_id[0] ', '$i')") or die(mysql_error());
    }
    $i++;
    }

    Du zählst i zwar hoch schreibst aber alles in die Variable(Feld) user_id[0]!!! dort mus stehen $user_id[i-1]

    Alles klar?

    rhotter@gmx.de