Ich checks einfach nicht

B

Benedikt

Hi!
Ich lern seit gestern anhand tutorials PHP.
Mein momentanes Ziel ist einfach nur, einen Wert in eine MySql Datenbank einzutragen und wieder abzurufen.

Also so weit bin ich momentan:

Die Html Datei:
----------------

<html>
<head>
<title></title>
</head>
<body>
<form action="eintragen.php" method="post">
<input type="Text" name="TextAlter" value="" size="50" maxlength="50"><br>
<input type="Submit" name="Ok" value="Eintragen">
</form>
</body>
</html>

Die Php Datei:
---------------

<?
$db = mysql_connect("localhost","benutzername","passwort");
mysql_select_db("user_de_db",$db);
$reintun = "INSERT Werte (Wert1) VALUES ('irrgendwas')"
$requete = "SELECT * FROM Werte WHERE id=1";
$result = mysql_query ($requete,$db);
$Alter =mysql_fetch_object($result);
mysql_free_result($result);
?>

Was mache ich falsch?
Mein Ziel ist einfach nur, dass man im Textfeld der Html Datei einen Wert eingibt und dieser dann in der MySql Datenbank gespeichert wird.

Danke,
Benedikt

PS: Falls es eine Rolle spielt: Ich nutze die MySql Datenbank eines Tripod accounts.
 
Also zum eintragen brauchst du folgenden query:

PHP:
INSERT INTO tabelle (datname) VALUES ('$datname')

und so wie dus unten geschrieben hast, wirds ja gar nich in die db eingetragen???

deine php datei sollte so ausschaun:

PHP:
$db = mysql_connect("localhost","benutzername","passwort"); 
mysql_select_db("user_de_db",$db); 
mysql_query("INSERT INTO Werte (Wert1) VALUES ('irrgendwas')"); 
$result = mysql_query("SELECT * FROM Werte WHERE id=1"); 
$ausgabe = mysql_fetch_row($result);
echo "$ausgabe[1]";
echo "<br>$ausgabe[2]";

Dieses script fügt der DB einen eintrag hinzu und liest ihn dan gleich wieder aus... wobei zu beachten ist, das mit der obigen lösung immer nur der erste eintrag ausgelesen wird, also da wo die id=1 ist. das solltest du noch so ändern, das immer der neuste ausgelesen wird.. aber eintragen und auslesen sollte funktionieren, wie oben geschrieben. sonst einfach fragen...

antihero
 
da fehlt einiges :)


$reintun = "INSERT Werte (Wert1) VALUES ('$_POST['TextAlter']')"
der verbesserte insert damit auch der input wert eingetragen wird..

dann muss natürlich auch abgespeichert werden das fehlte ganz ...

$result = mysql_query($reintun,$db);


$requete = "SELECT * FROM Werte WHERE id=1";
$result = mysql_query ($requete,$db);

$Alter =mysql_fetch_array($result);
die version finde ich besser ....

dann sollte man noch ausgeben (fehlte auch)

echo $Alter['Wert1']," wurde aus db geholt<br>";

...

ich denke ich habe nix vergessen *g*
 
also erstmal Danke für eure Hilfe!

ich hab jetzt beide Versionen getestet, bei der von anti-her0 passiert irrgendwie gar nichts...
und bei der von melmager kommt eine Fehlermeldung:

Parse error: parse error, expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' in test.php on line 4

und so sieht momentan die PHP-Datei aus:

<?
$db = mysql_connect("localhost","username","passwort");
mysql_select_db("user_de_db",$db);
$reintun = "INSERT Wert (Wert1) VALUES ('$_POST['TextAlter']')";
$result = mysql_query($reintun,$db);
$requete = "SELECT * FROM Wert WHERE id=1";
$result = mysql_query ($requete,$db);
$Alter =mysql_fetch_array($result);
echo $Alter['Wert1']," wurde aus db geholt<br>";
?>

was stimmt dabei nicht?
Danke,
Benedikt
 
hmmm...

also bei den query, brauchts du den $db nich anzugeben...
das wäre in zeile 5:
$result = mysql_query($reintun);

in zeile vier könnte der fehler sein:
('$_POST['TextAlter']')
entferne mal die beiden ' um $_POST['TEXTAlter'].. dass die zeile dann so aussehen würde:
$reintun = "INSERT Wert (Wert1) VALUES ($_POST['TextAlter'])";
ich denke dann sollte es funktionieren...

antihero
 
das wird auch vom anti-hero nicht gehen..machs so :)

PHP:
<? 
$db = mysql_connect("localhost","username","passwort"); 
mysql_select_db("user_de_db",$db); 
$reintun = "INSERT Wert (Wert1) VALUES ('".$_POST['TextAlter']."')"; 
$result = mysql_query($reintun,$db); 
$requete = "SELECT * FROM Wert WHERE id=1"; 
$result = mysql_query ($requete,$db); 
$Alter =mysql_fetch_array($result); 
echo $Alter['Wert1']," wurde aus db geholt<br>"; 
?>
 
Zurück