php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2008

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 14.10.2008, 12:13  
Neuer Benutzer
 
Registriert seit: 14.10.2008
Beiträge: 5
Kamazur befindet sich auf einem aufstrebenden Ast
Standard [Erledigt] Bei Aktualisierung der meiner Seite wird immer neuer Datensatz eingetragen

Hallo an alle!

Ich wälze mich seit geraumer Zeit durch etliche Bücher und Google mich durchs Web um irgendwie weiter zu kommen, da ich versuche mir php und SQL anzueignen. Komme aber nicht weiter und hoffe daher auf Hilfe von euch.

Ich bastle an einer Seite in der ich in einem Formular Daten eingeben kann und nach absenden alle Datensätze angezeigt bekomme. Jedesmal wenn ich die Seite aktualisiere oder ohne etwas einzutragen auf absenden klicke, entsteht trotzem ein neuer Datensatz.

WAS MACH ICH FALSCH??? Vielen Dank im voraus für eure Hilfe

Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Uhren</title>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor=#DCE1BD background="bulgari.jpg">
<h1 align="center">UHREN</h1>
<form action = "uhren.php" method = "post">
 
<table border="8" align="center" bgcolor="#D1C2C2">
<tr>
<th> Marke </td>
<td><input name="marke"></td>
</tr>
<tr>
<th> Typ </td>
<td><input name="typ"></td>
</tr>
<tr> 
<th> Baujahr</td> 
<td><input name="jahr" size="2" maxlength="4"></td>
</tr>
<tr> 
<th> Glas </td>
<td><input name="glas"> </td>
</tr>
<tr> 
<th> Uhrwerk </td>
<td><input name="werk"> </td>
</tr>
<tr>
<th> Preis </td>
<td><input name="preis" size="10"> </td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" name="gesendet"></td>
</tr>
</table> 
</form>
PHP-Code:
<?php
   
// Marke und Preis müssen ausgefüllt werden, damit es in Datenbank eingetragen wird //
   
if (strlen(trim($_POST["marke"])) and (trim($_POST["preis"])))
    {
      echo 
"<font color='#00aa00'>";
      echo 
"Es wurde 1 Datensatz hinzugefügt<br>";
      echo 
"</font>";
 
    }
      
// Verbindung zur Datenbank aufnehmen //
      
mysql_connect("localhost","root");
      
mysql_select_db("uhren");
      
// Abfrage aller Artikel //
      
$res mysql_query("select * from artikel order by a_mmarke DESC");
 
      
// Ausgabe der Anzahl von Datensätzen //
      
$num mysql_num_rows($res);
      echo 
"<font align='center' color='blue' >$num Uhren gefunden<p>";
 
      
// Ausgabe der Tabellenansicht //
      
echo "<table border width='100%' height='10%' cellspacing='1' cellpadding='2'><br>";
 
        echo 
"<tr align='center' bgcolor='#B1B59A'> 
                <th>Nr.</th> 
                <th>Marke</th> 
                <th>Typ</th>  
                <th>Baujahr</th> 
                <th>Glas</th> 
                <th>Uhrwerk</th> 
                <th>Preis</th>
              </tr>"
;
 
        
// While-Schleife, Ergebnis wird ermittelt, in Array gespeichert und ausgegeben //
        
$lf 1;
        while(
$dsatz=mysql_fetch_assoc($res))
 
        {
        echo 
"<tr align='center' bgcolor='#B1B59A'>";
        echo 
"<td>$lf</td> ";
        echo 
"<td>" $dsatz["a_mmarke"] ." </td> ";
        echo 
"<td>" $dsatz["a_typ"] ." </td> ";
        echo 
"<td>" $dsatz["a_jahr"] ." </td> ";
        echo 
"<td>" $dsatz["a_gglas"] ." </td> ";
        echo 
"<td>" $dsatz["a_uwwerk"] ." </td> ";
        echo 
"<td>" $dsatz["a_preis"] ." € </td> ";
        echo 
"</tr>";
        
$lf $lf 1;
        }
        echo 
"</table>";   
 
      
// Alle Felder in Datenbank eintragen //
      
$sqlab "insert artikel (a_mmarke, a_typ, a_jahr, a_gglas, a_uwwerk, a_preis) values";
      
$sqlab .= "('" $_POST["marke"] . "',";
      
$sqlab .= "'" $_POST["typ"] . "',";
      
$sqlab .= "'" $_POST["jahr"] . "',";
      
$sqlab .= "'" $_POST["glas"] . "',";
      
$sqlab .= "'" $_POST["werk"] . "',";
      
$sqlab .= "'" $_POST["preis"] . "')";
 
      
mysql_query($sqlab);
      
// Aktionsabfrage, ermittelt die Anzahl der von der Aktion betroffenen Datensätze //
      
