Du bist nicht angemeldet.

  • Anmelden
  • Registrieren

NoX

Anfänger

Beiträge: 18

1

12.08.2005, 17:35

[PHP] mySQL ein/ausgeben

Wir brauchen dazu:

einen simplen Texteditor oder noch besser einen komfortablen php-Editor wie z.B. Weaverslave ( http://www.weaverslave.de )

Webspace mit PHP und MySQL-Datenbank

1. Tabelle in MySQL-Datenbank erstellen

Der Code zum erstellen der Tabelle in der MySQL-Datenbank:

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
<html>
<head>
<title>Tabellen erzeugen</title>
</head>
<body>

<?php

$host "localhost";
$user "user";
$password "pw";
$dbname "data1";
$tabelle ="testdb";

$dbverbindung mysql_connect ($host$user$password);

$dbanfrage "CREATE table $tabelle (id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY, header TEXT, artikel TEXT)";

if (mysql_db_query ($dbname$dbanfrage$dbverbindung)) {
print ("Tabellenerzeugung erfolgreich.");
} else {
print ("Konnte Tabelle nicht erstellen.");
}
mysql_close ($dbverbindung);
?>

</body>
</html>


Wir speichern diesen Code in der Datei "db_erstellen.php".

>>Erklärung zu Punkt 1

Zuerst legen wir die Variablen für den Datenbankzugriff fest:

Quellcode

1
2
3
4
5
$host = "localhost";
$user = "user";
$password = "pw";
$dbname = "data1";
$tabelle ="testdb";


Mit diesen Angaben können wir uns mit der MySQL-Datenbank verbinden:

Quellcode

1
$dbverbindung = mysql_connect ($host, $user, $password);


Hiermit erstellen wir eine Tabelle mit dem Namen "tabelle" und drei Spalten "id", "header", "artikel". Während "header" und "artikel" aus Text bestehen, steht "id" für eine vorzeichenlose Zahl (INT UNSIGNED). NOT NULL legt fest, dass jede Zeile einen Wert haben muss. Damit diese Wert automatisch um eins - pro weiteren Eintrag - ansteigen, legen wir dies mit AUTO INCREMENT fest.

Quellcode

1
$dbanfrage = "CREATE table $tabelle (id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY, header TEXT, artikel TEXT)";


Mit folgender einfachen IF-Anweisung lassen wir uns bestätigen, ob die Tabelle erstellt werden konnte, oder nicht:

Quellcode

1
2
3
4
5
if (mysql_db_query ($dbname, $dbanfrage, $dbverbindung)) {
print ("Tabellenerzeugung erfolgreich.");
} else {
print ("Konnte Tabelle nicht erstellen.");
}


Jetzt schließen wir die noch offene MySQL-Verbindung mit folgendem Code

Quellcode

1
mysql_close ($dbverbindung);


2. Webinterface für Dateneingabe

PHP-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<html>
<head>
<title>Dateneingabe</title>
</head>
<body>
<form action="work.php" method=post>
Überschrift <br>
<input type=text name="Array[header]" size50>
<br>
<br>
Artikel<textarea name="Array[artikel]" row=5 cols=40></textarea>
<br>
<br>
<input type=submit name="SUBMIT" value="ok">
</form>
</body>
</html>


Diesen Code speichern wir in der Datei "db_eingabe.html".

>>Erklärung zu Punkt 2

Dieses einfache HTML-Formular nimmt die Eingaben für die Überschrift (header) und Artikel (artikel) entgegen und sendet sie an die Datei "work.php", die die Eingaben weiterverarbeitet.


3. Script zur Verarbeitung der eingegebenen Daten

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
<html>
<head>
<title>Daten verarbeiten</title>
</head>
<body>

<?php

$host "localhost";
$user "user";
$password "pw";
$dbname "data1";
$tabelle ="testdb";

$dbverbindung mysql_connect ($host$user$password);

$dbanfrage "INSERT into $tabelle values ('0', '$Array[header]', '$Array[artikel]')";

if (mysql_db_query ($dbname$dbanfrage$dbverbindung)) {
print ("Datenbankeintrag erfolgreich.");
} else {
print ("Es traten Probleme auf.");
}
mysql_close ($dbverbindung);

?>

</body>
</html>


Diesen Coden speichern wir in der Datei "work.php".

>>Erklärung zu Punkt 3

Wieder legen wir die Variablen für den Datenbankzugriff fest:

Quellcode

1
2
3
4
5
$host = "localhost";
$user = "user";
$password = "pw";
$dbname = "data1";
$tabelle ="testdb";


Wir verbinden uns wieder mit der MySQL-Datenbank:

Quellcode

1
$dbverbindung = mysql_connect ($host, $user, $password);


Hiermit fügen wir die aus der Datei "db_eingabe.html" aufgenommenen Eingaben in unsere MySQL-Tabelle ein. Wir haben bereits die id-Spalte auf AUTO-INCREMENT gesetzt und so nehmen wir als Wert einfach 0.

Quellcode

1
$dbanfrage = "INSERT into $tabelle values ('0', '$Array[header]', '$Array[artikel]')";


Und wieder lassen wir uns mit einer einfachen IF-Anweisung bestätigen, ob die Daten in die Tabelle eingeschrieben werden konnten:

Quellcode

1
2
3
4
5
if (mysql_db_query ($dbname, $dbanfrage, $dbverbindung)) {
print ("Datenbankeintrag erfolgreich.");
} else {
print ("Es traten Probleme auf.");
}


4. Script zur Datenausgabe

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
<html>
<head>
<title>Inhalte ausgeben</title>
</head>
<body>

<?php

$host "localhost";
$user "user";
$password "pw";
$dbname "data1";
$tabelle ="testdb";

$dbverbindung mysql_connect ($host$user$password);

$dbanfrage "SELECT * from $tabelle";
$result mysql_db_query ($dbname$dbanfrage$dbverbindung);

 while ($ausgabe mysql_fetch_array ($result))
 {
 print ("$ausgabe[header]<br><br>$ausgabe[artikel]<br><hr><br>");
 }

mysql_close ($dbverbindung)


?>

</body>
</html>


Diesen Code speichern wir in der Datei "db_ausgabe.php".

>>Erklärung zu Punkt 4

Wir legen wieder die Variablen für den Datenbankzugriff fest:

Quellcode

1
2
3
4
5
$host = "localhost";
$user = "user";
$password = "pw";
$dbname = "data1";
$tabelle ="testdb";


Wir verbinden uns erneut mit der MySQL-Datenbank:

Quellcode

1
$dbverbindung = mysql_connect ($host, $user, $password);


Hiermit legen wir fest, von welcher Tabelle wir die Daten nehmen.

Quellcode

1
$dbanfrage = "SELECT * from $tabelle";


Dann wird das Ergebnis der Anfrage in einer Variablen gespeichert:

Quellcode

1
$result = mysql_db_query ($dbname, $dbanfrage, $dbverbindung);


Diese nette Schleife liest zeilenweise die Tabelle aus, bis sie am Ende angelangt ist. Wir benutzen den Befehl "mysql_fetch_array":

Quellcode

1
2
3
4
while ($ausgabe = mysql_fetch_array ($result))
 {
 print ("$ausgabe[header]<br><br>$ausgabe[artikel]<br><hr><br>");
 }


Nun uploaden wir die Dateien "db_erstellen.php", "db_eingabe.html", "work.php" und "db_ausgabe.php".

Wir führen die Datei "db_erstellen.php" und erstellen damit die Tabelle in der MySQL-Datenbank. Über die Datei "db_eingabe.html" können wir nun Daten eingeben und uns über "db_ausgabe" die bisherigen Eingaben ansehen.


Tutorial by Webstone.info - User: ferryX

Thema bewerten