Avatar billede philip_n Nybegynder
01. december 2005 - 19:23 Der er 13 kommentarer

php, MySQL på iis

Jeg ved, at dette spørgsmål er stillet 1000 gange før, men ingen af trådene har givet svar, der virkede hos mig.
Heller ikke Google lader til at være min ven her.

Jeg forsøger at få php til at snakke med MySQL.
Da jeg også har nogle ASP-sider, _skal_ det være under IIS.

Jeg har:
php 4.4.1 (hentet fra http://www.php.net/downloads.php - "PHP 4.4.1 zip package [8,082Kb] - 31 Oct 2005")
MySQL 4.1
MyODBC (Til asp-siderne)

ASP'en virker fint sammen med både Access og MySQL
PHP'en kører også fint uden database-connection.

Men i dét øjeblik, jeg vil connecte til en database, går den kold.

Kode:
mysql_connect("localhost","root","")or die (mysql_error());

og får fejlen:
Warning: mysql_connect(): Access denied for user 'root'@'localhost' (using password: NO) in c:\inetpub\wwwroot\php_test\test1.php on line 17
Access denied for user 'root'@'localhost' (using password: NO)

Indsætter jeg et password, får jeg en anden fejlmeddelelse:
Client does not support authentication protocol requested by server;

Min php-info kan ses her:
http://www.hitsurf.dk/privat/phpinfo.html

Og ja! Jeg HAR været inde og rettet i config.inc.php-filen
Avatar billede coderdk Praktikant
01. december 2005 - 19:35 #1
Du skal bruge mysqli_connect osv, da du bruger mysql 4.1, det client library som PHP bruger til mysql_* funktionerne, er til mysql 4.0.x
Avatar billede coderdk Praktikant
01. december 2005 - 19:35 #2
(Google er din ven, hvis du f.eks. søger på "Client does not support authentication protocol requested by server")
Avatar billede philip_n Nybegynder
01. december 2005 - 19:38 #3
Prøvede lige det. Får så denne meddelelse i stedet:
Fatal error: Call to undefined function: mysqli_connect()
Avatar billede coderdk Praktikant
01. december 2005 - 19:50 #4
Du skal rette din php.ini kig efter extension=php_mysqli.dll - det er muligt du også skal kopiere den over i system32 eller sådan noget...
Avatar billede philip_n Nybegynder
01. december 2005 - 19:56 #5
Prøvede det lige. Men der findes ikke nogen fil, der hedder php_mysql.dll eller php_mysqli.dll noget sted på min computer. :-/
Avatar billede philip_n Nybegynder
01. december 2005 - 20:54 #6
Prøvede også lige at installere MySQL 4.0.26 i stedet, men det blev det bare værre af.
Avatar billede coderdk Praktikant
01. december 2005 - 21:18 #7
Hmm weird - Så kan jeg nok ikke hjælpe - Jeg har ikke meget erfaring med WAMP... Jeg er mest til linux :)
Avatar billede bgo Nybegynder
02. december 2005 - 01:03 #8
philip:

tja, det virker jo hos mig. Det ser ikke rigtig ud som om det er lykkedes dig at få ISAPI til at køre - under alle omstændigheder bemærker jeg en forskel på vores phpinfo(). Som du kan se på http://www.esea.dk/test.php har jeg en sektion under "PHP Core" der hedder "ISAPI". Som jeg har nævnt, fik jeg det først til at virke da jeg gik over fra CGI-udgaven til ISAPI-udgaven.

Jeg har disse dll'er aktive i php.ini:
extension=php_dbx.dll
extension=php_gd2.dll
extension=php_mime_magic.dll
extension=php_openssl.dll
extension=php_zip.dll

og det eneste jeg umiddelbart kan gennemskue er, at du måske kunne have brug for den med dbx (jeg er ikke ekspert ;)) - ud fra den betragting at den ikke er nævnt i din phpinfo() i kombination med at den hos mig nævner noget om database-kompatibilitet med mysql som én af dem.

Som du kan se bruger jeg PHP 4.3.10, og så bruger jeg MySQL 4.1.10-nt. Nåja, PHP-MySQL og Norton Internet Security kan iøvrigt heller ikke sammen (kan ikke huske om du bruger NIS)

Måske er der noget af det her du kan bruge. Jeg sloges selv med det et par uger for at få det til at virke, og ved at det ikke er ligetil - og den dag jeg skal skifte maskine skal jeg nok bruge hammer lang tid på det igen.
Avatar billede philip_n Nybegynder
02. december 2005 - 09:20 #9
Prøvede lige at aktivere de nævnte dll'er. Jeg har godt nok fået et par sektioner mere på min php-info (dbx og dba), men ellers same shit.

Det er også et par uger siden, jeg begyndte.

PS. Jeg har p.t. ingen antivirus-programmer kørende. Har lige geninstalleret alt på min computer for et par uger siden, og har så valgt ikke at installere noget, der kan forstyrre serveropsætningen, før jeg har fået det til at virke.
(Måske aldrig, men så har OpenSource-folket da bare fået omvendt dén person mindre, indtil de lærer at gøre tingene mere brugervenligt)
Avatar billede philip_n Nybegynder
06. december 2005 - 09:16 #10
Jeg opgiver for denne gang og lukker derfor tråden.
Man skal åbenbart have en højere ingeniør-uddannelse for at få det lort til at virke.
Avatar billede philip_n Nybegynder
06. december 2005 - 09:19 #11
Nå! Ikke engang dét kan jeg finde ud af.
Nå, men jeg er jo også bare en ufaglært arbejder.
Avatar billede philip_n Nybegynder
08. december 2005 - 18:16 #12
YEEES! Så lykkedes det.
Jeg afinstallerede MySQL 4.1 og installerede i stedet MySQL 3.23.54 herfra:
http://downloads.mysql.com/archives.php?p=mysql-3.23&v=3.23.54 (og valgte dén, der stod under "Microsoft Windows").

Derefter åbnede jeg filen /mysql/bin/winmysqladmin.exe, og så var det slut med fejlmeldinger. Også phpMyAdmin ser ud til at virke.
Avatar billede coderdk Praktikant
08. december 2005 - 19:32 #13
Jeg TROR du bare kunne have nøjes med at downloade 4.0.x herfra: http://downloads.mysql.com/archives.php?p=mysql-4.0&o=-win :)
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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