Hehe völlig übersehen
schonmal besten Dank dafür jetzt speichert er schonmal die Eingaben im
Form. Aber in der DB taucht immer noch nichts auf werde oben mal die DB einstellungen ergänzen.
Hehe völlig übersehen
schonmal besten Dank dafür jetzt speichert er schonmal die Eingaben im
Form. Aber in der DB taucht immer noch nichts auf werde oben mal die DB einstellungen ergänzen.
Hallo Leute
Ich habe folgendes Problem, und zwar bastel ich gerade an einem Script mit PHP und Mysql was die aufgabe haben soll daten in eine mysql Tabelle aufzunehmen. Die Daten werden über ein Formular aufgenommen und gespeichert, und bei einer unvollständigen eingabe soll eine Fehlermeldung ausgegeben werden und die vorigen angaben in den feldern gespeichert bleiben.
Naja dem ist aber leider nicht so.
Das script reagiert irgendwie immer gleich.
Es kommt immer eine Erfolgsmeldung wenn die Daten Übermittelt werden solln und auch keine Fehlermeldung bei einer unvollständigen eingabe.Und
wie solls anders sein natürlich auch kein eintrag in die DB tabelle.
Das script hänge ich mal an
Ich muss dazu sagen das das meine erstes Projekt mit PHP und Mysql ist und mein Wissen über die Thematik noch lückenhaft ist .
Wäreaber klasse wenn hier vielleicht wer weiter weiss
schonmal besten Dank
mo
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>admintest</title>
</head>
<body>
<?php
// prüfen ob das formular abgeschickt wurde
if($_POST['flag']==1)
{
//Leerstellen entfernen
$_POST['artnr']=trim($_POST['artnr']);
$_POST['name']=trim($_POST['name']);
$_POST['gr']=trim($_POST['gr']);
$_POST['beschreibung']=trim($_POST['beschreibung']);
//evt vorhandenen HTML code entfernen
$_POST['artnr']=strip_tags($_POST['artnr']);
$_POST['name']=strip_tags($_POST['name']);
$_POST['gr']=strip_tags($_POST['gr']);
$_POST['beschreibung']=strip_tags($_POST['beschreibung']);
//prüfen ob alle felder auusgefüäät worden sind
if(!$_POST['artnr'])
{
$_fehler="Bitte geben Sie eine Artikelnummer ein!!
";
}
if(!$_POST['name'])
{
$_fehler="Bitte geben Sie einen namen ein!!
";
}
if(!$_POST['gr'])
{
$_fehler="Bitte geben Sie eine Größe an!!
";
}
if(!$_POST['beschreibung'])
{
$_fehler="Bitte geben Sie eine beschreibung ein!!
";
}
//wenn nicht vollständig TxT ausgabe formatieren und $_POST['flag']
//löschen form wird neu angezeigt
if($_fehler)
{
$meldung="<h2><font color=red>".$fehler."</font></h2>";
unset($_POST['flag']);
}
//keine fehler daten in die DB übertragen
else
{
//mysql befehle
$tblname="testdb";
$sql="INSERT INTO $tblname(artnr,name,gr,beschreibung)
values ('".$_POST['artnr']."',
'".$_POST['name']."',
'".$_POST['gr']."',
'".$_POST['beschreibung']."',
)";
//verbinden zur DB
$link = mysql_connect("localhost", "web553", "fumanchu");
mysql_select_db("testdb", $link);
mysql_query($sql, $link);
}
$meldung="<h2><font color=red>Der Artikel wurde aufegnommen</font></h2>";
//ausgeben der meldung
echo $meldung;
}
?>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<input type="hidden" name="flag" value="1">
ArtNR.:
<input type="text" name="artnr" value="<?php echo $_POST['artnr']; ?>"></p>
Name:
<input type="text" name="name" value="<?php echo $_POST['name']; ?>"></p>
Gr.
<input type="text" name="gr" value="<?php echo $_POST['gr']; ?>"></p>
Beschreibung
<textarea rows="5" cols="50" name="beschreibung" >
<?php echo $_POST['beschreibung']; ?>
</textarea>
</p>
<input type="submit" value="einstellen">
</form>
</body>
</html>
Alles anzeigen
Hier nochmal ein Bild von der sql Tabelle
[Blockierte Grafik: http://www.stg501.de/musi/mysql.jpg]
Und noch ein kleines script um die Verbindung zu sql zu testen
welches folgende Fehlermeldung ausgibt:
--------------------------------------------------------
Verbindung wurde aufgebaut
Konnte Datenbank nicht benutzen.
Der Grund dafür: Access denied for user: 'web553ATlocalhost' to database 'testdb'
---------------------------------------------------------
und hier das script welches die ausgabe erzeugt
Einmal die config.php
<?php
// config.php
error_reporting(E_ALL);
define('MYSQL_HOST', 'localhost');
define('MYSQL_USER', 'web553');
define('MYSQL_PASS', 'fumanchu');
define('MYSQL_DATABASE', 'testdb');
?>
und die testsql.php
<?php
//testsql.php
error_reporting(E_ALL);
include 'config.php';
if(!@mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS)) {
echo "Es konnte keine Verbindung aufgebaut werden";
}
else
{
echo "Verbindung wurde aufgebaut
\n";
}
if(!mysql_select_db(MYSQL_DATABASE)) {
echo "Konnte Datenbank nicht benutzen.
\n";
echo "Der Grund dafür: ".mysql_error()."\n";
}
else
{
echo "Die Datenbank wurde ausgewählt";
}
?>
Alles anzeigen