webinterface

Rai

Mitglied
zu diesem Tutorial

hab ich mal diesen Fetzen Code geschrieben um Online neue Seiteninhalte zu machen:

Code:
<?php 
//Uservariablen f&uuml;r den Datenbankzugang
 $mysql["host"] = "127.0.0.1";
 $mysql["user"] = "root";
 $mysql["password"] = "";
 $mysql["database"] = "alfa";
 //Datenbankverbindung aufbauen und Datenbank ausw&auml;hlen
 $verbindung = mysql_connect($mysql["host"],$mysql["user"],$mysql["password"]);
 mysql_select_db($mysql["database"]);


  /* Eintrag als Variable */
 $id = $HTTP_POST_VARS["id"];
 $text = $HTTP_POST_VARS["text"];
  
   $eintrag = "INSERT INTO doc_test (id,text) VALUES ('$id', '$text')";
  
 /* Eintragen ! */
 $eintragen = mysql_query($eintrag);
  
/* Verbindung schließen */
mysql_close($verbindung);

 ?>


Dem ganzen geht ein Formular vorraus...
Jetzt zur Frage, eigentlich sollte ich die id ja nicht festlegen und reinschreiben, oder ?

Jedenfalls bin ich mir sicher, dass man das klüger machen kann,
aber wie ?
 
Zuletzt bearbeitet:
ICh hoffe ich verstehe dich richtig.
Also du gibstt dem Feld 'Id' in der Datenbank (z.b. mit PHPmyadmin) Auto Increment. Dadruch wird dieses Feld automatisch bei jedem eintrag um eins höher gesetzt .
 
Das Feld "id" wird mit der Eigenschaft "auto-increment" versehen (über phpMyAdmin einstellbar). Im Insert-Statement kannst Du dann die ID ganz weg lassen, da diese automatisch erzeugt wird. Möchtest Du die neue ID des letzten Insert-Statements ermitteln, kannst Du das mit der Funktion [phpf]mysql_insert_id[/phpf] tun.

snuu
 
Wenn die Spalte "id" auto_increment ist solltest du das Feld leer lassen:
PHP:
$sql = mysql_query("INSERT INTO tabelle (id, text) VALUES('', '$text')");
 
Wenn die Spalte id das AUTO_INCREMENT-Attribut hat, ist es auch nicht nötig, die Spalte zu erwähnen.
 
Zurück