|
|
|
|
lol
Perl sogar Platz 80!
|
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von TriggerTG am 10.02.2010 12:33]
|
|
|
|
|
|
Hi,
Ich beschäftige mich erst seit ein paar Tagen mit dem Thema Programmierung, also ich kann quasi gar nichts
Ich bin gerade dabei mit PHP/HTML/MYSQL einen Mensaplan zu programmieren, der über eine Datenbank gefüttert wird.
Ich bin jetzt soweit, dass die Daten vernünftig in eine HTML Tabelle übertragen werden. Wahrscheinlich mache ich allerdings vieles noch viel zu umständlich ...
Für jede Kalenderwoche habe ich eine Tabelle in der Datenbank angelegt (woche1-woche52).
Wie schaffe ich es jetzt, dass immer der Plan der aktuellen Woche angezeigt wird?
Und kann man irgendwie automatisch die ganzen Daten der einzelnen Wochen anzeigen lassen? Also dass Woche 1 z.B. vom 01.01.2010 bis zum 06.01.2010 geht usw.
Ich hoffe ihr versteht wie ich das meine
Ich könnte natürlich jetzt 52 if Anweisungen schreiben zu jeder Kalenderwoche, aber das ist sicherlich nicht der richtige Weg
|
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von Slutti am 10.02.2010 12:57]
|
|
|
|
|
|
Nimm nur eine Tabelle und mach da ein Feld "woche" rein. Ist weniger Aufwand zum Verwalten und die Performance ist nicht (merklich) schlechter.
Die aktuelle Woche kriegst du mit date("W"), und jetzt muss ich aber leider selber was arbeiten anstatt dir weiter zu erklären, sorry
|
|
|
|
|
|
|
Ehm..
Wenn ich das nur in einer Tabelle mache, wie rufe ich denn dann die einzelnen Wochen auf?
Ich will ja nicht, dass die Woche immer wieder überschrieben wird. :x
Beispiel: Mein Montag/Mittagsessen Feld heißt "momi".
Wenn ich jetzt alles in eine Tabelle schreibe, habe ich ja quasi 52 Einträge zu jedem Feld.
Wie gebe ich die denn dann einzeln aus?
|
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von Slutti am 10.02.2010 13:03]
|
|
|
|
|
|
| Zitat von Teufel
| Zitat von GH@NDI
Da muss ich mich geschlagen geben. Allein zum handeln der GET-Parameter brauch ich mindestens:
|
Code: |
use CGI;%i=CGI->Vars;$i{PARAM};
|
|
Da ist ein extract($_GET) schon weniger Zeichenaufwendig, obendrein sind die Zugriffe auf die Parameter dann auch kürzer. Allerdings gibt es gute Gründe, warum in Perl sowas nicht (so einfach) geht. | |
Wieviele Bytes brauchste?
| |
|
Code: |
use CGI':all',':cgi-lib';use Tie::File;tie@f,'Tie::File','c';%i=Vars;print header,@f;print hr,start_form,textarea('d'),hidden('p',1),submit,end_form if$i{p}==1;push@f,hr.localtime.br.$i{d}if$i{p}==1&&$i{d}
|
|
206
|
|
|
|
|
|
|
| Zitat von Slutti Hi,
Ich beschäftige mich erst seit ein paar Tagen mit dem Thema Programmierung, also ich kann quasi gar nichts
Ich bin gerade dabei mit PHP/HTML/MYSQL einen Mensaplan zu programmieren, der über eine Datenbank gefüttert wird.
Ich bin jetzt soweit, dass die Daten vernünftig in eine HTML Tabelle übertragen werden. Wahrscheinlich mache ich allerdings vieles noch viel zu umständlich ...
Für jede Kalenderwoche habe ich eine Tabelle in der Datenbank angelegt (woche1-woche52).
Wie schaffe ich es jetzt, dass immer der Plan der aktuellen Woche angezeigt wird?
Und kann man irgendwie automatisch die ganzen Daten der einzelnen Wochen anzeigen lassen? Also dass Woche 1 z.B. vom 01.01.2010 bis zum 06.01.2010 geht usw.
Ich hoffe ihr versteht wie ich das meine
Ich könnte natürlich jetzt 52 if Anweisungen schreiben zu jeder Kalenderwoche, aber das ist sicherlich nicht der richtige Weg | |
Wenn das aus einer Datenbank kommt, dann wirste ja ein Feld "Datum" haben.
Dann machste deine Abfrage so ungefähr:
SELECT * FROM `plan` WHERE WEEK(`datum`) = WEEK(NOW())
Dann kriegste nur die Sachen raus die in der aktuellen Woche sind.
|
|
|
|
|
|
|
Tabelle Speiseplan
Felder
Woche Vorspeise Hauptspeise Dessert
Bsp:
1 Hühnersuppe Kartoffelgratin Obstsalat
2 Graupensuppe Kotelett Wackelpudding
|
|
|
|
|
|
|
SELECT * FROM mensaplan WHERE woche='42' zum Beispiel
Analog dazu UPDATE mensaplan SET name='Grünkohl',preis='3.40' WHERE woche='42' AND gericht='2' oder wie auch immer du deine Tabelle aufgebaut hast
|
|
|
|
|
|
|
muss ich eben erstmal drüber nachdenken
|
|
|
|
|
|
|
| Zitat von damisau
Tabelle Speiseplan
Felder
Woche Vorspeise Hauptspeise Dessert
Bsp:
1 Hühnersuppe Kartoffelgratin Obstsalat
2 Graupensuppe Kotelett Wackelpudding
| |
Naja, ich würde das nicht so machen. Wenn ein Gericht dazukommt, muss man ja die ganze Datenbank ändern.
|
|
|
|
|
|
|
Ne das wäre kacko.
Die Gerichte ändern sich jede Woche. Das muss immer neu eingegeben werden für die nächste Woche
//Wie viel Spaß das macht Großartig
|
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von Slutti am 10.02.2010 13:06]
|
|
|
|
|
|
| Zitat von Morgil
| Zitat von damisau
Tabelle Speiseplan
Felder
Woche Vorspeise Hauptspeise Dessert
Bsp:
1 Hühnersuppe Kartoffelgratin Obstsalat
2 Graupensuppe Kotelett Wackelpudding
| |
Naja, ich würde das nicht so machen. Wenn ein Gericht dazukommt, muss man ja die ganze Datenbank ändern.
| |
ach das passiert nicht, man muss nur den Modulo raus bekommen
|
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von Flash_ am 10.02.2010 13:07]
|
|
|
|
|
|
| Zitat von Morgil
SELECT * FROM mensaplan WHERE woche='42' zum Beispiel
Analog dazu UPDATE mensaplan SET name='Grünkohl',preis='3.40' WHERE woche='42' AND gericht='2' oder wie auch immer du deine Tabelle aufgebaut hast
| |
ARG! Das mit dem Where ist ja Porno. Genau sowas hab ich gesucht, danke
Und ich Depp erstell erstmal 52 Tabellen
Ich danke euch
|
[Dieser Beitrag wurde 2 mal editiert; zum letzten Mal von Slutti am 10.02.2010 13:09]
|
|
|
|
|
|
| Zitat von Flash_
| Zitat von Morgil
| Zitat von damisau
Tabelle Speiseplan
Felder
Woche Vorspeise Hauptspeise Dessert
Bsp:
1 Hühnersuppe Kartoffelgratin Obstsalat
2 Graupensuppe Kotelett Wackelpudding
| |
Naja, ich würde das nicht so machen. Wenn ein Gericht dazukommt, muss man ja die ganze Datenbank ändern.
| |
ach das passiert nicht, man muss nur den Modulo raus bekommen
| |
Und was ist, wenn die Vegetarier kommen und Tofu wollen? Oder die Emanzen sich beschweren, dass, sie nur Jäger_in-Schnitzel essen?
|
|
|
|
|
|
|
Achso eins noch.
Ich habs eben so gemacht, dass ich die Daten der Wochen per Hand in die Datenbank geschrieben habe.
Beim Jahreswechsel müsste man das dann wieder machen, was ja ziemlich doof ist
Darauf noch eine Antwort, dann bin ich glücklich
Ich glaub ich hab schon selbst ne Idee, mal testen
|
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von Slutti am 10.02.2010 13:14]
|
|
|
|
|
|
| Zitat von Slutti
Achso eins noch.
Ich habs eben so gemacht, dass ich die Daten der Wochen per Hand in die Datenbank geschrieben habe.
Beim Jahreswechsel müsste man das dann wieder machen, was ja ziemlich doof ist
Darauf noch eine Antwort, dann bin ich glücklich
Ich glaub ich hab schon selbst ne Idee, mal testen
| |
schreib dir ein Formular, das automatisch per 'Insert' die Daten in die Datenbank schreibt.
|
|
|
|
|
|
|
| Zitat von Renga
| Zitat von Slutti
Achso eins noch.
Ich habs eben so gemacht, dass ich die Daten der Wochen per Hand in die Datenbank geschrieben habe.
Beim Jahreswechsel müsste man das dann wieder machen, was ja ziemlich doof ist
Darauf noch eine Antwort, dann bin ich glücklich
Ich glaub ich hab schon selbst ne Idee, mal testen
| |
schreib dir ein Formular, das automatisch per 'Insert' die Daten in die Datenbank schreibt.
| | Ja so dachte ich mir das auch. Ich will sowieso noch ein Formular schreiben, um die ganzen Mahlzeiten eintragen zu können.
Danke
|
|
|
|
|
|
|
Kann jemand eine kleine Testmanagment Anwendung für den Desktopm empfehlen? Ich will hier kein großes System einrichten, sondern nur meine eigenen kleinen Testszenarien beschreiben, diese ggfs. mit ner laufenden Nummer versehen und Platz für eine Erfolgsmeldung und Fehlerbeschreibung haben.
Ich könnte natürlich einfach Excel oder so benutzen, das wäre mir aber schon wieder zu primitiv.
|
|
|
|
|
|
|
So ist es auch okay, oder?
$heute = date ("W");
$abfrage = "SELECT * FROM mensaplan WHERE woche=$heute";
$ergebnis = mysql_query($abfrage);
|
|
|
|
|
|
|
Ja, aber gewöhn dir am besten direkt an singlequotes zu benutzen und deine Strings zusammenzusetzen.
|
Code: |
$abfrage = 'SELECT * FROM mensaplan WHERE woche='.$heute;
|
|
Bei doublequotes wird immer nochmal der php-Parser über den String rübergejagt. Das will man in den meisten Fällen nicht.
|
|
|
|
|
|
|
| Zitat von Slutti
So ist es auch okay, oder?
$heute = date ("W");
$abfrage = "SELECT * FROM mensaplan WHERE woche=$heute";
$ergebnis = mysql_query($abfrage);
| |
$heute = date ("W");
$abfrage = "SELECT * FROM `mensaplan` WHERE `woche`='".$heute."'";
$ergebnis = mysql_query($abfrage);
so würd ichs machen
|
|
|
|
|
|
|
| Zitat von Ashtray
| Zitat von Slutti
So ist es auch okay, oder?
$heute = date ("W");
$abfrage = "SELECT * FROM mensaplan WHERE woche=$heute";
$ergebnis = mysql_query($abfrage);
| |
$heute = date ("W");
$abfrage = "SELECT * FROM `mensaplan` WHERE `woche`='".$heute."'";
$ergebnis = mysql_query($abfrage);
so würd ichs machen
| | Was haben die drölfzich single/doublequotes für einen Vorteil ?
|
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von Slutti am 10.02.2010 14:08]
|
|
|
|
|
|
Keinen echten und die Singlequotes um den Vergleichswert für Woche sind falsch, da du ein INT vergleichen willst. Die werden nur bei Strings benötigt.
|
|
|
|
|
|
|
| Zitat von TriggerTG
Champignons verderben etwa 3 Tage nach der Ernte. Auch der Kühlschrank ändert da leider gar nichts dran. Also man sollte sie wirklich nur kaufen, wenn man sie auch am selben oder spätestens nächsten Tag verwenden wird, ansonsten bitte nicht mehr.
Frak...
Hm, vor ner woche muss ich die gekauft haben. Aber irgendwie sehen die noch "normal aus"
| |
pff hau rein, passt schon. max 3 Tage... soweit kommts noch!
|
|
|
|
|
|
|
Bei Lebensmitteln hab ich noch nie was auf Angaben, Richtwerke und sonstwas gegeben.
Probieren geht über studieren. Der Körper wird sich schon melden, wenns nimmer gut ist
|
|
|
|
|
|
|
Schönen Trip wünsche ich.
|
|
|
|
|
|
|
Da gibts so ein Video von irgend so einer Hartz4 Tussi die bei der Tafel das essen holt und dann das Brot wegschmeisst, weil es den Tag drauf laut MHD abläuft. Super!
Aber ich finds nichtmehr
|
|
|
|
|
|
|
|
|
|
|
Ich hoffe ich nerve nicht :x
|
Code: |
//Variablen festlegen
$heute = date ("W");
$zurueck = date ("W");
$zurueck--;
$vor = date ("W");
$vor++;
//Aktuelle Woche
$heute = date ("W");
$abfrage = "SELECT * FROM mensaplan WHERE woche=$heute";
$ergebnis = mysql_query($abfrage);
//Linkliste
$seite = $_GET["seite"];
if($seite=="zurueck")
{
$abfrage = "SELECT * FROM mensaplan WHERE woche=$zurueck";
$ergebnis = mysql_query($abfrage);
}
if($seite=="heute")
{
$abfrage = "SELECT * FROM mensaplan WHERE woche=$heute";
$ergebnis = mysql_query($abfrage);
}
if($seite=="vor")
{
$abfrage = "SELECT * FROM mensaplan WHERE woche=$vor";
$ergebnis = mysql_query($abfrage);
}
|
|
Passt das so?
|
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von Slutti am 10.02.2010 14:36]
|
|
|
|
|
|
Ja. Aber lagere den Query in eine Funktion aus, dann ist das erstens übersichtlicher, zweitens weniger Schreibarbeit und drittens besser zu warten. Und beachte vielleicht mal noch den Tipp den ich dir weiter oben gegeben habe.
|
|
|
|
|
|
Thema: Gehirnsalat ( wir unter uns ) |