However, I am not sure how to revise the code to check to see if the data is new, or has already been sent out to another source. I am also unsure how to revise the code to only send new data as it hits the db, not an entire array of data like I am calling now.

This code is successfully detecting a new data hitting the database. What I am struggling with now, is revising the code to only display the newly detected data piece, not the entire array as you see it.

NEW EDIT:
I have gotten the code to display only the newest piece of data, but now I have a conundrum.
If I poll the database say every minute, and a new piece of data hits the db, the script will pick it up -- however if another new piece of data hits the db seconds after the first new piece was sent to target, the second new piece will totally get ignored because the poll would be every minute. I would basically have to poll the database every few seconds... and that sounds like a performance nightmare...

The grayed out OPTION 1 is what displays the newest data, but would skip a newer piece before a minute based poll unless the db was polled every second.
OPTION 2 works, but displays the entire array... so I am unsure how to revise the code to only display the newest pieces, not the entire thing.

with this id, from source, you get all new record, and query with these data an insert page on target

Alternate, target driven

you add some data in source, with their auto-incremented id

your target get his bigger id and ask source for new data

target update himself

And you can go to step one again. If you are careful on your insert (use of roll-back, break full batch on one fail), you should have a perfect target whenever the fail on the source / target link, and the bandwidth is as low as it could.

One-sided and check-less

This allow to send batch of data from source without answer nor action of target.

This don’t care if the data is lost on the way, it only send once.

having a three states field send on source

Step-by-step

you add some data in source, with their send by default on 0

you set every send ==0 on send = -1

select every -1 and send them to the target

update -1 to 1

Go back to step one.

This allow you big batch without having to put a lock write waiting the send script, and be sure you can't have some line that drop between the send one.

Timestamp

This look a lot like the previous one, but instead of a field on every row, we just use a new table to keep the last sync :