webForumDet fria alternativet

ansluta till mysql

12 svar · 358 visningar · startad av arvjos

arvjosMedlem sedan juni 2002129 inlägg
#1

Hejsan

Har installerat mysql 4 och den verkar funka. Jag har stoppljuset nere vid klockan och den lyser grönt. Jag har skapat en databas med en tabell men när jag ska ansluta till mysql från en php sida med följande rad:

$open = mysql_connect("localhost", "mysql.default_username", "mysql.default_password");

får jag detta felet:

Warning: mysql_connect() [function.mysql-connect]: Can't connect to MySQL server on 'localhost' (10061) in C:\Webbserver\php\test.php on line 3

Vad är det f ör fel?

Tacksam för hjälp

/Arvid

GrodanBollMedlem sedan sep. 2001788 inlägg
#2

Anger du användare och lösenord i Apaches configfil så ska du inte skriva någe i mysql_connect

Delciterat från http://www.php.net/manual/sv/function.mysql-connect.php:

Graham_Rule at ed dot ac dot uk
14-May-2003 09:43

Another solution to the security problems of putting usernames and passwords into scripts. I haven't found this documented anywhere else so thought I'd suggest it for the online documentation. ........

Don't put passwords for mysql into scripts which may be read by any user on the machine. Instead put them into an Apache configuration file and make sure that it is not world-readable. (Apache reads its main config files as root.)

For example, add this to your httpd.conf (and chmod it to 600 or 660) then tell your apache to reload itself (apachectl graceful).

<Directory /var/www/html/mydatabase>
php_value mysql.default_user fred
php_value mysql.default_password secret
php_value mysql.default_host server.example.com
</Directory>

Then all you need in your PHP code is

$handle = mysql_connect() || die(mysql_error());

The passwords etc will only be picked up by scripts running in the named directory (or a sub-directory). The same may be done for virtualhosts etc.

Testa om det fungerar.

arvjosMedlem sedan juni 2002129 inlägg
#3

...

hjälper inte...dessutom kör jag med win XP och IIS. Funkar inte. Nån som har nåt annat förslag?

GrodanBollMedlem sedan sep. 2001788 inlägg
#4

'mysql.default_username' och 'mysql.default_password är alltså' inga variabler utan är det användarnamn och lösenord du har till mySQL?

arvjosMedlem sedan juni 2002129 inlägg
#5

det ska vara variabler...jag vet inte vad mitt anv och lösen är så det är därför. Har testat med att lämna dem tomma och att ta bort dem helt men hjälper inte...

kan man ta reda på anv och pass på nåt sätt?

Mc FettoMedlem sedan nov. 20022 355 inlägg
#6

Men om du inte vet anv o lösen så är det ju omöjligt att ansluta!

arvjosMedlem sedan juni 2002129 inlägg
#7

hur kan jag ta reda på dem då?

Mc FettoMedlem sedan nov. 20022 355 inlägg
#8

mm när du skapade databasen angav du väl anv o lösen? Annars kan du ju prova att skriva:

$open = mysql_connect("localhost", "", "");

arvjosMedlem sedan juni 2002129 inlägg
#9

kommer inte ihåg vad jag skrev där. Har installerat om det nån gång oxå och de andra gångerna har jag inte fått välja anv och lösen...

har testat lämnat anv och lösen tom men det funkar inte.

måste det vara det som det är fel på då. Kolla felmesset. Kan det inte vara nåt annat fel?

Mc FettoMedlem sedan nov. 20022 355 inlägg
#10

Vet inte, men om det nu ska vara variabler så ska det vara :
$open = mysql_connect("localhost", $xxx, $xxx);

Istället.

Mc FettoMedlem sedan nov. 20022 355 inlägg
#11

Prova att göra en ny databas och skriv in namn o lösen, lägg det sen innanför situationstecknen

PeleMedlem sedan juli 2000415 inlägg
#12

En fråga bara?

Om du kör Mysql och har "trafikljuset" nere i
aktivitetsfältet, ta upp det och titta i "my.iniSetup".

Där står väl både ditt användarnamn o lösenord??

Om du nu inte har olika för olika databaser??

Mvh/Pele

ironheadMedlem sedan mars 20011 346 inlägg
#13

blir det inte som "standard"

.....("localhost", "root","");

135 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)