variable
daniel putz
- php
0 Magic Mike0 Tom
hallo,
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')";
jedoch schreibt er mir nur leere daten in die db.
ich weiß, dass die variablen anders beschrieben werden müssen (irgendwie $_script???id), jedoch nicht wie! kann mir das jemand sagen?!
danke,
daniel
Moin Daniel,
$anfrage="INSERT INTO buch VALUES('$id', '$name', '$titel', '$preis')";
Wo sind den die Spaltennamen?
$anfrage="INSERT INTO buch ( spalte_id, spalte_name ) VALUES (
'$id', '$name',......)
regds
Mike
mahlzeit mike,
$anfrage="INSERT INTO buch ( spalte_id, spalte_name ) VALUES (
'$id', '$name',......)
mysql unterstützt eine eingabe ohne spaltenangaben. daranl liegt es nicht.
die variablen müssen anders benannt werden, soweit weiß ich es schon, allerdings weiß ich nicht wie...! und ich konnte das bisher auch niergendwo finden!
danke für deine bemühungen,
daniel
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 />";
$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 />";
$con = mysql_connect( ......) or die("keine Verbindung zum DB-Server");
$db = mysql_select_db($dbname,$con) or die ("kann Datenbank nicht öffnen");
$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