[PHP/MySQL] Werken niet samen

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Bastiaan
  • Registratie: November 2002
  • Laatst online: 17-09 17:36

Bastiaan

Bas·ti·aan (de, m)

Topicstarter
Ik ben de hele ochtend al bezig om PHP met MySQL te laten samenwerken middels IIS6 op Windows Server 2003. Daarbij heb ik gebruik gemaakt van exáct deze stappen: http://www.atksolutions.c...nstall_php_mysql_iis.html.

De installatie van PHP is succesvol, de installatie van MySQL is ook succesvol. Alleen bij de koppeling gaat het mis. Wanneer ik (op dit moment voor het testen) de install van Joomla wil starten krijg ik doodleuk de melding dat SQL niet wordt ondersteund.

Nu ben ik dus ook al aan het Google-en geslagen en heb ook de search geraadpleegd. Daarbij zijn diverse resultaten naar boven gekomen (zoals [PHP] Mysql support op PHP 5.x) maar dit soort oplossingen hebben helaas niets geholpen, even los van het feit dat de meeste instellingen al goed stonden.

Iemand dé gouden tip?

Acties:
  • 0 Henk 'm!

  • Joolee
  • Registratie: Juni 2005
  • Niet online
Kopieer libmysql.dll naar je system32 folder en controlleer of je php_mysql wel aanwezig is en op de juiste manier in je config staat.

Acties:
  • 0 Henk 'm!

  • Bastiaan
  • Registratie: November 2002
  • Laatst online: 17-09 17:36

Bastiaan

Bas·ti·aan (de, m)

Topicstarter
De libmysql.dll stond er al in, maar is (just in case) opnieuw gekopieerd. php_mysql is aanwezig en staat in de config ook goed ("extension=php_mysql.dll"). Services gestopt/gestart en de server herstarten maken geen verschil helaas.

Bij het opvragen van de phpinfo staat er ook netjes dat de extensions gevonden worden in C:\PHP\ext.

[ Voor 12% gewijzigd door Bastiaan op 26-10-2009 12:42 ]


Acties:
  • 0 Henk 'm!

  • pedorus
  • Registratie: Januari 2008
  • Niet online
Doe je niet gewoon iets fout bij het installeren van Joomla?

Het lijkt erop alsof je de instructies niet hebt gelezen, uit Joomla's INSTALL.PHP:
While we have reports that Joomla! works on IIS server we recommend Apache
for running Joomla! on Windows.
;)

[ Voor 7% gewijzigd door pedorus op 26-10-2009 13:01 . Reden: link ]

Vitamine D tekorten in Nederland | Dodelijk coronaforum gesloten


Acties:
  • 0 Henk 'm!

  • Confusion
  • Registratie: April 2001
  • Laatst online: 01-03-2024

Confusion

Fallen from grace

Dat is eigenlijk wel een redelijk belachelijke instructie. Een CMS hoort volledig onafhankelijk van de gebruikte webserver te zijn. Zolang die webserver er maar voor zorgt dat .php pagina's door een PHP interpreter gehaald worden en geen rare fratsen met HTTP headers uithaalt, dan hoort het CMS daar geen verschil in te merken.

[ Voor 20% gewijzigd door Confusion op 26-10-2009 13:06 ]

Wie trösten wir uns, die Mörder aller Mörder?


Acties:
  • 0 Henk 'm!

  • Bastiaan
  • Registratie: November 2002
  • Laatst online: 17-09 17:36

Bastiaan

Bas·ti·aan (de, m)

Topicstarter
Confusion schreef op maandag 26 oktober 2009 @ 13:04:
Dat is eigenlijk wel een redelijk belachelijke instructie. Een CMS hoort volledig onafhankelijk van de gebruikte webserver te zijn. Zolang die webserver er maar voor zorgt dat .php pagina's door een PHP interpreter gehaald worden en geen rare fratsen met HTTP headers uithaalt, dan hoort het CMS daar geen verschil in te merken.
Die mening heb ik ook.
Echter; het is wel een reden om het eens met Apache te proberen. Al is het maar om het één en ander uit te sluiten.

