Reminder zu TV Sendungen!

Bis jetzt hab ich schonmal das hier, hab mir aber schon sagen lassen, dass mein query falsch ist.

PHP:
$sql = SELECT YARMProgramTable.t1, YARMProgramTable.ModeratorsPKEY 
FROM YARMProgramTable JOIN Moderator ON Moderator.ID = YARMProgramTable.ModeratorsPKEY  
WHERE t1 BETWEEN ($timestamp AND $uebermorgen);

Das muß zu einer Fehlermeldung führen, das sollte in Anführungszeichen stehen.
Achte auf korrekte Schreibweise.

PHP:
$sql = "SELECT YARMProgramTable.t1, YARMProgramTable.ModeratorsPKEY
FROM YARMProgramTable JOIN Moderator ON Moderator.ID = YARMProgramTable.ModeratorsPKEY
WHERE t1 BETWEEN ".$timestamp." AND ".$uebermorgen;

Nimm den Rat von Saftmeister an und beschäftige Dich gleich mit PDO, ersparst Dir viel Mühe für später :-)
 
Danke bei Gelegenheit mach ich das. Aber da möchte ich mich jetzt noch nicht einarbeiten.
Ich hab mal mein Ausgabeproblem (Zeit) gelöst. Nun bekomm ich aber nur einen Wert als Ausgabe obwohl ich mehrere bekommen sollte. Wisst ihr vllt. warum?

PHP:
 //Sendestart-/ Sendeendezeit aus der DB holen

$start_end_zeit = "SELECT YARMProgramTable.t1, YARMProgramTable.t2 
FROM YARMProgramTable JOIN Moderator ON Moderator.ID = YARMProgramTable.ModeratorsPKEY 
WHERE `Record`='CD target port' AND URL5 LIKE '%@%'";


$sendungsname = "SELECT `Description` FROM Moderator WHERE URL5 LIKE '%@%'";
$sendezeit = date("d.m.Y H:i",strtotime($start_end_zeit));

echo "$sendezeit";

Das ist mein Ergebnis: 01.01.1970 01:00

Da hab ich aber auch eine kleine Frage zu. Die Daten in der Mysql DB sind im unixtimestamp + millisekunden gespeichert. Ich darf in der Tabelle nichts ändern. Dadurch bekomm ich aber von Haus aus ein falsches Datum.
zB 1364165965000 -> UNIX Timestamp (1364165965) + Millisekunden (000)
Wie bekomm ich die 3 Nuller am Schluss weg?
 
Danke bei Gelegenheit mach ich das. Aber da möchte ich mich jetzt noch nicht einarbeiten.
Ich hab mal mein Ausgabeproblem (Zeit) gelöst. Nun bekomm ich aber nur einen Wert als Ausgabe obwohl ich mehrere bekommen sollte. Wisst ihr vllt. warum?

Nun das musst Du selbst wissen.
Weil Du die Ausgabe nicht durch eine Schleife while() laufen lässt?

PHP:
echo "$sendezeit";

Da hab ich aber auch eine kleine Frage zu. Die Daten in der Mysql DB sind im unixtimestamp + millisekunden gespeichert. Ich darf in der Tabelle nichts ändern. Dadurch bekomm ich aber von Haus aus ein falsches Datum.
zB 1364165965000 -> UNIX Timestamp (1364165965) + Millisekunden (000)
Wie bekomm ich die 3 Nuller am Schluss weg?

Du könntest mit substr() die letzten drei Zeichen abschneiden.
Hättest Du das nicht auch mit Hilfe einer Suchmaschine finden können?
Suchbegrif "php string kürzen" Ungefähr 15.700 Ergebnisse (0,18 Sekunden)

Und nochmal: achte auf Deine Schreibweise!
 
Entschuldige, aber ich hab nach "UNIX Timestamp+ Millisekunden " gesucht und nicht nach php string kürzen. Dafür sind doch Foren da, um einen auf das richtige hinzuweisen. Danke dafür. Ich hätt warscheinlich noch ewig gesucht.
 
Entschuldige, aber ich hab nach "UNIX Timestamp+ Millisekunden " gesucht und nicht nach php string kürzen. Dafür sind doch Foren da, um einen auf das richtige hinzuweisen. Danke dafür. Ich hätt warscheinlich noch ewig gesucht.

Beim Suchen lernt man das Suchen.
Das sollte auch keine Besserwisserei sein, aber Eigeninitiative ist unentberlich sonst schreibst Du mehr im Forum als das du vorwärts kommst.
 
Also erstmal zum Thema mail(): Der TO hat weder was von HTML noch Anhängen erzählt. Auch hat er keine Umlaute in seinem Text, die das Setzen von Charset-Headern nötig machen würden. Alles in allem bleibe ich dabei, hier genügt mail() vollkommen.

