Avatar billede danic Nybegynder
02. april 2004 - 10:15 Der er 15 kommentarer og
1 løsning

hente mysql oplysninger fra remote site

Jeg påtænker at lave et site, som henter alle oplysninger fra en remote mysql-database altså en hos en anden udbyder.

jeg forstiller mig at lave alle kald fra mit localsite til mit remotesite.

I alle filer på mit localsite skriver jeg:
include("http://www.navn.dk/funktioner/db.php");
opendatabase();
andrekald();

Set i nogle problemer med dette? er det nogle som har prøvet dette, eller nogle som benytter det i stor stil?
Avatar billede phineas_phreak Nybegynder
02. april 2004 - 10:19 #1
har du adgang til PHP eller ASP vil du kunne lave præcis de udtræk fra DBen du ønsker. Prøv at søg lidt på emnet.

i ASP vil det f.eks. se sådan ud:

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "DRIVER={MySQL Driver};SERVER=x.x.x.x;DATABASE=tabelnavn;USER=ditbrugernavn;PASSWORD=ditpassword;"

Herefter definerer du så din SQL og trækker lortet ud på din site som du nu vil ha det
Avatar billede muddi Praktikant
02. april 2004 - 10:20 #2
Ja, det er der problemer med, da den fil du henter vil blive fortolket på den anden server. Du vil med andre ord ikke modtaget php-koden db.php, men det output der genereres!

Du kan dog alligevel bruge en database på en anden server, du er blot nødt til at flytte din db.php-fil over på den nuværende!
Avatar billede danic Nybegynder
02. april 2004 - 10:33 #3
phineas_phreak> Jeg bruger PHP

muddi> Så hvis jeg laver en php funktion på mit remote site som hedder
helloword() {
echo"hello world";
}

og kører denne på mit local site:
helloword();
så ser jeg ikke helloworld?
Avatar billede phineas_phreak Nybegynder
02. april 2004 - 10:40 #4
det er korrekt.

som muddi også siger så får du ik executed PHPen fra en remote server da serveren først executer PHPen, og derefter sender den ud som et html output der vises i din browser. Du har således ingen mulighed for at styre hvad der skal vises og ikke skal vises, du får kun en kopi af den side du includer.

Men du kan sagtens connecte til en remote MySQL server via PHP som du har liggende på din egen site, og med SQL hente de informationer du skal bruge fra DBen.
Avatar billede muddi Praktikant
02. april 2004 - 10:41 #5
danic >> korrekt, du ville kun få vist outputtet "hello world"
Avatar billede danic Nybegynder
02. april 2004 - 10:43 #6
Tak for et klart svar :)

Tror i at man kan mærke forskel på et site som har mysql inde for samme webhotel og et site som har mysql på et andet webhotel? (det antages at begge hoteller har hurtige forbindelser)
Avatar billede danic Nybegynder
02. april 2004 - 10:45 #7
Øh muddi> jeg vil få vist outputtet "" ikke?
Avatar billede phineas_phreak Nybegynder
02. april 2004 - 10:47 #8
Nej det er rigtigt hvad muddi siger. Du vil få vist hello world, som er det serveren har genereret fra PHP koden, men du ville ikke være istand til at ændre hello world ved at include.

Som sagt laver include bare en kopi af outputtet på din remote site
Avatar billede phineas_phreak Nybegynder
02. april 2004 - 10:48 #9
var det til at forstå ? :D
Avatar billede danic Nybegynder
02. april 2004 - 10:49 #10
Yebs - Thanks!
Avatar billede muddi Praktikant
02. april 2004 - 11:02 #11
danic >> Du har ret, jeg havde ikke lige læst at du ville kalde funktionen fra en anden server. Så selvfølgelig vil du ikke modtage noget ;)

Dine brugere vil sikkert ikke bemærke noget, hvis der ikke er for mange hits. Mange webhoteller har også web-servere og mysql-servere adskilt. De har så den fordel, at serverne er på samme netværk ...
Avatar billede danic Nybegynder
02. april 2004 - 11:04 #12
tænke det nok :)
Avatar billede phineas_phreak Nybegynder
02. april 2004 - 11:05 #13
nu tror jeg at jeg har misforstået noget :D
Avatar billede muddi Praktikant
02. april 2004 - 11:09 #14
phineas > danic spurgte om han fra den ene server kunne kalde en funktion i en fil på den anden server, og dermed modtage outputtet. Det kan han selvfølgelig ikke!
Avatar billede phineas_phreak Nybegynder
02. april 2004 - 12:13 #15
aah ok læste så ik lige det med funktionen der, troede du tænkte på include include("http://www.navn.dk/funktioner/db.php"); som han skriver øverst.
Avatar billede muddi Praktikant
02. april 2004 - 12:50 #16
Tak for point!
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
Kategori
Computerworld tilbyder specialiserede kurser i database-management

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