Acties:
  • 0 Henk 'm!

  • Remus
  • Registratie: Juli 2000
  • Laatst online: 15-08-2021
Confusion schreef op maandag 26 oktober 2009 @ 13:04:
Dat is eigenlijk wel een redelijk belachelijke instructie. Een CMS hoort volledig onafhankelijk van de gebruikte webserver te zijn. Zolang die webserver er maar voor zorgt dat .php pagina's door een PHP interpreter gehaald worden en geen rare fratsen met HTTP headers uithaalt, dan hoort het CMS daar geen verschil in te merken.
Kan ook gewoon te maken hebben met support/test kosten. Testen op één platform (even OS weggelaten) is natuurlijk makkelijker dan alle combinaties van webservers te supporten/testen.

Acties:
  • 0 Henk 'm!

  • Bastiaan
  • Registratie: November 2002
  • Laatst online: 17-09 17:36

Bastiaan

Bas·ti·aan (de, m)

Topicstarter
Met Apache lijkt het ook niet juist te werken. Ik vermoed dat het toch ergens in een configuratie-issue zit van MySQL.

In de genoemde tutorial in de TS staat een stuk script:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?PHP
//remember to change the password to whatever you set
//it to in mysql instance configuration

//first parameter is server name, 2nd username 'root', 3rd is password
$rst = @mysql_connect("localhost","root","xxxxxxxx");

if (!$rst){
     echo( "<p>Unable to connect to database manager.</p>");
       die('Could not connect: ' . mysql_error());
     exit();
} else {
  echo("<p>Successfully Connected to MySQL Database Manager!</p>");
}

if (! @mysql_select_db("mysql") ){
     echo( "<p>Unable to  connect database...</p>");
     exit();
} else {
  echo("<p>Successfully Connected to Database 'MYSQL'!</p>");
}
?>


Wanneer ik op de server dit bestand (test_mysql.php) open, zou ik moeten zien of er een succesvolle verbinding gemaakt kan worden met de database. Het scherm wat ik krijg is gewoon blanco. Niks meer dan dat. Wellicht dat er dan bij iemand een belletje rinkelt? De database bestaat gewoon. Middels de MySQL Administrator is deze ook gewoon benaderbaar.

Acties:
  • 0 Henk 'm!

  • HuHu
  • Registratie: Maart 2005
  • Niet online
Staat je error_reporting aan en op E_ALL | E_STRICT ?

Acties:
  • 0 Henk 'm!

  • Pin0
  • Registratie: November 2002
  • Niet online
Doet PHP het überhaupt wel?

code:
1
2
3
<?php
echo 'Hello World';
?>

Mijn Lego Mocs - LEGO idea: The Motorcycle Garage


Acties:
  • 0 Henk 'm!

  • kwaakvaak_v2
  • Registratie: Juni 2009
  • Laatst online: 02-06 12:29
Pin0 schreef op maandag 26 oktober 2009 @ 15:35:
Doet PHP het überhaupt wel?

code:
1
2
3
<?php
echo 'Hello World';
?>
wat denk jij dan dat die melding genereerd dat mysql niet wordt ondersteunt?


ontopic, ik gok dat joomla checked of een bepaalde extensie geladen is in de $_SERVER vars ofzo, en die zijn onder een IIS installatie volgens mij echt anders dan onder een apache installatie. Beetje suf van Joomla, maar aan de andere kant.. het is wel joomla ;)

Driving a cadillac in a fool's parade.


Acties:
  • 0 Henk 'm!

  • xiD
  • Registratie: Oktober 2003
  • Laatst online: 07:08

xiD

12345

Als php het doet kijk dan is of je via phpinfo(); kan zien of mysql geladen wordt.

67890


Acties:
  • 0 Henk 'm!

  • Bastiaan
  • Registratie: November 2002
  • Laatst online: 17-09 17:36

