Sendeplan

h4dhunTer

Erfahrenes Mitglied
Hallo,
es tut mir leid und es wurde auch schon oft durchgekaut, aber nirgends finde ich eine gute Lösung.

Ich möchte einen komplett neuen Sendeplan programmieren. In diesem Plan sollen Moderatoren die Möglichkeit haben, eine Sendung wöchentlich oder einmalig einzutragen. Das einzige Problem was ich eigentlich habe, ist wie ich ein Datum dann in die Datenbank eintragen soll, so das ich wöchentlich wieder diese Sendung ausgeben kann.

Darüber hinaus, sollte es auch spezial Sendungen geben, diese haben eine höhere Priorität und soll in der Woche dann die Sendungen halt überschreiben, aber in der kommenden Woche wieder richtig sein.
Dazu sollte natürlich auch jeder Moderator eine Meldung bekommen, wenn an diesem Tag eine Sendung zu dieser Uhrzeit schon eingetragen ist.(Spezial Sendungen ausgeschlossen).

Kann mir da vielleicht jemand erklären, wie ich dies in die Datenbank eintragen sollte und dann in PHP richtig umsetzte?

Vielen Dank, Phillip.
 
Hallo,
ich finde es so schöner, denn meine Methode ist etwas schlecht gemacht und mit den oben genannten Funktionen, kann ich auch schnell erweitern, dass z.B. eine Sendung erst in 2 Wochen los geht.
 
Hi,

dann speichere statt Tag und Uhrzeit einfach Datum und Uhrzeit als DATETIME. Mit den Datums- und Zeitfunktionen von MySQL bekommst Du alle Informationen aus den Feldern wieder heraus, die Du brauchst. Zusätzlich könntest Du noch die Dauer einer Sendung speichern und ein Flag, ob es eine regelmäßige, also wöchentliche Sendung ist.

LG
 
Hi,

dann speichere statt Tag und Uhrzeit einfach Datum und Uhrzeit als DATETIME. Mit den Datums- und Zeitfunktionen von MySQL bekommst Du alle Informationen aus den Feldern wieder heraus, die Du brauchst. Zusätzlich könntest Du noch die Dauer einer Sendung speichern und ein Flag, ob es eine regelmäßige, also wöchentliche Sendung ist.

LG

Danke erstmal für die Informationen. Gibt es da auch vielleicht Deutsche Informationen, bzw. ist das die einzige möglichkeit?
 
Hi,

Gibt es da auch vielleicht Deutsche Informationen

Klicke auf "Documentation" und wähle die deutsche Version aus. Allerdings hat die oben nicht die anklickbare Übersicht der Funktionen, was ich persönlich echt anstrengend finde. Versuch's doch erstmal mit der englischen, das trainiert ;)

bzw. ist das die einzige möglichkeit?

Was meinst Du damit? Wieviele Möglichkeiten, ein Datum zu speichern, soll MySQL denn haben? Wenn Du alle möglichen Vergleiche, Berechnungen, etc. auf Wochentage, Datum und Uhrzeit brauchst, ist ein DATETIME denke ich die richtige Wahl, vor allem, da es so viele Funktionen in MySQL genau für diese Zwecke gibt.

LG
 
Hallo,
oki, danke für deine Antworten. Vielleicht kannst du bei meinem aktuellen Sendeplan problem helfen, denn das ist der Grund, warum ich einen ganz neuen Plan programmieren möchte. Doch da muss ich mich erstmal anlesen.

Also: Ich habe meinen Sendungen die Funktion gegeben, dass man Sendungen auch deaktiviert werden können.
Das mache ich einfach mit einer Spalte: anzeigen: 1 (anzeigen), 2 (nicht anzeigen)
Nun ist es seit einiger Zeit so, dass sich Sendungen anscheinend von selber aktivieren bzw. deaktivieren. Das macht den ganzen Sendeplan unschön, da dann Überschneidungen vorprogrammiert sind.

sendungbearbeiten.php
PHP:
<?php
$sql = mysql_query("SELECT * FROM sendeplan WHERE id='".$_GET['id']."' LIMIT 1") OR die("Konnte Datenbank nicht benutzen.<br>Fehlermeldung: ".mysql_error());
while($daten = mysql_fetch_assoc($sql))
{
if($daten['anzeigen']=="0"){
    $akt="1";
    $aktt=" <b>Angezeigt</b>!";
}else{
    $akt="0";
    $aktt=" <b>nicht Angezeigt</b>!";
}
$sql2 = mysql_query("UPDATE `sendeplan` SET `anzeigen` = '".$akt."' WHERE id='".$_GET['id']."' LIMIT 1") OR die("Konnte Datenbank nicht benutzen.<br>Fehlermeldung: ".mysql_error());
}
?>

Ist da vielleicht ein Fehler, oder kennt jemand schon das Problem, dass sich die Datensätze selbständig machen?
 
Zuletzt bearbeitet:
PHP:
if($daten['anzeigen']=="0"){
    $akt="1";

Wenn in der Datenbank 0 steht, setzt du $akt auf 1 und

PHP:
$sql2 = mysql_query("UPDATE `sendeplan` SET `anzeigen` = '".$akt."' WHERE id='".$_GET['id']."' LIMIT 1")

führst ein Update aus das aus 0 eine 1 machst..? Da ist kein fehler, das macht eher keinen Sinn. Oder: ich bin grad verwirrt un drede Mist, dann bitte mich ignorieren ;)
 
Hallo,
doch! Also wenn $daten['anzeigen']==1 ist, dann soll er daraus eine 0 machen. Wenn aber $daten['anzeigen']==0 ist, dann soll er daraus eine 1 machen.

Das dient dazu: Wenn $daten['anzeigen']=1 ist, dann soll er die Sendung im Sendeplan anzeigen, wenn 0, dann halt nicht ;-)
 
Hallo,
also irgendwie tritt dieser Fehler immer noch auf. Gibt es da überhaupt eine Lösung oder ist das unlogisch?
 
Zurück