Id zählt nicht hoch

Hallo,

Ich hab ein Problem das er beim erstellen von usern die id nicht hochzählt :frowning:
könnt ihr mir da helfen ?

Die Config:

<? $id=$_POST['id']; $name=$_POST['name']; $kennwort=$_POST['kennwort']; $level=$_POST['level']; mysql_connect("möp", "nimmert", "A123456Z") or die(mysql_error()); mysql_select_db("nimmert") or die(mysql_error()); mysql_query("INSERT INTO `net_admin` VALUES ('$id', '$name', '$kennwort', '$level')"); Print "Erfolgreich gesendet"; ?>

Kein AUTO_INCREMENT für die Spalte gesetzt?

Bitte was ?

Hab aber klappt immer noch net :frowning:
jetzt fügt er ganix mehr ein

Oh, ich sehe gerade, du übergibst die ID per POST. Warum das?

Ka wie soll ich das denn machen ?

Das hängt etwas davon ab, wie das inhaltlich gedacht ist. Normalerweise hast du in einer Tabelle ein Primärschlüsselfeld/eine ID. Das heißt üblicherweise „id“ oder sowas in der Art, ist als PRIMARY KEY definiert und mit dem AUTO_INCREMENT-Attribut versehen.

(Dump aus phpMyAdmin)

CREATE TABLE `test`.`net_admin` ( `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , `name` VARCHAR( 255 ) NOT NULL , `kennwort` VARCHAR( 255 ) NOT NULL , `level` INT NOT NULL ) ENGINE = InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci;

Beim INSERT setzt du dann alle Felder außer dem id-Feld:

INSERT INTO `test`.`net_admin` ( `name` , `kennwort` , `level` ) VALUES ( 'Nimmert', 'c7395fb9a6c942eaf5b325ef988142d2', '1' );

mysql> select * from net_admin; +----+-----------+----------------------------------+-------+ | id | name | kennwort | level | +----+-----------+----------------------------------+-------+ | 1 | Nimmert | c7395fb9a6c942eaf5b325ef988142d2 | 1 | | 2 | mermshaus | ecb81bb47a0e8a3f590aaed8e4e9c2bd | 0 | +----+-----------+----------------------------------+-------+ 2 rows in set (0.00 sec)

Das id-Feld wird automatisch auf den nächsthöheren Index gesetzt.

Hab deine DB eingefügt und config neu gemacht
aber es klappt imma noch net :frowning:

<? $id=$_POST['id']; $name=$_POST['name']; $kennwort=$_POST['kennwort']; $level=$_POST['level']; mysql_connect("xxx", "nimmert", "A123456Z") or die(mysql_error()); mysql_select_db("nimmert") or die(mysql_error()); mysql_query("INSERT INTO `net_admin` VALUES (`name` , `kennwort` , `level`)"); Print "Erfolgreich gesendet"; ?>

Debuggen.

[php]$result = mysql_query(„INSERT INTO net_admin VALUES (name , kennwort , level)“);
if ($result === false) {
echo mysql_error();
}[/php]