Tom: variable

Beitrag lesen

Hello Daniel,

ich möchte daten aus den variablen in meine db schreiben. nun habe ich folgende anweisung:

$anfrage="INSERT INTO buch VALUES('$id', '$name', '$titel', '$preis')";

Du solltest ganz langsam anfangen.

Steht etwas drin in den Variablen?

echo "id: $id <br />";
echo "name: $name <br />";
echo "titel: $titel <br />";
echo "preis: $preis <br />";

$sql = "INSERT INTO buch VALUES('$id', '$name', '$titel', '$preis')";

echo "SQL: $sql <br />";

das funktioniert so nur, wenn die Tabelle buch in der gleichen Reihen-

folge die Spalten, passend zu id, name, titel preis hat. sonst musst

Du den Spalten die Werte explizit zuweisen.

$sql2  =  "INSERT INTO buch set ";
$sql2 .=  "id = '$id',";
$sql2 .=  "name = '".mysql_escape_string($name)."',";
$sql2 .=  "titel = '".mysql_escape_string($titel)."',";
$sql2 .=  "preis = '$preis')";

echo "SQL2: $sql2 <br />";

Verbindung zum DB-Server herstellen

$con = mysql_connect( ......) or die("keine Verbindung zum DB-Server");
$db = mysql_select_db($dbname,$con) or die ("kann Datenbank nicht öffnen");

und das Query:

$res = mysql_query($sql2,$con);

if ($res)
{
  echo "ok";
}

Auch Preis und ID sollten im zweiten Beispiel auf unerlaubte Werte geprüft sein, bevor Du sie an die DB übergibst.

Liebe Grüße aus http://www.braunschweig.de

Tom

--
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen