Toon posts:

[PHP] Problemen met connecten naar MySQL_DB

Pagina: 1
Acties:

Verwijderd

Topicstarter
Een vriend van me host voor mij ff een MySQL database aangemaakt... Dus op een andere host dan mijn daadwerkelijke site.
Ik zit nu een paar scripts te testen, waaronder PhpBB ( forum op MySQL DB ), PaFileDB ( File management systeem ) en nog wat simpele newsscripts. Echter ondervind ik het probleem, dat wanneer een script wilt connecten naar mijn MySQL DB... Dat ie dan connect naar de localhost, in dit geval www.exsilium.com. Wat dus niet klopt.
Het enige script wat wel goed zijn werk doet is PhpBB... Deze connect WEL naar de totaal verschillende host, waar de DB staat.

Weet iemand waar dit probleem zou kunnen liggen ?
De Database is goed aangemaakt, de scripts zouden in mijn ogen ook correct moeten zijn en mijn hosting shit draait de laatste versie php.

  • [ash]
  • Registratie: Februari 2002
  • Laatst online: 23-08 12:03

[ash]

Cookies :9

Als phpBB wel goed connect en de andere scripts niet lijkt het me dat het probleem in de configuratiebestanden van deze script zit.

Verwijderd

Topicstarter
Het zijn "officiele" scripts die het bij genoeg mensen doen.

  • DizzyWeb
  • Registratie: Februari 2001
  • Laatst online: 13:36

DizzyWeb

Ondertiteld

Dat het officiele scripts zijn, betekent niet dat jij de goede host hebt opgegeven in de config bestanden...... :)

  • sjroorda
  • Registratie: December 2001
  • Laatst online: 10:51
Dat wil niet zeggen dat al die 'genoeg' mensen de db's ook op een andere server hebben draaien; denk eerlijk gezegd dat dat nogal uitzonderlijk is. Kijk eerst eens hoe de DB benaderd wordt, dan hebben wij ook wat meer info, en mocht dat wel op de 'goede' manier gaan, dan moet je verder vragen...

Verwijderd

Topicstarter
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
<?php
/*
  paFileDB 3.1
  ©2001/2002 PHP Arena
  Written by Todd
  todd@phparena.net
  http://www.phparena.net
  Keep all copyright links on the script visible
  Please read the license included with this script for more information.
*/

/*You need to change these variables to get paFileDB working. If you are unsure of this information, please contact your host to obtain this information*/
$db[host] = "<HIER HET GOEDE IP!>"; //This is the MySQL server paFileDB will connect to
$db[user] = "<LOGIN>"; //This is the MySQL user name
$db[pass] = "<PASSWORD>"; //This is the MySQL password
$db[name] = "<DATABASE NAAM>"; //This is the MySQL database paFileDB will put it's information in

/*
This is the MySQL table name prefix. The default is "pafiledb" but if you wish to install multiple copies of
paFileDB on the same database, change this to something like "pafiledb2." All tables in the MySQL database will 
be named "$prefix_files," "$prefix_license" ect, for example: "pafiledb_files" and "pafiledb2_files." That will
allow multple copies of paFileDB on the same database. If you are only installing one copy of paFileDB, you dont 
need to change this. NOTE: Your host does not have this information, it is up to you to set it to what you want.
If you are upgrading from an older version of paFileDB, you MUST keep this as "pafiledb"
*/
$db[prefix] = "pafiledb"; //Table name prefix-explained above.

/*Don't mess with anything below here unless you know what you're doing!*/

class pafiledb_sql {
    function query($db,$query,$type) {
        $result = mysql_query($query);
        $error = mysql_error();
        global $query_count;
        global $queries_used;
        $query_count++;
        $queries_used .= "<tr><td width=\"100%\" align=\"left\" class=\"datacell\">$query</td></tr>";
        if (!empty($error)) {
            $errno = mysql_errno();
            $this->error("paFileDB was unable to successfully run a MySQL query.<br>MySQL Returned this error: <b>$error</b> Error number: <b>$errno</b><br>The query that caused this error was: <b>$query</b>");
        }
        if ($type == 0) {
            return $result;
        }
        if ($type == 1) {
            $array = mysql_fetch_array($result);
            return $array;
        }
        if ($type == 2) {
            $array = mysql_num_rows($result);
            return $array;
        }
        if ($type == 3) {
            $array = mysql_insert_id();
            return $array;
        }
        @mysql_free_result($result);
    }
    function error($error) {
        die($error);
    }
    function connect($db) {
        if(!($dbc = mysql_connect($db[host],$db[user],$db[pass]))) $this->error("paFileDB was unable to successfully connect to the MySQL database. Check your settings including the MySQL server, username, and password and try again.");
                if(!(mysql_select_db($db[name],$dbc))) $this->error("paFileDB was able to connect to the MySQL database, but was unable to select the database <b>$db[name]</b> to use.");
    }
}
$pafiledb_sql = new pafiledb_sql;
?>

Verwijderd

Topicstarter
Voor nog de extra info... PHP Version 4.4.0-dev draait op die bak

  • sjroorda
  • Registratie: December 2001
  • Laatst online: 10:51
Juist, en wat vul jij in op r. 13?

  • Glimi
  • Registratie: Augustus 2000
  • Niet online

Glimi

Designer Drugs

(overleden)
Hmmz ik zie niet helemaal wat er P&W (zelf programmeren) aan dit vraagstuk is. Mij lijkt het eerder een probleem met een Softwarepakket. Dat is ook de reden dat ik dit topic naar SA move.

Bedenk wel dat daar andere policy's gelden. Kijk zelf na of je topic aan die policy's voldoet, en zo niet pas het dan zelf aan. :)

Verwijderd

Topicstarter
Ik vul daar het goede IP in ;) Zoals ik daar heb aangegeven... En dat is de goede informatie :)

Het punt is, dat op het moment dat ie gaat connecten naar die DB... Die gewoon het ip van www.exsilium.com pakt, in plaats van het IP wat ik daar invul... Met andere woorden, hij connect local zeg maar.

  • sjroorda
  • Registratie: December 2001
  • Laatst online: 10:51
Doe eens in je functie Connect() een echo $db[host]? Ik heb het idee dat dan die array wordt overschreven eer je hem gebruikt.
Wat je zou kunnen doen is de code wijzigen en geen parameter aan de functie meegeven, maar hem global $db laten ophalen.

Verwijderd

Topicstarter
tot nu toe nog geen succes, zelfs als ik zorg dat ie geen gebruik meer maakt van die variables dan nog connect ie local naar die klote database :P

( Iemand anders heeft hetzelfde probleem, kennelijk kan je niet op een simpele manier met dit script connecten naar een DB buiten je eigen host )

[ Voor 34% gewijzigd door Verwijderd op 20-03-2003 11:44 ]


  • WiNlUx
  • Registratie: April 2002
  • Laatst online: 12-09-2023
Verwijderd schreef op 20 March 2003 @ 11:27:
Ik vul daar het goede IP in ;) Zoals ik daar heb aangegeven... En dat is de goede informatie :)

Het punt is, dat op het moment dat ie gaat connecten naar die DB... Die gewoon het ip van www.exsilium.com pakt, in plaats van het IP wat ik daar invul... Met andere woorden, hij connect local zeg maar.
Zo'n probleem had ik ook. Toen besefte ik dat ik een aparte pc in me netwerk heb dat mijn sql draait :+

Verwijderd

Topicstarter
Ja maar WiNlUx :) Die SQL rotzooi draait op een totaal andere bak, totaal ergens anders :)
Pagina: 1