PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Problem Übungsplan



huaba
26.02.2012, 20:09
Hallo,

hab n Problem.
Und zwar ich bräuchte auf ner Hp so ne Art Übungsplan.
Sollte in etwa so aussehen:
Gruppe a:
Datum 1
Gruppe b:
Datum 2

Die Termine sind in unregelmäßigen Abständen und sollten nach Ablauf automatisch durch das neue Datum ausgetauscht werden.
Hat jemand Zeit und könnte mir das programmieren?

lrg0
26.02.2012, 20:12
Das ganze ist kein Problem in Php mit Mysql oder Sqlite.

Was hast du bei dir auf dem Server vorhanden? Php und Mysql installiert?

huaba
26.02.2012, 20:18
Ja, php und mysql.

lrg0
26.02.2012, 20:24
und du kannst mit deinem alleine nicht um?

Brauchst doch nur ne kleine Tabelle anlegen für die Daten und dann mit Php die Daten (gefiltert nach Zeit und/oder Anzahl) abfragen. Dazu noch 'ne kleine Form zum Daten eintragen.

huaba
26.02.2012, 20:27
Hab selber rumprobiert und es hat auch nach unzähligen Versionen, bei denen der Austausch ned funktioniert hat, hab ich aufgegeben und alles gelöscht xD.
Hab die Termine direkt in die Datei eingegeben..

lrg0
26.02.2012, 20:31
Wenn du selbst schon einen Ansatz fertig hattest sollte dir folgender Link weiterhelfen:
http://www.schattenbaum.net/php/

Southpark
26.02.2012, 20:37
Das ganze ist kein Problem in Php mit Mysql oder Sqli.

Achja. Man kann also sowas mit ner SQL-Injection realisieren :P Glaub ich aber weniger ;)

Um sowas zu coden ist wirklich nicht viel Wissen nötig nen kleines PHP Script das Daten in eine Tabelle einträgt und dann noch eins um das Datum abfrägt und dann überprüft ob der Tag schon vorbei ist und wenn ja das nächste Datum abfragen.

Southpark

lrg0
26.02.2012, 20:40
lol, ok meinte natürlich Sqlite

huaba
26.02.2012, 20:45
Also danke für den Link, aber direkt schlauer bin ich immer noch ned xD

sn0w
26.02.2012, 22:05
Wo genau liegt dein Problem? Nur zu sagen "Mimimi geht nicht" hilft keinem weiter...

Anon_n00j
27.02.2012, 00:02
Gruppe a:
Datum 1
Gruppe b:
Datum 2

Die Termine sind in unregelmäßigen Abständen und sollten nach Ablauf automatisch durch das neue Datum ausgetauscht werden.
Hat jemand Zeit und könnte mir das programmieren?


http://www.eqdkp-plus.com/news.php?[de] ? vllt hilft das , kannst um modden

huaba
28.02.2012, 20:41
Danke, werd mal schauen, ob es hilft.

Also prinzipiell hatte ich es, dass es ganz normal ein datum anzeigt, sprich, dass das austauschen nicht funktionierte.
Hab zz wenig zeit, um mich noch mehr damit rumzuschlagen, deswegen hab ich hier gefragt.

sn0w
28.02.2012, 23:11
Hab zz wenig zeit, um mich noch mehr damit rumzuschlagen, deswegen hab ich hier gefragt.
Das ist doof, aber wir sind hier nicht deine persönliche Keine-Zeit-Und-Wir-Machen-Es-Crew.
Falls du ein kronkretes Problem bei deinem Vorhaben hast kannst dich hier gerne wieder melden.

huaba
29.02.2012, 15:48
<?php

$dat1[0]='12.02.2012';
$dat1[1]='18.02.2012';
$dat1[2]='28.02.2012';
$dat1[3]='03.03.2012';
$dat1[4]='15.04.2012';
$i=0;
$fertig=0;
$heute=date("d.m.Y");

function dat_vgl($datum){
list($tag, $monat, $jahr)=explode(".", $datum);
$jahr=sprintf("%04d", $jahr);
$monat=sprintf("%02d", $monat);
$tag=sprintf("%02d", $tag);
return(mktime(0,0,0, $monat, $tag, $jahr));
}

while($fertig == 0){
if(dat_vgl($heute)>dat_vgl($dat1[i])){
$i++;
$fertig=0;
}
else{
$fertig=1;
}
}
print('Gruppe 1');
print_r(" $dat1[$i]");
?>

Das wär jetzt mal mein Versuch.
Ohne die while-Schleife bekomme ich (ganz normal und auch verständlich) immer den 18.02 raus.
Mit der while-schleife kommt immer folgendes.
Fatal error: Maximum execution time of 60 seconds exceeded. (das ganze bei "return(mktime(0,0,0, $monat, $tag, $jahr));")


Warum?

sn0w
29.02.2012, 16:07
Weil deine while Schleife nicht terminiert.

huaba
29.02.2012, 16:36
Ok, und wo bzw wie terminier ich die richtig

sn0w
29.02.2012, 17:05
Eine while Schleife ist hier unschön und an sich nicht angebracht. Foreach sollte helfen.

huaba
01.03.2012, 10:26
komm mit der syntax von foreach ned klar.
wie kann ich da des vergleichen?

sn0w
01.03.2012, 10:31
http://php.net

Wenn du es nicht lernen willst lass es sein.