Bastiaan

Bas·ti·aan (de, m)

Topicstarter
Nee, staat wel aan, maar op E_ALL & ~E_NOTICE.

Ik heb het in ieder geval aangepast en ben nu aan het herstarten. Eens kijken wat dat oplevert.

Acties:
  • 0 Henk 'm!

  • Pin0
  • Registratie: November 2002
  • Niet online
kwaakvaak_v2 schreef op maandag 26 oktober 2009 @ 15:38:
[...]


wat denk jij dan dat die melding genereerd dat mysql niet wordt ondersteunt?
knip..
De TS zei dat hij bij het testscript gewoon een blanco pagina kreeg, aan dat script te zien moet er altijd uitvoer komen en dat was niet het geval, vandaar...

Maar het zou inderdaad goed aan joomla kunnen liggen

Mijn Lego Mocs - LEGO idea: The Motorcycle Garage


Acties:
  • 0 Henk 'm!

  • Bastiaan
  • Registratie: November 2002
  • Laatst online: 17-09 17:36

Bastiaan

Bas·ti·aan (de, m)

Topicstarter
Pin0 schreef op maandag 26 oktober 2009 @ 15:43:
[...]

De TS zei dat hij bij het testscript gewoon een blanco pagina kreeg, aan dat script te zien moet er altijd uitvoer komen en dat was niet het geval, vandaar...

Maar het zou inderdaad goed aan joomla kunnen liggen
Er komt inderdaad nog (steeds) geen uitvoer. Ik ben overigens niet van mening dat het tot zo ver aan Joomla ligt. Ik krijg namelijk geeneens beeld met dat testscript (de voorbereidingsfase) voordat Joomla (wat dan de daadwerkelijke testfase zou zijn) überhaupt in beeld komt. Het zou inderdaad wél zo kunnen zijn dat Joomla naar aanleiding van deze problemen niet aan de gang komt, maar dat is een ander probleem. :)

In dit geval is het Joomla, maar de 'applicatie' welke uiteindelijk draait moet natuurlijk komen te staan op een werkende configuratie van MySQL. Pas als MySQL werkt zoals het hoort bekijk ik wat er getest/gedraaid wordt.

[ Voor 13% gewijzigd door Bastiaan op 26-10-2009 16:00 ]


Acties:
  • 0 Henk 'm!

  • Bastiaan
  • Registratie: November 2002
  • Laatst online: 17-09 17:36

Bastiaan

Bas·ti·aan (de, m)

Topicstarter
xiD schreef op maandag 26 oktober 2009 @ 15:39:
Als php het doet kijk dan is of je via phpinfo(); kan zien of mysql geladen wordt.
Nee, over geladen MySQL-onderdelen wordt geen woord gerept. Ik kan ook niet direct vinden waar ik die links tussen PHP en MySQL nog eventueel verder kan leggen.

Acties:
  • 0 Henk 'm!

  • xiD
  • Registratie: Oktober 2003
  • Laatst online: 07:08

xiD

12345

Dat zou betekenen dat er toch iets niet goed staat in je php.ini of dat de bestanden voor mysql niet op de goede plaats staan.

Ik weet niet of je IIS ook wil gebruiken voor andere dingen buiten php / mysql om anders is het misschien het overwegen waard om IIS uit te schakelen en over te stappen op een pakket als WAMP.

67890


Acties:
  • 0 Henk 'm!

  • HuHu
  • Registratie: Maart 2005
  • Niet online
Haal de @ eens weg op regels 6 en 16. Zie je dan nog steeds niets?

[ Voor 5% gewijzigd door HuHu op 26-10-2009 16:38 ]


Acties:
  • 0 Henk 'm!

  • pedorus
  • Registratie: Januari 2008
  • Niet online
