Sie sind nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: WebmasterNet. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

PascalError

Anfänger

  • »PascalError« ist der Autor dieses Themas

Beiträge: 26

Wohnort: Bochum

Beruf: Schüler

Danksagungen: 6

  • Nachricht senden

1

Montag, 1. Februar 2010, 00:11

Daten aus Formular in eine Mysql DB Eintragen

Hey,
Bin auch mal Aktiv hier und Poste direkt zu anfang mal einen Codeschnipsel ;) Wie man Daten aus einem Formular in eine Mysql Datenbank Einträgt, und gleichzeitig ein wenig vor injections Geschütztist.

Zuerst legen wir mal eine Datenbak an, könnt ihr nennen wie ihr wollt, bei mir heisst sie tutorials, und fügen Folgenden sql code ein:

MySQL-Abfrage(n)

1
2
3
4
5
6
7
8
CREATE TABLE IF NOT EXISTS `texte` (
  `id` int(255) NOT NULL AUTO_INCREMENT,
  `titel` varchar(100) NOT NULL,
  `ip` varchar(12) NOT NULL,
  `timestamp` int(255) NOT NULL,
  `text` text NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=7 ;


Falls dies Geschafft ist, erstellen wir eine datei, names index.php und füge follgenden Code ein und Testen!

PHP-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?php 
    $mysqlhost 'localhost'// Datenbank Host meist Localhost
    $user 'root'// Datenbank Username (Bei Xammp, root)
    $passwort ''// Datenbank Passwort (Bei Xammp, keines)
    $datenbank 'tutorials'// Datenbankname

    $connid = @mysql_connect($mysqlhost$user$passwort) OR die("Error: ".mysql_error());
    mysql_select_db($datenbank) OR die("Error: ".mysql_error());
   
     if(isset($_POST['submit']) AND $_POST['submit'] == 'Eintragen') { // Wenn man den Eintrage Button Geklickt hat
       if(!empty($_POST['text']) && !empty($_POST['titel']) ) { // Checkt ob die Felder Titel und Text Ausgefüllt sind      
        mysql_query("INSERT INTO texte (titel, 
                                             ip, 
                                             timestamp, 
                                             text) VALUES 
                                            
                                             ('".mysql_real_escape_string($_REQUEST["titel"])."', 
                                              '".getenv("REMOTE_ADDR")."', 
                                              '".time()."',
                                              '".mysql_real_escape_string($_REQUEST["text"])."')"); 
                                                // mysql_real_escape_string, um die DB vor Injections zu Schützen
        echo "Vielen Dank! Ihr Text wurde Erfolgreich in die Datenbank eingetragen!"// Wenn alles Erfolgreich!
                                                
     } else { // Wenn Feld Titel nicht Ausgefüllt, dann Fehlermeldung
        echo "Bitte <span style='color: red; font-weight: bold;'>ALLE</span>Felder ausfüllen!"; }  
     }   
          
?>
<form action="index.php" method="POST"> <!-- // Bitte Pfad Anpassen, falls der Name der Datei Geändert wird ;) //-->
  Titel:<br> 
  <input type="text" name="titel" size="20" />
  <br>
  <br>
  Text:<br>
  <textarea name="text" cols="50" rows="10"></textarea>
  <br>
  <br>
  <input type="submit" name="submit" value="Eintragen" /> <input type="reset" value="Zurücksetzen">   
</form>


mysql_real_escape_string schützt die Datenbank vor Injections

Ich hoffe der Code ist gut genug Auskommentiert, und dieser Schnipsel dient rein als Demo, wie es aussehen könnte wenn man so ein Formular machen möchte!

Mein nächstes Tutorial oder viel mehr Codeschnipsel -> Ausgeben einer Mysql Tabelle

Lg Pascal :)

x Tutorial -> 1. Daten aus Formular in eine Mysql DB Eintragen
x Tutorial -> 2. Daten aus einer mysql Datenbank Ausgeben ...

PHP-Quelltext

1
SELECT korn__cola FROM tablett WHERE anzahl__pro__kopf random__zahl anzahl__kumpels LIMIT 28
:D :D

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »PascalError« (2. Februar 2010, 14:19)


Es haben sich bereits 2 registrierte Benutzer bedankt.

Benutzer die sich bedankten:

Monday (01.02.2010), Servado (01.02.2010)

Ähnliche Themen

Verwendete Tags

datenbank, db, eintragen, mysql, PHP, tutorial

Thema bewerten