Zum Thema mit den Millisekunden: Mit PHP kann man auch rechnen. Einen Integer durch 1000 "schneidet" die 3 Nullen hinten auch ab. Da muss man nicht substr() aufrufen (und den Int erst mal in einen String wandeln lassen, den Stack-Wechsel (2 mal, rein und raus aus substr) durchführen.
 
Zu den Millisekunden: Ich rufe den Wert aus der Datenbank ab.
PHP:
$abfrage = "SELECT YARMProgramTable.t1, YARMProgramTable.ModeratorsPKEY
FROM YARMProgramTable JOIN Moderator ON Moderator.ID = YARMProgramTable.ModeratorsPKEY
WHERE t1 BETWEEN ".$timestamp" AND ".$uebermorgen";
Wäre es sinnvoll, ihn bereits bei der Abfrage zu "kürzen" oder kann ich das im nachhinein ncoh machen?

WAs mich gleich zu einer, vielleicht sehr dummen Frage führt. Aber ich hab schon gesucht und lt. Internet müsste es so gehen. Ich mach wohl was falsch.

Wie kann ich mir diese Ausgabe anzeigen lassen. Im Fall von $abfrage in etwa.
Wenn ich
PHP:
 echo "$abfrage";
eingebe, dann bekomm ich den Inhalt aber nur SELECT.... nicht aber das, was ich haben möchte nämlich den Wert 2344252..
Kann ich dann für die "kürzung" den $abfrage auch nehmen? Also z.b
PHP:
$kurz = ($abfrage/1000);
 
Also, ich sehe, du hast noch nicht verinnerlicht, wie das mit den Datenbanken so funktioniert. Hier mal ein kleiner Abriss:

1. Du hast Daten in deinen Tabellen in Form von sog. Tupeln (Datensätzen) stehen.
2. Du möchtest die Daten aus der Tabelle auslesen und darstellen.
3. Du erstellst dir ein SELECT-Statement um die Daten abzuholen.
4. Dieses SELECT-Statement sendest du mittels der Funktion mysqli_query() an deinen Datenbank-Server, der das SELECT analysiert und die Daten bereit stellt, er gibt sie aber noch nicht aus sondern nur eine sog. Resource auf die Ergebnismenge.
5. Die Ergebnismenge kannst du jetzt mittels der Funktion fetch_array() durch iterieren und jeden Datensatz einzeln abholen.
6. Wenn du fertig mit dem Abholen bist, gibst du die Ergebnismenge mittels der Funktion free() wieder frei.

Damit kann dein Code so aussehen:

PHP:
// Punkt 3.
$abfrage = "SELECT YARMProgramTable.t1, YARMProgramTable.ModeratorsPKEY
FROM YARMProgramTable JOIN Moderator ON Moderator.ID = YARMProgramTable.ModeratorsPKEY
WHERE t1 BETWEEN ".$timestamp." AND ".$uebermorgen";  

// Punkt 4.
$ergebnis = mysqli_query($mysql_link, $abfrage) or die( mysqli_error() );

// Punkt 5.
while( $datensatz = $ergebnis->fetch_array() )
{
  $t1 = $datensatz['t1'] / 1000;
  $ModeratorsPKEY = $datensatz['ModeratorsPKEY'];

  echo "t1 = $t1; ModeratorsPKEY = $ModeratorsPKEY<br/>";
}

// Punkt 6.
$ergebnis->free();

EDIT: In deinem SELECT-Statement-String ist ein Syntax-Fehler, ich habe ihn mal korrigiert.
 
Zuletzt bearbeitet:
Also erstmal zum Thema mail(): Der TO hat weder was von HTML noch Anhängen erzählt. Auch hat er keine Umlaute in seinem Text, die das Setzen von Charset-Headern nötig machen würden. Alles in allem bleibe ich dabei, hier genügt mail() vollkommen

Es ist sinnvoll von Anfang an einen PHPmailer zu nutzen, bevor man seine Domain aus Unwissenheit zu einer Spam-Schleuder macht.

Mail() sollte man nur nutzen, wenn statische Mails versendet werden sollen, wo auf jeden Fall sicher ist, das niemand von außen dran kommt bzw. keine Variablen verwendet werden.
Wenn MIME-Erweiterung zum Einsatz kommen, wage ich zu bezweifeln das da noch eine gültige Elektropost am Ende raus kommt.

Also, warum das Rad neu erfinden und unnötige Risiken eingehen?
Kein guter Rat für jemanden der gerade anfängt.

PHP:
$empfaenger = 'a@web.de';
$betreff = 'Feedback_Erinnerung-Mail';

$header = 'From: r@gmx.de'. "\r\n" .
        'Reply-To: ' .$name. "<" .$email. ">\r\n" .
    'Message-ID: <' .time(). " noreply@" .$_SERVER['SERVER_NAME']. ">\r\n" .
    'X-Mailer: PHP/' . phpversion();



0 1 * * * find /tmp -atime 3 -exec ls -l {} \; //jeden Tag und jeden Monat zur angegebenen Zeit

$text = 'Hallo lieber Teilnehmer....';

Woher die Variablen kommen und ob das so bleibt, weiß nur der TE.
 
Zurück