I can't see the value of the field "tdate" in the table called x4tables but let's assume that you're already writing the date in Unix time.
If you are doing that, then to delete anything that's OVER a week old would be like this:
$one_week_ago = time() - (7 24 60 * 60);
$query = "delete from x4tables where tdate < $one_week_ago";
$result= mysql_query($query,$conn);
Notice that I said, "delete from", not "delete * from". I think that was one main mistake.
Also notice that I used a less than symbol, not a greater than. You want any integers that are LOWER.
I'm not sure what you were getting at with this: WHERE ((time()-strtotime(["tdate"]))
Maybe it's to allow for the fact that you're not storing the date in Unix time in your table? If so, that's fine. If you're not storing the date in Unix time (lots of people don't), then there is simply a different way of writing the query to delete anything that's over a week old... and I don't have that syntax at my fingertips right now... but it's much more like english than the Unix time that I'm used to. Even so, you still want to use "delete from", not "delete * from" and also, you will use < not >. That should be a good start.