HuHu schreef op maandag 26 oktober 2009 @ 16:38:
Haal de @ eens weg op regels 6 en 16. Zie je dan nog steeds niets?
Vrij brilliant om "@" op te nemen in een testscript inderdaad. Dan wordt die fatal foutmelding namelijk niet weergegeven en kun je dus gewoon niks terugkrijgen.. Gezien het verdere verloop moet "mysql_connect" wel een fatal hebben gegenereerd.

Vitamine D tekorten in Nederland | Dodelijk coronaforum gesloten


Acties:
  • 0 Henk 'm!

  • Bastiaan
  • Registratie: November 2002
  • Laatst online: 17-09 17:36

Bastiaan

Bas·ti·aan (de, m)

Topicstarter
HuHu schreef op maandag 26 oktober 2009 @ 16:38:
Haal de @ eens weg op regels 6 en 16. Zie je dan nog steeds niets?
Ook dát maakt geen verschil. Blanco scherm it is.
xiD schreef op maandag 26 oktober 2009 @ 16:28:
Dat zou betekenen dat er toch iets niet goed staat in je php.ini of dat de bestanden voor mysql niet op de goede plaats staan.

Ik weet niet of je IIS ook wil gebruiken voor andere dingen buiten php / mysql om anders is het misschien het overwegen waard om IIS uit te schakelen en over te stappen op een pakket als WAMP.
Dit ga ik nu doen. Ik wordt het wel een beetje beu om maar geen stap vooruit te komen. :) Zo! Schone lei!

Acties:
  • 0 Henk 'm!

  • Cartman!
  • Registratie: April 2000
  • Niet online
Of display_errors() stond uit, dan kun je error_reporting op E_ALL|E_STRICT zetten maar dan zie je nog niks.

Acties:
  • 0 Henk 'm!

  • Bastiaan
  • Registratie: November 2002
  • Laatst online: 17-09 17:36

Bastiaan

Bas·ti·aan (de, m)

Topicstarter
Met Wamp werkt alles ineens (bijna) zoals het hoort, zonder ook maar zelf 1 instelling aangepast te hebben. Alleen even de puntjes op de i zetten en dan laat ik het daarbij. IIS is geen must om te werken, dus ik beschouw dit als een acceptabele oplossing.

Acties:
  • 0 Henk 'm!

  • HuHu
  • Registratie: Maart 2005
  • Niet online
Weet je zeker dat je geen Fatal error: Call to undefined function mysql_connect() krijgt ergens? Of stiekem in een IIS log? En als je alle regels in commentaar zet en ze vervolgens één voor één weer toevoegt aan je script, bij welke regel faalt je script dan?

Dus dan doe je zoiets:

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
//remember to change the password to whatever you set
//it to in mysql instance configuration

//first parameter is server name, 2nd username 'root', 3rd is password
//$rst = @mysql_connect("localhost","root","xxxxxxxx");

//if (!$rst){
//     echo( "<p>Unable to connect to database manager.</p>");
//       die('Could not connect: ' . mysql_error());
//     exit();
//} else {
//  echo("<p>Successfully Connected to MySQL Database Manager!</p>");
//}

//if (! @mysql_select_db("mysql") ){
//     echo( "<p>Unable to  connect database...</p>");
//     exit();
//} else {
//  echo("<p>Successfully Connected to Database 'MYSQL'!</p>");
//}

echo 'HOI';
En dan voeg je steeds een regel toe, totdat de HOI niet meer verschijnt. Dan weet je waar het mis gaat, ook al zie je geen foutmelding.

Acties:
  • 0 Henk 'm!

  • Bastiaan
  • Registratie: November 2002
  • Laatst online: 17-09 17:36

Bastiaan

Bas·ti·aan (de, m)

Topicstarter
Waarom dit gisteren niet werkte weet ik niet. Ik heb ook nog wat andere drempeltjes moeten nemen om fatsoelijk met MySQL aan de gang te gaan.

Het hele probleem is inmiddels opgelost door een extra (nieuwe) gebruiker aan te maken en deze credentials te gebruiken. De rechten zijn idem aan het root-account maar nu werkt alles zonder problemen, ook bovenstaand script.
Pagina: 1