 |
| Hinweise |
Willkommen im TP-Hilfe-Forum!Dies ist ein Forum zu den Themen Photoshop, Dreamweaver, Flash, Selbständigkeit und mehr, in dem Du Hilfe, Anleitung oder eine Lösung zu Deinen Problemen erhältst. Aktuell bist Du in unseren Foren als Gast mit reinen Leserechten unterwegs. Wenn Du Dich registrierst, kannst Du eigene Themen verfassen, Deine Frage stellen und privat mit anderen TPlern kommunizieren. Weitere Foren werden zugänglich, und Du wirst – falls gewünscht – per Mail über neue Beiträge informiert. Die Registrierung ist schnell und kostenlos. Sollten bei der Registrierung Fragen auftauchen, reicht ein Klick in unsere Hilfe - Häufig gestellte Fragen oder eine kurze Mitteilung an das Support-Team. Viel Spaß bei Traum-Projekt.com |
05.07.2003, 14:59
|
#1
|
|
TP-Veteran
Registriert seit: Sep 2002
Ort: Schweiz
|
Formular verwenden um neue Datensätze hinzuzufügen
HI Leute. Bin noch ein ziemlicher Noob in Sachen PHP. Hab mich ein bischen mit den Schattenbaum Tuts auseinandergesetzt. Jetzt wollte ich mittels eines Formulars Daten in einen Datensatz einfügen. Funkt aber so wie ich das gemacht nicht! Hier ma der Code:
PHP-Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<?
include ("dbconnect.php");
?>
<html>
<head>
<title>Linkliste</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
<!--
BODY {
font-family: arial;
font-size: 12px;
color: #000000;
background-color: #FFFFFF
}
a:link {
font-family:arial;
font-size:12px;
color:blue;
text-decoration:none;
}
a:hover {
font-family:arial;
font-size:12px;
color:blue;
text-decoration:underline;
}
a:active {
font-family:arial;
font-size: 12px;
color:blue;
text-decoration:none;
}
a:visited {
font-family:arial;
font-size: 12px;
color: blue;
text-decoration:none;
}
-->
</style>
</head>
<body>
<?
$beitrag = $HTTP_POST_VARS[beitrag];
$eintrag = "INSERT INTO news-system (beitrag) VALUES ('$beitrag')";
$eintragen = mysql_query($eintrag);
?>
<form method="post" action="../test/news.php">
<textarea name="beitrag" cols="10" rows="5"><? echo $beitrag; ?></textarea>
<input name="button" type="submit" value="abschicken">
</body>
</html>
|
|
|
05.07.2003, 15:20
|
#2
|
|
Guest
Registriert seit: Aug 2002
|
Du musst es nur dann eintragen, wenn Button gedrückt wird, das machst du mit einer if-Abfrage:
PHP-Code:
if (!$_POST['button'])
{
include ("dbconnect.php");
mysql_query("INSERT INTO news-system (beitrag) VALUES('" . $_POST['beitrag'] . "')");
}
|
|
|
05.07.2003, 15:41
|
#3
|
|
TP-Veteran
Registriert seit: Sep 2002
Ort: Schweiz
|
Funktioniert immer noch nicht! Ich verwende für das Formular jetzt folgenden Code:
PHP-Code:
<form method="post" action="../test/news.php">
<textarea name="beitrag" cols="10" rows="5"></textarea>
<input name="button" type="submit" value="submit">
<?php
if (!$_POST['button'])
{
include ("dbconnect.php");
mysql_query("INSERT INTO news-system (beitrag) VALUES('" . $_POST['beitrag'] . "')");
}
?>
Es tritt folgende Fehlermeldung ein:
Notice: Undefined index: button in c:\wampp13a\htdocs\test\news.php on line 50
Notice: Undefined index: beitrag in c:\wampp13a\htdocs\test\news.php on line 53
Bedeutet das, das ich die Variablen noch irgendwie definieren muss?? Bin verwirrt
|
|
|
05.07.2003, 15:44
|
#4
|
|
Guest
Registriert seit: Aug 2002
|
Ich würde du benutzt alte Version von PHP, stimmt's ? Wenn ja dann schreib statt $_POST $HTTP_POST_VARS hin.
|
|
|
05.07.2003, 15:49
|
#5
|
|
TP-Veteran
Registriert seit: Sep 2002
Ort: Schweiz
|
Immer noch die selbe Fehlermeldung! Ich hab Version 4.3.0
|
|
|
05.07.2003, 16:24
|
#6
|
|
Guest
Registriert seit: Aug 2002
|
Nimm das ! weg, habe Fehler gemacht, sorry und nimm die ' weg, die in POST[''] stehen.
|
|
|
05.07.2003, 16:28
|
#7
|
|
Guest
Registriert seit: Aug 2002
|
PS: Du musst nur ! wegnehmen, sorry nochmals, habe es übersehen.
|
|
|
05.07.2003, 16:32
|
#8
|
|
Guest
Registriert seit: Aug 2002
|
Boah, sorry bin heute total daneben, du solltest die Anfrage anders machen: if(!empty($_POST['button']))
Anders würde er prüfen, ob $_POST['button'] existiert, was aber Quatsch in diesem Fall wäre, wir müssen prüfen, ob es was am Text enthällt.
Geändert von Strogij (05.07.2003 um 16:35 Uhr).
|
|
|
05.07.2003, 16:52
|
#9
|
|
TP-Veteran
Registriert seit: Sep 2002
Ort: Schweiz
|
Hast mich selber ein bischen verwirrt....trotzdem danke für deine Hilfe!
Folgendes: Fehlermeldungen sind jetzt weg, aber wenn ich den Text, den ich eingegeben habe übermittle kommt nix in meine Datenbank rein. Die bleibt so leer wie sie anfangs war!
Hier nochma der aktuelle Formular-Code
PHP-Code:
<form method="post" action="../test/news.php">
<textarea name="beitrag" cols="10" rows="5"></textarea>
<input name="button" type="submit" value="submit">
<?php
if(!empty($_POST['button']))
{
include ("dbconnect.php");
mysql_query("INSERT INTO news-system (beitrag) VALUES('" . $HTTP_POST_VARS['beitrag'] . "')");
}
?>
Ich versuche mal das Script zu interpretieren:
"Wenn der Input (also der eingegebene Formulartext) nicht leer ist, dann stelle Verbindung zur Datenbank her und füge zur Tabelle 'news-system' den Wert des Formulars hinzu" Ist das so richtig???
Geändert von GaFleX (05.07.2003 um 16:57 Uhr).
|
|
|
05.07.2003, 17:12
|
#10
|
|
Guest
Registriert seit: Aug 2002
|
PHP-Code:
<?PHP
if(isset($_POST['button'])) // isset eignet sich besser für Buttons
{
include ("dbconnect.php");
mysql_query("INSERT INTO news-system (beitrag) VALUES('" . $_POST['beitrag'] . "')");
}
?>
<form method="post" action="../test/news.php">
<textarea name="beitrag" cols="10" rows="5"></textarea>
<input name="button" type="submit" value="submit">
</form>
Sollte so gehen.
PS: Wird das ganze an die gleiche Datei gesendet ?
Geändert von Strogij (05.07.2003 um 17:17 Uhr).
|
|
|
05.07.2003, 17:27
|
#11
|
|
TP-Veteran
Registriert seit: Sep 2002
Ort: Schweiz
|
So leid es mir tut, aber in meiner Datenbank tut sich nach wie vor gar nichts!! Das ganze wird an die news.php gesendet und die Seite mit dem Formular ist auch die news.php, wird also an ein und die selbe Datei gesendet. Aber in die Datenbank geht einfach nicht rein....
|
|
|
05.07.2003, 17:35
|
#12
|
|
TP-Veteran
Registriert seit: Sep 2002
Ort: Schweiz
|
Die Lösung des Problems: Tabellen dürfen in MySQL keine '-' beinhalten. Hab die Tabelle umbenennt und schon gehts....tut mir leid für die Umstände..Danke vielmals!
|
|
|
05.07.2003, 17:44
|
#13
|
|
Guest
Registriert seit: Aug 2002
|
Habs grade auch getestet, wusste aber das mit - nicht, naja wie auch immer, hast jetzt hoffentlich das was du brauchst 
|
|
|
05.07.2003, 17:49
|
#14
|
|
TP-Veteran
Registriert seit: Sep 2002
Ort: Schweiz
|
Ja hab ich. Soll übrigens mal ein News-Script für Websites geben...
|
|
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
Thema durchsuchen |
|
|
|
| Thema bewerten |
|
|
Forumregeln
|
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 22:39 Uhr.
|
 |