Autor |
Nachricht |
DennisWa
Threadersteller
Dabei seit: 01.02.2009
Ort: Weißenburg
Alter: -
Geschlecht:
|
Verfasst Do 16.04.2009 17:42
Titel Insert into SQL |
|
|
Ich programiere ein Chords-Portal und habe eine wunschliste, falls Chords fehlen. Die soll mann dann in mein Formular eintragen und senden. das ganze soll dann in meiner datenbank gespeichert werden... Dass macht es aber nicht. Gespeichert werden nur leere einträge...
Code: |
<form action="wish1.php" method="post">
<font size="+2"><p align="center">Ihr Wunsch:</p></font>
<p align="center"><input id="textarea" type="text" name="Wunsch"></p><p></p>
<p align="center"><input type="image" src="http://www.php.de/images/1a.gif"></p>
</form> |
auf der seite wish1.php sind folgende scripts...
Code: |
<?php
$Datum = date("d.m.Y");
?>
.
.
.
<?php
$server = "localhost";
$Benutzer = "****";
$Passwort = "****";
$verbindung = mysql_connect ($server, $Benutzer, $Passwort);
mysql_select_db("guitarmarks", $verbindung);
$Begriff = $_POST["Wunsch"];
mysql_query("INSERT INTO Wishes (Date, Wunsch) values ('$Datum', '$Begriff')");
?> |
In die Datenbank trägt er mir dann folgendes ein:
Date: 00-0000-00
und bei Wunsch gar nichts...
[edit: zugangsdaten maskiert. m]
Zuletzt bearbeitet von m am Do 16.04.2009 21:13, insgesamt 1-mal bearbeitet
|
|
|
|
|
pRiMUS
Dabei seit: 09.09.2003
Ort: Vienna
Alter: 48
Geschlecht:
|
Verfasst Do 16.04.2009 18:00
Titel
|
|
|
erstens: bitte deine post eingaben immer vor dem eintragen in die datenbank auf gültigkeit prürfen. du willst doch nicht, das jemand fuddsack mit deinem server macht
zweitens: das datum kannst du mit NOW() einfügen. ich gehe davon aus es ist im date/datetime format. da du allerdings mit date("d.m.Y") da rumwurschtelst, kann das natürlich nicht gehen, weil das datum im richtigen spaltentyp YYYY-MM-DD eingetragen wird.
dein script könnte also wie folgt aussehen:
Code: |
$Begriff = mysql_real_escape_string($_POST["Wunsch"]);
mysql_query("INSERT INTO Wishes (Date, Wunsch) values (NOW(), '". $Begriff ."')");
|
// edit:
ich sehe gerade, das dein input feld als id="textarea" hat, so musst du dann auch den post wert ansprechen, oder täusch ich ich da jetzt?
Zuletzt bearbeitet von pRiMUS am Do 16.04.2009 18:01, insgesamt 1-mal bearbeitet
|
|
|
|
|
Anzeige
|
|
|
pixelpapst303
Dabei seit: 06.07.2006
Ort: hamburg
Alter: 50
Geschlecht:
|
Verfasst Do 16.04.2009 19:29
Titel
|
|
|
dittens sollte date eine von mysql reservierte geschichte sein...
|
|
|
|
|
DennisWa
Threadersteller
Dabei seit: 01.02.2009
Ort: Weißenburg
Alter: -
Geschlecht:
|
Verfasst Do 16.04.2009 20:17
Titel
|
|
|
Das date problem wäre gelöst, das 2. problem bleibt bestehen...
Der $Begriff wird aber immer noch nicht mit übernommen....
|
|
|
|
|
m
Moderator
Dabei seit: 18.11.2004
Ort: -
Alter: -
Geschlecht:
|
|
|
|
|
pRiMUS
Dabei seit: 09.09.2003
Ort: Vienna
Alter: 48
Geschlecht:
|
Verfasst Fr 17.04.2009 06:52
Titel
|
|
|
hast du denn jetzt auch
Code: |
$Begriff = $_POST["Wunsch"];
|
gegen
Code: |
$Begriff = mysql_real_escape_string($_POST["textarea"]);
|
ausgetauscht?
|
|
|
|
|
ApfelQFeierabend
Dabei seit: 05.04.2008
Ort: Regensburg
Alter: 37
Geschlecht:
|
Verfasst Sa 18.04.2009 12:37
Titel
|
|
|
du solltest dir aufjedenfall mal anschauen wie man in xhtml forms erstellt
und dann würde ich alles kleinschreiben also die var names, die post arr names und die input names
ausserdem ist das sinnvoll wenn du dein ganzes wish.php ding mit einer if abfrage startest wie zB
if(isset($_POST['wunsch'])) {
dein code
}
else{
echo "nix da";
}
dann hast du auch keine leeren einträge mehr in der datenabank
Zuletzt bearbeitet von ApfelQFeierabend am Sa 18.04.2009 12:37, insgesamt 1-mal bearbeitet
|
|
|
|
|
|
|
|
Ähnliche Themen |
[PHP] INSERT INTO ein Array
[PHP&MySQL] Insert in 2 Tabellen
[php/mysql] problem mit insert
INSERT funzt nicht mehr
|
|