Avatar billede jokeren77 Nybegynder
13. januar 2015 - 20:26 Der er 9 kommentarer

Hent data fra anden sides DB

Hejsa,

jeg er igang med at lave en side, hvor vi har fået tilladelse til at bringe nyheder fra en anden persons side. Min ide var at lave en daglig "kopi" af data over i vores DB så vi kan præsentere det i vores design. Dette er godkendt af den anden person, og der vil blive skrevet credits til hans side.

hvordan gør man det sådan rent teknisk? Er det muligt at sætte en funktion op der trækker data hver nat eller hvordan gør man sådan noget? Det er hos en alm. webudbyder svarende til one.com.

På forhånd tak.
Avatar billede claes57 Ekspert
13. januar 2015 - 20:40 #1
hvis du kan få adgang, så se på http://sourceforge.net/projects/automysqlbackup/
og lave en daglig 'backup' over på dit site.
Avatar billede jokeren77 Nybegynder
13. januar 2015 - 20:47 #2
lyder fornuftigt, har lige kigget på det. men fatter da ikke lige hvordan jeg skal få det til at virke. files til install hedder install.sh....
Avatar billede nemlig Professor
13. januar 2015 - 21:03 #3
Jeg vil foreslå, at du som det første tjekker, om der er adgang til MySql fra en extern side. Mig bekendt tillader One.com det ikke, mens fx. Unoeuro.com gør.

Hvis der ikke er eksternt adgang,  kræver det, at der afvikles et script på det site, hvorfra du skal hente data.
Avatar billede jokeren77 Nybegynder
13. januar 2015 - 21:12 #4
afvikles et script?
Avatar billede nemlig Professor
13. januar 2015 - 21:27 #5
Noget programkode, der henter de ønskede data fra MySQL. Derefter er udfordringen, hvordan du får fat i dataene. Skal dataene gemmes i en fil, som du så kan hente, skal de mailes eller måske en 3. løsning.
Avatar billede acore Ekspert
13. januar 2015 - 22:15 #6
Hvorfor ikke blot lægge et lille script på den side, der skal levere data? Scriptet skal give de data, du skal bruge som fx XML eller RSS. Kan evt være beskyttet mod adgang fra 3.part med password.

Fra din egen side læser du så bare den fil.
Avatar billede jokeren77 Nybegynder
14. januar 2015 - 22:17 #7
Jeg har nu fået et link

xxx.dk/index.php?format=feed&type=rss

Den levere en fin XML fil i IE.

<?xml version="1.0" encoding="utf-8"?>
<!-- generator="Joomla! - Open Source Content Management" -->
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<item>
<title>Procesplan offentliggjort</title>
<link>http://xxx.dk/index.php/1246-procesplan-offentliggjort</link>
<guid isPermaLink="true">http://xxx.dk/index.php/1246-procesplan-offentliggjort</guid>
<description><![CDATA[<p><img src="http://xxx.dk/images/b/bane1.jpg" alt="bane1" width="500" height="333" /></p>
<p><span style="font-size: 12pt;"><strong>Procesplan offentliggjort.</strong></span></p>
]]></description>
<author>ulrikp@godmail.dk (Ulrik Pedersen)</author>
<category>Nyheder</category>
<pubDate>Wed, 14 Jan 2015 15:01:40 +0100</pubDate>
</item>

Der ligger så 10-20 tilsvarende items, og det er hver af disse jeg ønsker at hente i denne fil og smide ind i variabler/arrays og videre ind i MySQL.

Jeg er blevet rådet til at lave en fil som kan hive de data og smide dem ind og så bruge https://www.setcronjob.com/ til at køre den side med det interval jeg ønsker.

nogen der kan lede mig i den rigtige retning, da det slet ikke er et område jeg har været i før.
Avatar billede acore Ekspert
14. januar 2015 - 22:47 #8
God start! En sådan fil er meget let at læse. Hvilken platform vil du bruge?

I PHP kan du læse den med simplexml_load_file(..) og nemt lægge data ind i dine tabeller - andre sprog har tilsvarende løsninger.

Og at bruge et cronjob til at styre det med er en fin løsning - der er også andre muligheder, hvis du vil undgå det.
Avatar billede arne_v Ekspert
20. januar 2015 - 03:15 #9
Der er forskellige loesninger:
* din side indeholder JavaScript som client side henter RSS feed og viser det (vaer opmaeksom paa same origin restriction og workarounds)
* din side henter og processer RSS feed for hver request du faar (det er ikke en naturlov at din database we hurtigere end det RSS feed!)
* du laver noget hent og gem i database PHP kode som du koerer via cron/scheduler
* du lavet noget hent og gem i database PHP kode som trigges af request hvis det er mere end T tid siden der sidst blev hentet
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester