Thread subject: pHpFusion Nederlands (BE|NL) » Ondersteuning, Themas, Infusies, Modificaties en Installatie :: [Opgelost] Externe database connectie

Posted by Maikie on 20 August 2009, 13:48
#1

Hoi Allemaal,

Enige tijd geleden heb ik mij hier geregistreerd en ben ik op dat moment goed geholpen met mijn probleem.

Nu na enige tijd php fusion te hebben gebruikt loop ik tegen een volgend probleem aan.

Ik heb een php script liggen welke ik graag aan de pagina zou willen toevoegen, echter lukt dit niet helemaal... De verbinding met de externe database word gemaakt en de gegevens worden ook op de juiste plaats weergegeven maar over de hele site verspreid krijg ik dan foutmeldingen zoals;

mijndatabasenaam.fusion_site_links cannot be found etc etc, je kunt het zelf bekijken op deze pagina

http://www.euromillionsgoep.nl/lineage/viewpage.php?page_id=5

Weet iemand hoe ik dit probleem kan oplossen?

Edited by Steff on 20 August 2009, 17:39

Posted by stevendc on 20 August 2009, 15:58
#2

als je extern naar een database wilt linken is heel simpel maar let ook op.

Na de meeste fusion installaties wordt een een prefix opgegeven bij databases.

eg: fusion_dbnaam

Ben je zeker dat deze juist staat?

MVG

Posted by Maikie on 20 August 2009, 16:20
#3

Uhm, heb zel fniet zoveel verstand van php enzo, maar dit heb ik samen met iemand gemaakt.

Dit is de connectie


$connection = mysql_connect ( 'mijn ip', 'usernaam', 'pass' );
$db = mysql_select_db ( 'l1jdb', $connection );

l1jdb is de naam van de database op mijn computer waar dus verbinding mee gemaakt word.

Het resultaat word ook weergegeven maar ook de eerder genoemde meldingen dat sommige tables niet bestaan.

Posted by Steff on 20 August 2009, 16:29
#4

Het probleem is dat je vanaf dan een nieuwe database connectie begint. Waardoor de scripts na jouw scripts ook verdergaan vanaf die connectie.

Zelf ken ik niet veel van mysql connecties , maar probeer eens die connectie te sluiten, . Als dat ook niet lukt, open dan opnieuw de vorige connectie. (Staat in maincore.php).

Posted by Maikie on 20 August 2009, 16:34
#5

Dat is de enige inhoud die ik op een custom page aanmaak, die oude connectie zou dan toch automatisch toegevoegd moeten worden? Als ik er namelijk alleen maar text op zou zetten krijg ik ook geen foutmeldingen.

Maar ik zal het eens bespreken of ik hem niet kan sluiten ofzo na de echo's die hij allemaal moet weergeven.

Posted by Steff on 20 August 2009, 16:40
#6

Als jij een nieuwe connectie aangaat met een externe mysql host. Dan zal hij die connectie blijven nemen tot je deze afsluit.
Begrijp je ?
Hij zal vanaf dat punt altijd die verbinding gebruiken en aangezien de phpfusion database daar niet op staat, zal hij errors weergeven.

Posted by Maikie on 20 August 2009, 16:50
#7

Ik heb op internet deze code ervoor gevonden

mysql_close($connect);

Als ik die er echter bij zet krijg ik deze foutmelding;

Warning: mysql_close(): supplied argument is not a valid MySQL-Link resource in /home/maikel/domains/euromillionsgoep.nl/public_html/lineage/connect1.php on line 55

EDIT:

met deze doet hij het wel, nu nog even testen in php fusion

mysql_close($connection);

EDIT:

Nu is het deze foutmelding op de php fusion site

Access denied for user 'apache'@'localhost' (using password: NO)

Edited by Maikie on 20 August 2009, 16:54

Posted by Steff on 20 August 2009, 16:59
#8

En als je gewoon mysql_close(); gebruikt.
En daarna metteen :
// Establish mySQL database connection
$link = dbconnect($db_host, $db_user, $db_pass, $db_name);

Posted by Maikie on 20 August 2009, 17:06
#9

Notice: Undefined variable: localhost in /home/maikel/domains/euromillionsgoep.nl/public_html/lineage/administration/custom_pages.php(88) : eval()'d code on line 68

Notice: Undefined variable: --------------- in /home/maikel/domains/euromillionsgoep.nl/public_html/lineage/administration/custom_pages.php(88) : eval()'d code on line 68

Notice: Use of undefined constant --------------- - assumed '---------------' in /home/maikel/domains/euromillionsgoep.nl/public_html/lineage/administration/custom_pages.php(88) : eval()'d code on line 68

Notice: Use of undefined constant --------------- - assumed '---------------' in /home/maikel/domains/euromillionsgoep.nl/public_html/lineage/administration/custom_pages.php(88) : eval()'d code on line 68
Unable to establish connection to MySQL
1045 : Access denied for user 'apache'@'localhost' (using password: NO)


Gecencureerd door Jeepers1993: Bevat Database, Username & Wachtwoord.

Edited by Steff on 20 August 2009, 17:18

Posted by Maikie on 20 August 2009, 17:08
#10

Ik heb die code een klein beetje aangepast, ik krijg nu geen foutmeldingen meer van kan deze en deze database niet vinden enzo, maar wel dit

Unable to establish connection to MySQL
1045 : Access denied for user 'apache'@'localhost' (using password: NO)

EDIT:

We komen steeds verder en verder.....

Ik heb nu dezelfde connect code gebruikt als in het begin van het script, alleen dan de gegevens aangepast zodat hij met de local db connect. Dit is nu gelukt en ik krijg geen foutmeldingen meer.

Echter Het is niet echt een panel geworden, zie www.euromillionsgoep.nl/lineage links onder

Er zit niks omheen..

Edited by Maikie on 20 August 2009, 17:21

Posted by Steff on 20 August 2009, 17:21
#11

Zelf ken ik niet veel van database connecties.
Misschien helpt hetvolgende:

Quote

For example, you are opening two separate connections to two different databases (but on the same host, and with the same user and password):

$db1 = mysql_connect($dbhost, $dbuser, $dbpass);
$rv = mysql_select_db($dbname1, $db1);
$db2 = mysql_connect($dbhost, $dbuser, $dbpass);
$rv = mysql_select_db($dbname2, $db2);

At this point, both $db1 and $db2 will have selected the database named by $dbname2.

The workaround is to require that the second MySQL connection is new:

$db1 = mysql_connect($dbhost, $dbuser, $dbpass);
$rv = mysql_select_db($dbname1, $db1);
$db2 = mysql_connect($dbhost, $dbuser, $dbpass, TRUE);
$rv = mysql_select_db($dbname2, $db2);

Now, $db1 should have selected $dbname1, and $db2 should have selected $dbname2.

Posted by Maikie on 20 August 2009, 17:28
#12

Hij werkt nu eigenlijk wel zoals het hoort, alleen zie je er geen panel omheen verschijnen

Posted by Steff on 20 August 2009, 17:32
#13

openside("Trlaalala");

// inhoud

closeside();

Edited by Steff on 20 August 2009, 17:32

Posted by Maikie on 20 August 2009, 17:38
#14

En dat is hem helemaal!!!!

Heel erg bedankt!