Tasteless_Candy
Hallo zusammen. Gab es nicht einmal ein TUT wie man mit PHP einen Pferdesteckbrief oder Membersteckbrief erstellen kann?
Ich müsste wissen, wie ich via PHP & MySQL ein Bild in die Datenbank laden und wieder auslesen kann.
Also zum Beispiel ein Bild vom Pferd uploaden und dann im Steckbrief einfügen/ausgeben.
Danke und liebe Grüsse
Nanni
Wie man ein Bild in den Steckbrief abloadet, steht dort allerdings auch nicht ;D
Ich geb dir jetzt nur mal meine Codeschnipsel ohne viel Erklärung..
Im Formular, in dem du die Daten ausfüllst, hat bei mir diesen Typ (kA ob notwendig..):
code: |
1:
|
<form method=post enctype="multipart/form-data"> |
|
Der Teil für eine Tabellenspalte mit Formularfeld zum Dateiauswählen:
code: |
1:
|
<tr><td>Bild 1</td><td><input type=file name=datei1></td></tr> |
|
Auf der 2. Seite, wo du die Daten in die Datenbanktabelle einträgst:
php: |
1:
2:
3:
4:
5:
|
$dateityp = GetImageSize($_FILES['datei1']['tmp_name']);
if($dateityp[2] != 0) {
move_uploaded_file($_FILES['datei1']['tmp_name'], "Bilder/$name.jpg");
echo "Das Bild wurde erfolgreich nach Bilder/$name.jpg hochgeladen.<br>"; } else {
echo "Bild 1: - kein Bild -<br>"; } |
|
Anpassen musst du immer das
datei1, das entspricht dem Wort, das du im Formularfeld bei "name" angegeben hast. Zudem musst du evt. den Pfad sowie den Namen umändern - bei mir wird in das Verzeichnis Bilder, mit dem Dateinamen $name (des Pferdes) gespeichert. Bei mehreren Bildern, diesen Codeteil für jedes Formularfeld wiederholen, allerdings verschiedene Namen (z.B. $name-2) zuordnen ;D Wenn du kein Bild hochlädst, bekommst du eine Fehlermeldung, die wirkt sich allerdings nicht auf den Rest aus... mir war die immer relativ egal, solltest du Mitglieder etwas hochladen wollen z.B. sag einfach Bescheid dann schau ich mal, wie sich die umgehen lässt xD
(Sollte ich das falsch verstehen und du das per pHPmyAdmin machen, musst du die Bilder meines Wissens nach via FTP auf die Homepage laden.)
Abfragen im Pferdesteckbrief sieht dann so aus:
php: |
1:
2:
3:
4:
5:
|
$bild = rawurlencode($Data[Name]);
$datei = "Bilder/$Data[Name].jpg";
if(file_exists($datei)) {
echo "<IMG src="Bilder/$bild.jpg"><br>"; } else {
echo "Kein Bild."; } |
|
Für mehrere Bilder, hinter die Variable des Namens wieder ein -2 o.ä. anhängen, eben den Namen unter dem du sie hochgeladen hast. Ich hoff da sind jetzt keine Fehler drin ;D
Tasteless_Candy
hm es kommt immer:
Bild1 kein Bild eingetragen
php: |
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:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
|
<?php
//Session starten
session_start();
//Datenbank und Userprüfung einbinden
include ("datenbank.php");
//Variablen aus Formular übergeben
$name = $_POST["name"];
$rasse = $_POST["rasse"];
$geschlecht = $_POST["geschlecht"];
$besitzer = $_POST["besitzer"];
$pfleger = $_POST["pfleger"];
$charakter = $_POST["charakter"];
$bild1 = $_POST["bild1"];
//Fehlertexte & Erfolgtext speichern
$fehler = "<h1>Fehler!</h1>";
$fehler1 = "Bitte fülle alle Felder vollständig aus!<br><b> <a href="javascript:history.back()"Zurück</a></b>";
$fehler2 = "Dieser Name existiert bereits!<br><b><a href="javascript:history.back()"Zurück</a></b>";
$fehler3 = "Problem beim eintragen in die Datenbank <br><b><a href="javascript:history.back()"Zurück</a></b>";
$erfolg = "<h1>Registrierung erfolgreich</h1>";
//weitere Texte speichern
$internetlink = "<a href='http://voeny.vo.funpic.de/turnierpferde.php' >Zur Übersicht</a>";
$registrationmeldung = " , wurde erfolgreich erstellt. <br><meta http-equiv='refresh' target=_parent content='1; URL=http://voeny.vo.funpic.de/turnierpferde.php'>";
$dateityp = GetImageSize($_FILES['bild1']['tmp_name']);
//Wenn Formular gesendet wurde
if ($_POST["sent"])
{
if($dateityp[2] != 0)
{
move_uploaded_file($_FILES['bild1']['tmp_name'], "Bilder/$name.jpg");
echo "Das Bild wurde erfolgreich nach Bilder/$name.jpg hochgeladen.<br>";
}
else
{
echo "Bild 1: - kein Bild -<br>";
}
//Wenn Name&Geschlecht&Rasse&Besitzer&Pfleger&Charakter belegt sind
if ((!empty($name)) && (!empty($geschlecht)) && (!empty($rasse)) && (!empty($besitzer)) && (!empty($pfleger)) && (!empty($charakter)))
{
//ID vom Pferd mit Namen $name abrufen
$query = mysql_query("SELECT id FROM pferd WHERE name='$name'");
//Wenn das Pferd von der obigen Abfrage nicht existiert
if(@mysql_num_rows($query) ==0)
{
//Dann das Pferd eintragen
$query = mysql_query ("INSERT INTO pferd (name, geschlecht, rasse, besitzer, pfleger, charakter) values ('$name', '$geschlecht', '$rasse', '$besitzer', '$pfleger', '$charakter')");
//Wenn der Eintrag erfolgreich ist
if ($query)
{
//Sessionvariable belegen
$_SESSION["name"] = stripslashes($name);
//ERFOLG: Ausgabe machen
echo $erfolg.$_SESSION["name"].$registrationmeldung;
}
//Wenn der Eintrag nicht erfolgreich ist
else
{
//Fehler 3 ausgeben
echo $fehler.$fehler3;
}
}
//Wenn das Pferd vor der Abfrage existiert
else
{
//Fehler 2 ausgeben
echo $fehler.$fehler2;
}
}
//Wenn eine der Variablen aus dem Formular unbelegt ist
else
{
echo $fehler.$fehler1;
}
}
//Wenn das Formular nicht abgesendet wurde
else
{
?>
<h1 align="left"> Pferde Registrierung </h1>
<form name = "anmeldung" action = "" method = "post">
<div align="left">Name:
<input type = "text" name = "name" >
<br>
Geschlecht:
<input type = "text" name = "geschlecht" >
<br>
Rasse:
<input type = "text" name = "rasse" >
<br>
Besitzer:
<input type = "text" name = "besitzer" >
<br>
Pfleger:
<input type = "text" name = "pfleger" >
<br>
Charakter:
<input type = "text" name = "charakter" >
<br>
Bild1:
<input type = "file" name= "bild1" >
<br>
<input type = "hidden" name = "sent" value = "sent">
<input type = "submit" name ="Eintragen" />
</div>
</form>
<div align="left">
<?php
}
?>
</div>
|
|
Nanni
Zitat: |
Original von Nanni
Im Formular, in dem du die Daten ausfüllst, hat bei mir diesen Typ (kA ob notwendig..):
code: |
1:
|
<form method=post enctype="multipart/form-data"> |
|
|
Dann ist das vermutlich notwendig ;D. Pass Zeile 94 bei dir einmal so an, dass du dort enctype="multipart/form-data" drin stehen hast, dann sollte es gehen.
Tasteless_Candy
Zitat: |
Original von Nanni
Zitat: |
Original von Nanni
Im Formular, in dem du die Daten ausfüllst, hat bei mir diesen Typ (kA ob notwendig..):
code: |
1:
|
<form method=post enctype="multipart/form-data"> |
|
|
Dann ist das vermutlich notwendig ;D. Pass Zeile 94 bei dir einmal so an, dass du dort enctype="multipart/form-data" drin stehen hast, dann sollte es gehen. |
<3 danke schöööööööööööön