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!