$num mysql_affected_rows();
      if (
$num>0)
 
 
?>
Kamazur ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 14.10.2008, 12:20  
Erfahrener Benutzer
 
Registriert seit: 28.03.2008
Beiträge: 1.847
HPR1974 wird schon bald berühmt werden
Standard

$sqlab = "insert artikel (a_mmarke, a_typ, a_jahr, a_gglas, a_uwwerk, a_preis) values";
$sqlab .= "('" . $_POST["marke"] . "',"
;
$sqlab .= "'" . $_POST["typ"] . "',"
;
$sqlab .= "'" . $_POST["jahr"] . "',"
;
$sqlab .= "'" . $_POST["glas"] . "',"
;
$sqlab .= "'" . $_POST["werk"] . "',"
;
$sqlab .= "'" . $_POST["preis"] . "')"
;

mysql_query($sqlab
);


wird immer ausgeführt ohne dass Du prüfst ob ein POST request aus deinem Formular vorliegt
HPR1974 ist offline  
Alt 14.10.2008, 13:04  
Neuer Benutzer
 
Registriert seit: 14.10.2008
Beiträge: 5
Kamazur befindet sich auf einem aufstrebenden Ast
Standard

Reicht also meine if-Abfrage oben nicht? muss ich mit "empty" arbeiten?
Kamazur ist offline  
Alt 14.10.2008, 13:11  
Erfahrener Benutzer
 
Benutzerbild von JEGO
 
Registriert seit: 01.12.2003
Beiträge: 2.555
PHP-Kenntnisse:
Anfänger
JEGO wird schon bald berühmt werden
Standard

Zitat:
Zitat von Kamazur Beitrag anzeigen
Reicht also meine if-Abfrage oben nicht? muss ich mit "empty" arbeiten?

das hat dir doch HPR1974 schon gesagt.
Zitat:
wird immer ausgeführt ohne dass Du prüfst ob ein POST request aus deinem Formular vorliegt
__________________
Gruß JEGO

Ein PHP Script tut, was Du schreibst, nicht was Du willst.
JEGO ist offline  
Alt 14.10.2008, 13:16  
Neuer Benutzer
 
Registriert seit: 14.10.2008
Beiträge: 5
Kamazur befindet sich auf einem aufstrebenden Ast
Standard

Danke! Hab mein Problem gelöst.
Kamazur ist offline  
Alt 14.10.2008, 13:55  
Supermoderator HD
 
Benutzerbild von Manko10
 
Registriert seit: 16.03.2008
Beiträge: 8.709
PHP-Kenntnisse:
Fortgeschritten
Manko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende ZukunftManko10 hat eine strahlende Zukunft
Standard

Dann markiere den Thread bitte noch als [Erledigt].
__________________
Refining Linux Advent Calendar series “24 Outstanding ZSH Gems
Manko10 ist offline  
 


Themen-Optionen
Thema bewerten
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.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Bei richtiger Eingabe Daten an nächste Seite versenden xx_heidi_xx PHP Tipps 2008 49 27.05.2008 14:56
Eintrag in DB und Wechsel zu anderer Seite Darson PHP Tipps 2008 25 14.01.2008 16:46
Daten in neuer Seite ausgeben PHP Tipps 2006 5 20.02.2006 21:47
Welche seite (Adresse) rief die aktuelle seite auf? PHP Tipps 2005-2 7 05.07.2005 15:02
Seiten aktualisierung von einer anderen seite auslösen PHP Tipps 2005 4 09.05.2005 21:05
Seite in Seite PHP-Fortgeschrittene 3 15.03.2005 19:27
Warenkorb - neuer Session Datensatz! Broadcast PHP Tipps 2004 7 29.10.2004 18:05
Seite aufteilen me PHP Tipps 2004 5 31.08.2004 16:33
Datensatz abfragen und in Formularfeldern ausgeben Datenbanken 1 25.08.2004 09:24
Seite nicht mit content="3600" im Cache gespeicher scheibo PHP Tipps 2004 0 19.07.2004 14:49
Bild + URL auf neuer Seite anzeigen PHP Tipps 2004 8 18.07.2004 20:51
[Erledigt] PHP Eine neue PHP seite automatisch öffnen PHP Tipps 2004 1 19.06.2004 12:40
Gleiche Seite neuer Inhalt! Juuro PHP Tipps 2004 13 16.06.2004 19:34
[Erledigt] cookie bei erster aktualisierung auslesen... PHP Tipps 2004 3 09.06.2004 09:58
Datensatz löschen: [Erledigt] Bei Aktualisierung der meiner Seite wird immer neuer Datensatz eingetragen? PHP Tipps 2004 9 09.06.2004 01:44

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php datenbank beim aktualisieren immer neuer datensatz, th marke uhrwerk

Alle Zeitangaben in WEZ +2. Es ist jetzt 17:07 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum