Insert in php

Status
Nicht offen für weitere Antworten.

alkaline

Mitglied
Hallo,
ich will den Inhalt eines HTML Textfeldes per php in einer mysql Datenbank speichern.
Könnte mir jemand sagen, was hieran falsch ist? Ich denke es ist ein Syntaxfehler, komm aber nicht drauf...

PHP:
$result = mysql_query("INSERT INTO bemerkung VALUES('$_REQUEST['feld1']');");
 
1. Hast du keinen Primärschlüssel?
2. Versuch mal
PHP:
 $result = mysql_query("INSERT INTO bemerkung VALUES('".$_REQUEST['feld1']."');");
 
alkaline hat gesagt.:
Hallo,
ich will den Inhalt eines HTML Textfeldes per php in einer mysql Datenbank speichern.
Könnte mir jemand sagen, was hieran falsch ist? Ich denke es ist ein Syntaxfehler, komm aber nicht drauf...

PHP:
$result = mysql_query("INSERT INTO bemerkung VALUES('$_REQUEST['feld1']');");

PHP:
mysql_query("INSERT INTO `bemerkung` VALUES ('".$_REQUEST['feld1']."')");

/€dit:
Ah, zu spät :)
 
Hmm, aber wenn ich das Spielchen wiederhol,überschreibt er anscheinend den Datensatz. Die "anzeige" Funktion zur Kontrolle zeigt immer nur einen Datensatz an...

Hier mal der php code:

PHP:
<?php
include ('mysql.inc.php');
function anzeigen($tabelle)
{
	$result = mysql_query("SELECT * FROM $tabelle");
	if($result)
	{

		echo '<table>';
		while($row = mysql_fetch_row($result))
		{
			echo '<tr>';
			for($col = 0; $col < SizeOf($row); $col++)
			{
				echo"<td>$row[$col]</td>";
			}
			echo '</tr>';
		}
		echo '</table>';
	}
}

$connection = mysql_connect($sql['host'],$sql['uid'],$sql['pwd']);
if($connection)
{
	if(mysql_select_db($sql['db']))
	{
		echo "datenbank wurde gewählt:<br>";
	}
}

echo $_REQUEST['feld1'];

$result = mysql_query("INSERT INTO bemerkung VALUES('".$_REQUEST['feld1']."');");
if($result)
{
	echo "datensatz angelegt!";
}

anzeigen("bemerkung");

?>

und der dazugehörende html code:

PHP:
<html>
<head>
  <title>test</title>
</head>
<body>
  <form action="diesisteintest.php" method="post">
   Bemerkung:
    <input type="text" name="feld1">
    <input type="submit" value="Senden">
  </form>
</body>
</html>

Könnt ihr mir helfen? Oder funktioniert meine Kontrollanzeigefunktion nur nicht richtig? :confused:

Hab noch ein zweites Problem: Wenn ich mehrere Werte übergeben will geht gar nix mehr.
PHP:
$result = mysql_query("INSERT INTO cds VALUES('".$_REQUEST['titel']."','".$_REQUEST['interpret']."','".$_REQUEST['jahr']."');");

...auch hier wieder ein Syntaxfehler?
 
Zuletzt bearbeitet:
Es liegt daran, das Du in deiner MySQL-Tabelle keinen Primärschlüssel definiert hast, ein Feld das etwa einen Namen hat wie "ID".
Mach das und änder die zeile dann folgendermaßen um:
PHP:
mysql_query("INSERT INTO cds VALUES('','".$_REQUEST['titel']."','".$_REQUEST['interpret']."','".$_REQUEST['jahr']."');");
Hier muss die ID als erstes Feld definiert sein!
 
Zuletzt bearbeitet:
Status
Nicht offen für weitere Antworten.
Zurück