[mythtv-users] Which table?

Michael Sullivan michael at espersunited.com
Mon Sep 22 21:20:35 UTC 2008


On Sun, 2008-09-21 at 07:37 -0700, Allen Edwards wrote:
> On Sun, Sep 21, 2008 at 7:02 AM, Michael Sullivan
> <michael at espersunited.com> wrote:
> > I'd like to write a PHP script that will access the mythconverg database
> > and query for a list of programs being recorded the current day and
> > email that list to myself and another user.  I can write the script to
> > query the db and send the email, but I can't figure out which table
> > holds that information.  My best bet was the record table, but it seems
> > to only return data for shows that I've marked not to record:
> >
> > For example:
> >
> > mysql> select title, starttime from record where startdate="2008-09-22";
> > +------------------------+-----------+
> > | title                  | starttime |
> > +------------------------+-----------+
> > | The Last Samurai       | 19:00:00  |
> > | The Poseidon Adventure | 03:30:00  |
> > | Paranormal State       | 22:30:00  |
> > | Paranormal State       | 22:00:00  |
> > | Paranormal State       | 21:30:00  |
> > | Paranormal State       | 21:00:00  |
> > | The Poseidon Adventure | 03:30:00  |
> > +------------------------+-----------+
> > 7 rows in set (0.16 sec)
> >
> >
> > In the MythTV interface, the only program listed to record on 9-22 is
> > "Terminator:  The Sarah Connor Chronicles".  However, if I search for
> > that in the record table:
> >
> > mysql> select title, starttime, startdate from record where
> > title="Terminator: The Sarah Connor Chronicles";
> > +-----------------------------------------+-----------+------------+
> > | title                                   | starttime | startdate  |
> > +-----------------------------------------+-----------+------------+
> > | Terminator: The Sarah Connor Chronicles | 19:00:00  | 2008-01-13 |
> > +-----------------------------------------+-----------+------------+
> > 1 row in set (0.00 sec)
> >
> > The only record is from a long time ago.  Those shows up above are
> > listed above in the db are listed in the GUI, but they are manual "Don't
> > record"s I have a lot of space issues, so I go through the listing in
> > the GUI each time I run mythfilldatabase and mark things not to record
> > that I know will be on again soon.  Can anyone help me?
> >
> >
> >
> This sounds like a good script to have.  Please share it when you are done.
> 
> In terms of the data base, I would search for  "%Sarah%" instead of
> the entire title.  Perhaps the entire title didn't show up because of
> some punctuation difference and finding all the shows with just part
> of the title in them would uncover that.
> 
> Allen


Well, it's not pretty, but at least it's a start:

#!/usr/bin/env php

<?
// TODO:  Add display callsign instead of chanid

   //Now for some variables
   $db = "mythconverg";
   $user = "michael";
   $pass = "mythtv";
   $host = "192.168.1.3";
   $today = date("Y-m-d");

   $channel = "";
   $title = "";
   $subtitle = "";
   $description = "";
   $chanid = "";
   $startdate = "";
   $starttime = "";
   $endtime = "";


   print "\t\t\tTV TODAY Report for $today\n\n\n";
   //Let's connect
   $link = mysql_connect ($host, $user, $pass);
   if (!$link) die ("Could not connect to database server.");
   mysql_select_db ($db, $link) or die ("Could not connect to
database");

   //Let's find out what we want to search for.
   $query = "SELECT station, title, subtitle, description, starttime,
endtime FROM record WHERE next_record LIKE '%$today%'";
   $result = mysql_query($query, $link) or die("Could not retrieve
records".mysql_error());

   while($a_row = mysql_fetch_array($result, MYSQL_ASSOC))
   {
      $chanid = $a_row['station'];
      $title = $a_row['title'];
      $subtitle = $a_row['subtitle'];
      $description = $a_row['description'];
      $starttime = $a_row['starttime'];
      $endtime = $a_row['endtime'];
      
      
      print "Program Channel:\t$chanid\n";
      print "Program Name:\t\t$title\n";
      print "Program Episode:\t$subtitle\n";
      print "Program Descriptino:\t$description\n";
      print "Program Start Time:\t$starttime\n";
      print "Program End Time:\t$endtime\n\n";
   }
?>

Here's my output:

michael at camille OldStuff $ ./tvtoday.php 

			TV TODAY Report for 2008-09-22


Program Channel:	Channel 9
Program Name:		Terminator: The Sarah Connor Chronicles
Program Episode:	Pilot
Program Descriptino:	Sarah takes her son, John, to a small town in
Mexico, where he befriends the man who will become his protector.
Program Start Time:	19:00:00
Program End Time:	20:00:00


Now, I'd like to know (in mythtv-0.21) how to find the shows that have
been manually marked not to record, and perform searches on keywords I
have entered in mythfrontend...




More information about the mythtv-users mailing list