Hallo erstmal !
Mein Name ist Simon
und bin noch ein Anfänger mit "PHP, MySql".
Möchte gerne wissen ob dieser Quellcode in der Theorie passt.
Weitere Details unter "Meine Fragen".
Meine Frage
Spoiler anzeigen
Datum
Spoiler anzeigen
Datenbankverbidnung
*Kontrolle
Spoiler anzeigen
*IF-Statement
Spoiler anzeigen
*IF-Statement (kurz | empfohlen)
Spoiler anzeigen
Ganzer Code ohne Dokumentation
Spoiler anzeigen
Wenn etwas unverständlich versuche ich es zu erklären.
Tut mir leid wenn das schwer zu versthen ist.
Mein Name ist Simon
und bin noch ein Anfänger mit "PHP, MySql".
Möchte gerne wissen ob dieser Quellcode in der Theorie passt.
Weitere Details unter "Meine Fragen".
Meine Frage
PHP-Quellcode
- /*
- Das Ziel:
- Eine Datenbank die, die Werte: Scancode, Nummer, Anzahl und Datum beinhalten.
- Eine Datenbank so zu erstellen, dass ich immer eine Aktuelle Tabelle habe, aber auch sämtliche
- Tabelle in den letzten Monaten.
- ---------------------------------------------------------------------------------------------------------
- Meine Frage lautet:
- Ob dieser Quellcode in der Theorie passt.
- ----------------------------------------------------------------------------------------------------------
- Weitere Information:
- Das Problem mit dem Primary Key versuche ich schon irgendwie.
- Ich entschuldige mich, wenn ich eine Funktion falsch verstanden habe oder/und viele Rechtschreibfehler auf meine Dokumentation habe.
- --------------------------------------------------------------------------------------------------------------
- */
Datum
PHP-Quellcode
- // gibt den Wert des heutigen Datum!
- date_default_timezone_set('Europe/Berlin');
- // die ausgabe vom heutigen Datum -1 Monat
- echo "<p>heutiges Datum: " . date('Y-m', strtotime(date('Y-m')." -1 month"));
- // aktuelles Datum "2016.11"
- $date = date('Y-m');
- // -1 Monat Datum "2016.10"
- $ldate = date('Y-m-d', strtotime(date('Y-m')." -1 month"));
Datenbankverbidnung
*Kontrolle
PHP-Quellcode
- // prüft ob wir mit der Datebank verbunden sind
- $Test1 = mysql_ping() ? 'true' : 'false';
- // sucht & holt denn Wert "2016.11" wegen '{$date}'
- $query = "SELECT * FROM Patronenvorrat WHERE Datum = '{$date}'";
- // ist eine Deklaration
- $result = mysql_query($query);
- // kontrolliert ob der Wert in der Patronenvorrat verfügbar ist und gibt denn Wert für "NO" oder "YES"
- $Test2 = (mysql_num_rows($result) == 0) ? 'NO' : 'YES';
- $querys = "SELECT * FROM Patronenausgang WHERE Datum = '{$date}'";
- $results = mysql_query($querys);
- $Test3 = (mysql_num_rows($results) == 0) ? 'NO' : 'YES';
- $queryss = "SELECT * FROM Patroneneingang WHERE Datum = '{$date}'";
- $resultss = mysql_query($queryss);
- $Test4 = (mysql_num_rows($resultss) == 0) ? 'NO' : 'YES';
*IF-Statement
PHP-Quellcode
- // falls wir nicht mit der Datanbank verbunden sind. Schreibt er "KEINE VERBINDUNG!" und beendet die abfrage.
- if ($Test1 != "true") {
- echo "<h1><span style='color:#FF0000'> KEINE VERBINDUNG!</span></h1>";
- // Wenn die Tabelle nicht das aktuelen Datum hat ... soll die ganzen Werte vom letzten Monat kopiert und
- // eingefügt werden, mit dem neuen Datum und wiederholt die Abfrage!
- // Möchte eine Schleife haben wenn er es Aktualisirt soll er die If schleife weiter fortsetzen? Meine Frage lautet:
- // ob "continue;" da richtig steht
- }elseif ($Test2 != "YES") {
- "Insert INTO Patronenvorrat (Scancode, Nummer, Anzahl, Datum) SELECT Scancode, Nummer, Anzahl, '{$date}' FROM `Patronenvorrat` where Datum = '{$ldate}'";
- continue;
- }elseif ($Test3 != "YES") {
- "Insert INTO Patronenausgang (Scancode, Nummer, Anzahl, Datum) SELECT Scancode, Nummer, Anzahl, '{$date}' FROM `Patronenausgang` where Datum = '{$ldate}'";
- continue;
- }elseif ($Test4 != "YES") {
- "Insert INTO Patroneneingang (Scancode, Nummer, Anzahl, Datum) SELECT Scancode, Nummer, Anzahl, '{$date}' FROM `Patroneneingang` where Datum = '{$ldate}'";
- continue;
- }else {
- //Der voheriger Wert speichern
- $Nummer11 = "SELECT * FROM Patronenvorrat Nummer WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- $Anzahl11 = "SELECT * FROM Patronenvorrat Anzahl WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- $Nummer22 = "SELECT * FROM Patronenausgang Nummer WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- $Anzahl22 = "SELECT * FROM Patronenausgang Anzahl WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- $Nummer33 = "SELECT * FROM Patroneneingang Nummer WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- $Anzahl33 = "SELECT * FROM Patronenvorrat Anzahl WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- $Textfeld11 = $Nummer11 ;
- $Textfeld22 = $Nummer22 ;
- $Textfeld33 = $Nummer33 ;
- $Textfeld44 = $Anzahl11 ;
- $Textfeld55 = $Anzahl22 ;
- $Textfeld66 = $Anzahl33 ;
- // Wenn alle Abfragen mit Yes/True beantwortet worden sind,
- // soll das Produkt in die Tabelle reingeschrieben werden mit dem aktuellen Datum!
- "update Patronenvorrat Set anzahl = anzahl + '{$AnzahlText}' WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- "update Patronenausgang Set anzahl = anzahl + '{$AnzahlText}' WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- "update Patroneneingang Set anzahl = anzahl + '{$AnzahlText}' WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- // Gibt den aktuellen Stand von der geänderte Spalte mit der Bestätigung und setzt die Texte auf ""
- $Nummer1 = "SELECT * FROM Patronenvorrat Nummer WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- $Anzahl1 = "SELECT * FROM Patronenvorrat Anzahl WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- $Nummer2 = "SELECT * FROM Patronenausgang Nummer WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- $Anzahl2 = "SELECT * FROM Patronenausgang Anzahl WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- $Nummer3 = "SELECT * FROM Patroneneingang Nummer WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- $Anzahl3 = "SELECT * FROM Patronenvorrat Anzahl WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- $Bestätigung = "Die Werte wurden geschickt!";
- $Textfeld1 = $Nummer1 ;
- $Textfeld2 = $Nummer2 ;
- $Textfeld3 = $Nummer3 ;
- $Textfeld4 = $Anzahl1 ;
- $Textfeld5 = $Anzahl2 ;
- $Textfeld6 = $Anzahl3 ;
- $AnzahlText = "";
- $ScanText = "";
- }
*IF-Statement (kurz | empfohlen)
PHP-Quellcode
- // falls wir nicht mit der Datanbank verbunden sind. Schreibt er "KEINE VERBINDUNG!" und beendet die abfrage.
- if ($Test1 != "true") {
- echo "<h1><span style='color:#FF0000'> KEINE VERBINDUNG!</span></h1>";
- // Wenn die Tabelle nicht das aktuele Datum hat ...
- }elseif ($Test2 != "YES") {
- /* Ganze Werte vom letzten Monat kopieren und einfügen, mit dem neuen Datum.
- Möchte eine Schleife haben wenn er die Tabelle Aktualisiert,
- soll er die If schleife weiter fortsetzen.
- Meine Frage lautet: ob "continue;" da richtig steht. */
- "Insert INTO Patronenvorrat (Scancode, Nummer, Anzahl, Datum)
- SELECT Scancode, Nummer, Anzahl, '{$date}'
- FROM `Patronenvorrat` where Datum = '{$ldate}'";
- continue;
- // Wenn alle Abfragen mit Yes/True beantwortet worden sind soll das ausgeführt werden!
- }else {
- // Den voherigen Wert speichern
- $Nummer11 = "SELECT * FROM Patronenvorrat Nummer
- WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- $Anzahl11 = "SELECT * FROM Patronenvorrat Anzahl
- WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- // Ausgabe der voherigen Wert
- $Textfeld11 = $Nummer11 ;
- $Textfeld44 = $Anzahl11 ;
- // Die Information in die Tabelle reinscheiben.
- "update Patronenvorrat Set anzahl = anzahl + '{$AnzahlText}'
- WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- // Gibt den aktuellen Stand von der geänderte Spalte an.
- $Nummer1 = "SELECT * FROM Patronenvorrat Nummer
- WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- $Anzahl1 = "SELECT * FROM Patronenvorrat Anzahl
- WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- // Bestätigung
- $Bestätigung = "Die Werte wurden geschickt!";
- // Ausgabe der aktuellen Stand von der geänderte Spalte.
- $Textfeld1 = $Nummer1 ;
- $Textfeld4 = $Anzahl1 ;
- // setzt die Texte auf ""
- $AnzahlText = "";
- $ScanText = "";
- }
Ganzer Code ohne Dokumentation
PHP-Quellcode
- date_default_timezone_set('Europe/Berlin');
- echo "<p>heutiges Datum: " . date('Y-m', strtotime(date('Y-m')." -1 month"));
- $date = date('Y-m');
- $ldate = date('Y-m-d', strtotime(date('Y-m')." -1 month"));
- $Database = "Patronen";
- mysql_connect("server", "username", "password") or die(mysql_error());
- mysql_select_db($Database) or die(mysql_error());
- $Test1 = mysql_ping() ? 'true' : 'false';
- $query = "SELECT * FROM Patronenvorrat WHERE Datum = '{$date}'";
- $result = mysql_query($query);
- $Test2 = (mysql_num_rows($result) == 0) ? 'NO' : 'YES';
- $querys = "SELECT * FROM Patronenausgang WHERE Datum = '{$date}'";
- $results = mysql_query($querys);
- $Test3 = (mysql_num_rows($results) == 0) ? 'NO' : 'YES';
- $queryss = "SELECT * FROM Patroneneingang WHERE Datum = '{$date}'";
- $resultss = mysql_query($queryss);
- $Test4 = (mysql_num_rows($resultss) == 0) ? 'NO' : 'YES';
- if ($Test1 != "true") {
- echo "<h1><span style='color:#FF0000'> KEINE VERBINDUNG!</span></h1>";
- }elseif ($Test2 != "YES") {
- "Insert INTO Patronenvorrat (Scancode, Nummer, Anzahl, Datum) SELECT Scancode, Nummer, Anzahl, '{$date}' FROM `Patronenvorrat` where Datum = '{$ldate}'";
- continue;
- }elseif ($Test3 != "YES") {
- "Insert INTO Patronenausgang (Scancode, Nummer, Anzahl, Datum) SELECT Scancode, Nummer, Anzahl, '{$date}' FROM `Patronenausgang` where Datum = '{$ldate}'";
- continue;
- }elseif ($Test4 != "YES") {
- "Insert INTO Patroneneingang (Scancode, Nummer, Anzahl, Datum) SELECT Scancode, Nummer, Anzahl, '{$date}' FROM `Patroneneingang` where Datum = '{$ldate}'";
- continue;
- }else {
- $Nummer11 = "SELECT * FROM Patronenvorrat Nummer WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- $Anzahl11 = "SELECT * FROM Patronenvorrat Anzahl WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- $Nummer22 = "SELECT * FROM Patronenausgang Nummer WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- $Anzahl22 = "SELECT * FROM Patronenausgang Anzahl WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- $Nummer33 = "SELECT * FROM Patroneneingang Nummer WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- $Anzahl33 = "SELECT * FROM Patronenvorrat Anzahl WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- $Textfeld11 = $Nummer11 ;
- $Textfeld22 = $Nummer22 ;
- $Textfeld33 = $Nummer33 ;
- $Textfeld44 = $Anzahl11 ;
- $Textfeld55 = $Anzahl22 ;
- $Textfeld66 = $Anzahl33 ;
- "update Patronenvorrat Set anzahl = anzahl + '{$AnzahlText}' WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- "update Patronenausgang Set anzahl = anzahl + '{$AnzahlText}' WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- "update Patroneneingang Set anzahl = anzahl + '{$AnzahlText}' WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- $Nummer1 = "SELECT * FROM Patronenvorrat Nummer WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- $Anzahl1 = "SELECT * FROM Patronenvorrat Anzahl WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- $Nummer2 = "SELECT * FROM Patronenausgang Nummer WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- $Anzahl2 = "SELECT * FROM Patronenausgang Anzahl WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- $Nummer3 = "SELECT * FROM Patroneneingang Nummer WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- $Anzahl3 = "SELECT * FROM Patronenvorrat Anzahl WHERE Datum = '{$date}' AND WHERE Scancode = '{$ScanText}'";
- $Bestätigung = "Die Werte wurden geschickt!";
- $Textfeld1 = $Nummer1 ;
- $Textfeld2 = $Nummer2 ;
- $Textfeld3 = $Nummer3 ;
- $Textfeld4 = $Anzahl1 ;
- $Textfeld5 = $Anzahl2 ;
- $Textfeld6 = $Anzahl3 ;
- $AnzahlText = "";
- $ScanText = "";
- }
Wenn etwas unverständlich versuche ich es zu erklären.
Tut mir leid wenn das schwer zu versthen ist.