Tankstellen-Homepage
Hi zusammen,
ich habe folgendes Problem:
Ich soll für einen Bekannten eine Homepage erstellen von seiner Tanke. Testserver: http://klemax.kl.ohost.de
Da ist ja rechts die Preisanzeige.
Und da die Preise nun mal häufig geändert werden, der Pächter keine Ahnung hat von FTP usw., habe ich mir gedacht mach ich eine Art "Admin Control Panel". Darin ist für jede Spritsorte eine Eingabemaske, er müsste sich da dann halt anmelden und könnte bequem per Browser seine Preise ändern.
Ich hab aber leider überhaupt keine Ahnung von MySQL oder sonstigen Datenbanken, daher wollte ich einen von euch bitten, der sich damit auskennt, mir das mal fertigzustellen. Zugang fürs ACP: Name: Test / PW:test
Also die Masken sind halt fertig, bräuchte jetzt ein Script, das die eingegebenen Zahlen in der DB speichert, diese werden ausgelesen und in Zahlen umgewandelt. z.B. ich gebe in der Maske für Ziffer 1 5 ein --> in der DB speichert er die Ziffer 1 als 5, in der Ausgabe-Datei ist das Bild der 5 zu sehen. Die jeweils "rauskommenden" Zahlen-Bilder müsste ich ja dann nur noch in meine preistafel.html einbinden, welche in der index.php includet ist. Wenn in der jeweiligen Eingabemaske auch noch der aktuelle Preis stehen würde, wäre das genial.
Ich weiß, etwas viel auf einmal
, aber ich hoffe ihr könnt mir helfen, denn ich sitze da schon ewig dran.
Mfg Xsmur

Weiß das denn keiner?
Vielleicht könnt ihr mir ja wenigstens sagen wie ich die Daten, die in das Formular eingegeben werden, in der DB speichern kann?
Vielen Dank im Voraus, ich kenn mich mit DBS nunmal halt garnicht aus.
ich habe folgendes Problem:
Ich soll für einen Bekannten eine Homepage erstellen von seiner Tanke. Testserver: http://klemax.kl.ohost.de
Da ist ja rechts die Preisanzeige.
Und da die Preise nun mal häufig geändert werden, der Pächter keine Ahnung hat von FTP usw., habe ich mir gedacht mach ich eine Art "Admin Control Panel". Darin ist für jede Spritsorte eine Eingabemaske, er müsste sich da dann halt anmelden und könnte bequem per Browser seine Preise ändern.
Ich hab aber leider überhaupt keine Ahnung von MySQL oder sonstigen Datenbanken, daher wollte ich einen von euch bitten, der sich damit auskennt, mir das mal fertigzustellen. Zugang fürs ACP: Name: Test / PW:test
Also die Masken sind halt fertig, bräuchte jetzt ein Script, das die eingegebenen Zahlen in der DB speichert, diese werden ausgelesen und in Zahlen umgewandelt. z.B. ich gebe in der Maske für Ziffer 1 5 ein --> in der DB speichert er die Ziffer 1 als 5, in der Ausgabe-Datei ist das Bild der 5 zu sehen. Die jeweils "rauskommenden" Zahlen-Bilder müsste ich ja dann nur noch in meine preistafel.html einbinden, welche in der index.php includet ist. Wenn in der jeweiligen Eingabemaske auch noch der aktuelle Preis stehen würde, wäre das genial.
Ich weiß, etwas viel auf einmal
, aber ich hoffe ihr könnt mir helfen, denn ich sitze da schon ewig dran.Mfg Xsmur

Weiß das denn keiner?
Vielleicht könnt ihr mir ja wenigstens sagen wie ich die Daten, die in das Formular eingegeben werden, in der DB speichern kann?
Vielen Dank im Voraus, ich kenn mich mit DBS nunmal halt garnicht aus.
Hallo Xsmur,
Dein Query würde dann in etwa so aussehen:
bzw. so:
Das ist der "Kern" von deinem Vorhaben, das Formular kriegst du bestimmt selber hin, wenn nicht fragst du hier einfach, dann wird dir geholfen
Ich hab dir mal was angehängt, du musst es aber noch etwas modifizieren, damit es am Ende so ist wie du es willst.
ak
Zitat
Vielleicht könnt ihr mir ja wenigstens sagen wie ich die Daten, die in das Formular eingegeben werden, in der DB speichern kann?
Dein Query würde dann in etwa so aussehen:
|
|
MySQL-Abfrage(n) |
1 |
INSERT INTO tabellenname (spritname, spritpreis) VALUES ('$der_sprit_name', '$der_sprit_preis') |
bzw. so:
|
|
MySQL-Abfrage(n) |
1 |
UPDATE tabellenname SET spritpreis = '$der_sprit_preis' WHERE spritname = 'spritname' |
Das ist der "Kern" von deinem Vorhaben, das Formular kriegst du bestimmt selber hin, wenn nicht fragst du hier einfach, dann wird dir geholfen

Ich hab dir mal was angehängt, du musst es aber noch etwas modifizieren, damit es am Ende so ist wie du es willst.
ak
Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von »andreaskeil« (31. Dezember 2008, 15:04)
Mach das nicht so kompliziert. Erstelle eine Loginmaske mit fest kodiertem Passwort, das kannst du in PHP dann abfragen.
Die Preise speicherst Du einfach in einer Textdatei, dafür brauchts keine Datenbank.
http://www.schattenbaum.net/php/datei.php erklärt Dir, wie das ganz einfach geht.
Du brauchst also nur ein HTML-Formular mit 4 Feldern für die Preise und einem Feld für das Passwort. Beim Absenden wird eine PHP aufgerufen, die das Passwort prüft und bei Erfolg die 4 Preise in eine Textdatei schreibt.
Marty
Die Preise speicherst Du einfach in einer Textdatei, dafür brauchts keine Datenbank.
http://www.schattenbaum.net/php/datei.php erklärt Dir, wie das ganz einfach geht.
Du brauchst also nur ein HTML-Formular mit 4 Feldern für die Preise und einem Feld für das Passwort. Beim Absenden wird eine PHP aufgerufen, die das Passwort prüft und bei Erfolg die 4 Preise in eine Textdatei schreibt.
Marty
Also ich habe jetzt erstmal die Methode von andreaskeil ausprobiert.
Da der Code in der connect.php (mit dem Tabelle erstellen) nicht geklappt hat, hab ich ihn mal etwas verändert, allerdings kommt etz immer ein Fehler:
Die Tabellen habe ich selbst angelegt.
Die index.php sieht folgendermaßen aus:
Allerdings kommt dann beim Absenden immer folgender Fehler:
Vielleicht kannst du mir ja da helfen.
@ MartyMcFly
Ich werde mir gleich anschauen wie das geht, kann man das dann überhaupt ausgeben lassen usw. und auch in der Eingabemaske die aktuellen Preise anzeigen lassen? Fragt sich auch, wie ich das dann mache, das mir das Script die eingegeben Zahlen in die Ziffern-Bilder umwandelt. Und wieso soll ich da nochmal eine Passwort-Abfrage machen, der ganze Bereich ist doch schon per .htaccess geschützt.
Mfg und Danke
Xsmur
Da der Code in der connect.php (mit dem Tabelle erstellen) nicht geklappt hat, hab ich ihn mal etwas verändert, allerdings kommt etz immer ein Fehler:
|
|
MySQL-Abfrage(n) |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
<?php /* Die unteren Angaben bitte anpassen: */ $dbserver = "localhost"; // DB-Server $dbuser = "klemax"; // DB-User $dbpw = "*******"; // DB-PW $db = "klemax"; // DB /* ab hier NICHTS mehr ändern */ mysql_connect($dbserver, $dbuser, $dbpw) or die // hier wird die Verbindung aufgebaut ("Keine Verbindung moeglich"); mysql_select_db($db) or die // hier wird die Datenbank ausgewählt ("Die Datenbank existiert nicht"); ?> |
Die Tabellen habe ich selbst angelegt.
Die index.php sieht folgendermaßen aus:
|
|
MySQL-Abfrage(n) |
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 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 |
<?php include('connect.php'); // Verbindung zur DB aufbauen ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Tankstelle Lutz in Kredenbach - AdminControlPanel</title> </head> <body> <?php if(!empty($_POST['send'])) { // wenn das Formular abgesendet wurde // die Eingaben werden in einem Array gespeichert und mit // mysql_real_escape_string() werden SQL Injections abgefangen $eingabe = array(); $eingabe['diesel'] = mysql_real_escape_string($_POST['diesel']); $eingabe['benzin'] = mysql_real_escape_string($_POST['benzin']); $eingabe['super'] = mysql_real_escape_string($_POST['super']); $eingabe['superPlus'] = mysql_real_escape_string($_POST['superPlus']); $eingabe['EinsZuFuenfzig'] = mysql_real_escape_string($_POST['EinsZuFuenfzig']); // Fehlerabfrage $fehler = array(); $fehler['diesel'] = false; $fehler['benzin'] = false; $fehler['super'] = false; $fehler['superPlus'] = false; $fehler['EinsZuFuenfzig'] = false; if(empty($eingabe['diesel'])) { $fehler['diesel'] = true; } if(empty($eingabe['benzin'])) { $fehler['benzin'] = true; } if(empty($eingabe['super'])) { $fehler['super'] = true; } if(empty($eingabe['superPlus'])) { $fehler['superPlus'] = true; } if(empty($eingabe['EinsZuFuenfzig'])) { $fehler['EinsZuFuenfzig'] = true; } if(($fehler['diesel'] == true) || ($fehler['benzin'] == true) || ($fehler['super'] == true) || ($fehler['superPlus'] == true) || ($fehler['EinsZuFuenfzig'] == true)) { // weil nicht alle Felder ausgefüllt sind: // Script beenden -> es erfolgt keine Speicherung die('Sie müssen <b>alle</b> Felder ausfüllen, <b>auch wenn sich ein Preis nicht geändert hat</b>'); } else { // Eintragen $sql = mysql_query("UPDATE spritpreise SET spritpreis = '".$eingabe['diesel']."' WHERE spritname = 'diesel'"); $sql = mysql_query("UPDATE spritpreise SET spritpreis = '".$eingabe['benzin']."' WHERE spritname = 'benzin'"); $sql = mysql_query("UPDATE spritpreise SET spritpreis = '".$eingabe['super']."' WHERE spritname = 'super'"); $sql = mysql_query("UPDATE spritpreise SET spritpreis = '".$eingabe['superPlus']."' WHERE spritname = 'superPlus'"); $sql = mysql_query("UPDATE spritpreise SET spritpreis = '".$eingabe['EinsZuFuenfzig']."' WHERE spritname = 'EinsZuFuenfzig'"); echo('Die Spritpreise wurden erfolgreich geändert. <a href="/acp/index.html">Hier</a> gelangen sie zurück zur Eingabemaske.'); die(mysql_error()); // SQL errors ausgeben und script beenden } } else { ?> <!-- das Formular zum Daten eingeben --> Bitte tragen Sie die aktuellen Spritpreise ein: <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post"> <table> <tr> <td> Diesel: </td> <td> <input type="text" name="diesel" /> </td> </tr> <tr> <td> Benzin: </td> <td> <input type="text" name="benzin" /> </td> </tr> <tr> <td> Super: </td> <td> <input type="text" name="super" /> </td> </tr> <tr> <td> Super Plus: </td> <td> <input type="text" name="superPlus" /> </td> </tr> <tr> <td> Gemisch 1:50: </td> <td> <input type="text" name="EinsZuFuenfzig" /> </td> </tr> <tr> <td> <input type="hidden" name="send" value="1" /> <input type="submit" value="Eintragen" /> </td> </tr> </table> </form> Aktuelle Spritpreise: <br /> <?php /* hier werden die zuletzt eingegebenen Preise ausgegeben: */ $sql = mysql_query("SELECT * FROM spritpreise"); while($row = mysql_fetch_assoc($sql)) { echo $row['spritname'].":".$row['spritpreis']." <br />"; } ?> <?php } ?> </body> </html> |
Allerdings kommt dann beim Absenden immer folgender Fehler:
Zitat
Unknown column 'spritname' in 'where clause'
Vielleicht kannst du mir ja da helfen.
@ MartyMcFly
Ich werde mir gleich anschauen wie das geht, kann man das dann überhaupt ausgeben lassen usw. und auch in der Eingabemaske die aktuellen Preise anzeigen lassen? Fragt sich auch, wie ich das dann mache, das mir das Script die eingegeben Zahlen in die Ziffern-Bilder umwandelt. Und wieso soll ich da nochmal eine Passwort-Abfrage machen, der ganze Bereich ist doch schon per .htaccess geschützt.
Mfg und Danke
Xsmur
Zitat
Allerdings kommt dann beim Absenden immer folgender Fehler:
Zitat
Unknown column 'spritname' in 'where clause'
Hast du in deiner Tabelle eine Spalte 'spritname'? Wenn nein (was wohl der Fall ist): erstelle eine Spalte spritname mit dem Datentyp Text (String).
Zitat
Da der Code in der connect.php (mit dem Tabelle erstellen) nicht geklappt hat, hab ich ihn mal etwas verändert, allerdings kommt etz immer ein Fehler:
In der connect.php werden auch keine Tabellen erstellt, das sind nur Kommentare, die Tabellen musst du selber erstellen

ak
Zitat
Hast du in deiner Tabelle eine Spalte 'spritname'? Wenn nein (was wohl der Fall ist): erstelle eine Spalte spritname mit dem Datentyp Text (String).
Habe ich gemacht.
Jetzt kommt auch kein Fehler mehr, allerdings übernimmt er die Daten leider nicht.
Zitat
In der connect.php werden auch keine Tabellen erstellt, das sind nur Kommentare, die Tabellen musst du selber erstellen
Achso, lol.

Ich bin echt langsam am Verzweifeln

Achja @MartyMcFly, mir ist die Methode mit der DB halt lieber.
Mfg, Xsmur
Ähnliche Themen
-
Umfragen »-
Wie reagierst du auf die steigenden Spritpreise?
(9. Juli 2008, 16:28)
-
Newbies »-
Homepagevorlagen
(27. November 2002, 15:27)
-
Domains »-
Was haltet Ihr von ...
(7. Mai 2004, 11:59)
-
PHP »-
datum speichern in mysql, beitrage (neuester oben)?
(16. Februar 2004, 22:14)
-
Plauder Forum »-
jüngstes Mitglied
(13. November 2003, 20:16)


