Just nu i M3-nätverket
Jump to content

php+mysql


benkebus

Recommended Posts

har följande: W2Kp + IIS + PHP + MySQL

hur kolla att php kan läsa databas

kan *ansluta* med pgm typ MySQL Front

localhost root 3306 till nån av de 3 databaser jag har

kan däremot ej göra en *anslutning* via php

 

Finns det nåt enkelt sätt att kolla att jag lokalt har kontakt med databser i mysql via php? vill kunna köra mina php skript med sql frågor helt lokalt innan jag implementerar dessa ute på nätet.

 

tacksam för hjälp

 

/benkebus

 

Link to comment
Share on other sites

testa:

<?

mysql_connect("localhost", "root", "3306") or die ("Can't connect to database");

mysql_select_dd("$databasnamn") or die ("Can't select database");

 

Link to comment
Share on other sites

Du använder mysql_connect för att ansluta till databasen. Enligt dokumentationen på php.net så är syntaxen:

 

resource mysql_connect ( [string server [, string username [, string password [, bool new_link [, int client_flags]]]]])

 

Om en anslutning inte kan upprättas fås värdet false ifrån mysql_connect. Glöm inte att du efter anslutningen måste välja databas med mysql_select_db

 

- niklas

- http://www.datorguide.com

 

Link to comment
Share on other sites

Hej på er

 

Har försökt att köra *by the book* men får ingen kontakt. Händer inte ett skvatt förutom att *timglaset* kommer fram och sen timar det hela ut efter ett bra tag, 10 exekveringar resulterar i 403 nånting då för många är *inloggade* på IISen.

 

PHP:et fungerar på IISen men så fort jag har en mysql_nånting i php:et så dör/hänger sig allt!

 

Kan administrera databserna via MySQL Front.

Har testat PHPn enligt bruxen=OK (php.exe -i).

 

Nån annan idé på sätt att testa??

 

 

/benkebus

 

Link to comment
Share on other sites

Kollat att eventuell mysql-"extension" är laddad?

Titta i php.ini under "extensions". Finns det en rad med mysql.dll (eller liknande)? Är den bortkommenterad (raden inleds med ett semikolon ";")?

 

Ta i så fall bort semikolonet, och starta om webbservern (måste alltid starta om efter ändringar i php.ini).

 

Fungerar det fortfarande inte?

 

Link to comment
Share on other sites

Hej listvänner,

 

;Windows Extensions

;Note that MySQL and ODBC support is now built in, so no dll is needed for it.

 

ovanstående i min php.ini

 

funkar fortfarande inte

 

/benkebus

 

Link to comment
Share on other sites

Hej qwerty99,

 

Har f-secure + en router med brandvägg.

 

är min router inblandad i *intern* trafik?

 

 

/benkebus

 

Link to comment
Share on other sites

gör en connect via php och kolla din mysql status via terminalen.

 

kolla även mha phpinfo(); att mysqlstödet verkligen finns på plats i din php-installation.

 

Link to comment
Share on other sites

Hej fltman,

 

Detta visar phpinfot:

MySQL Support enabled

Active Persistent Links 0

Active Links 0

Client API version 3.23.49

 

Directive Local Value Master Value

mysql.allow_persistent On On

mysql.connect_timeout -1 -1

mysql.default_host no value no value

mysql.default_password no value no value

mysql.default_port no value no value

mysql.default_socket no value no value

mysql.default_user no value no value

mysql.max_links Unlimited Unlimited

mysql.max_persistent Unlimited Unlimited

mysql.trace_mode Off Off

 

/benkebus

 

 

Link to comment
Share on other sites

Jag känner inte till f-secure alls men jag vet att tex Norton Antivirus har en elak förmåga att blockera scripts i IIS så kolla upp om du har någon form av script blocking tjänst i f-secure eller stäng ned den helt och testa.

 

Du verkar ju prövat det mesta annat och just "hängningar" i IIS brukar ofta vara ett resultat av att något blockerar, förutsatt att MySQL kopplingen funkar annars vilket det ju tydligen gör (MySQLFront ...etc).

 

Bara en idé men du verkar ju testat allt annat.

 

[inlägget ändrat 2003-03-05 10:56:14 av qwerty99]

Link to comment
Share on other sites

Ok, fint så vad händer lite mer exakt när du gör din mysql_connect? Får du något felmeddelande eller händer helt enkelt ingenting?

 

om du upplever att ingenting händer och du får inget felmeddelande så testa med att göra ett script som lopar igenom lite frågor till mysql och öppna upp en terminal där du testar kommandot:

 

mysqladmin status

 

förhoppningsvis så ser du då hur antalet questions ökar allteftersom ditt script jobbar. Ser du inte det så är det problem med själva kommunikationen mellan mysql och php.

 

Link to comment
Share on other sites

 

 

 

mina vänner,

 

ska ge mig på att stänga av allt *skit* och testa vidare.

 

rapport kommer så snart jag testat!

 

tack så länge

 

/benkebus

 

Link to comment
Share on other sites

Jag känner inte till f-secure alls men jag vet att tex Norton Antivirus har en elak förmåga att blockera scripts i IIS så kolla upp om du har någon form av script blocking tjänst i f-secure eller stäng ned den helt och testa.

 

Det kan ju vara en idé att spana lite i IIS-loggarna. Se om det har trillat in några felmeddelanden där :)

 

 

 

.dune. - Godmorgon

---------------

Tempus fugit

 

Link to comment
Share on other sites

Hej fltman,

 

har testat med routern occ f-secure bortkopplade, samma problem kvartsår dvs att jag inget felmeddelande får.

 

kollat odbc kopplingen via excel = OK

 

det är http/php som inte lirar.

 

är inte så bevandrad i att skriva script i php och tar gärna emot scriptsnutt som kan kolla det du beskriver.

 

/benkebus

 

Link to comment
Share on other sites

Ok här får du ett litet fulhack som gör en mysql_connect och som sedan söker i en tabell i den valda databasen och den gör det 5000 gånger så då borde du hinna se att det ändrar sig i din mysqladmin status.

 

----------------- cut --------------------

<?

$database = "databasnamn";

$path = "";

$www_user = "foo";

$www_password = "bar";

 

mysql_connect("$path","$www_user","$www_password") OR DIE("Temporary error, please try again later. (unable to connect to database)");

mysql_select_db("$database") OR DIE ("Temporary error, please try again later. (unable to select database)");

 

for($i=0; $i<=5000; $i++)

{

$query = "SELECT * FROM foobar";

$result = mysql_query($query) OR DIE(mysql_error());

$rows = mysql_NumRows($result);

}

?>

 

------------------ cut ------------------

 

Link to comment
Share on other sites

Hej igen fltman,

 

snacka om att man börjar misströsta, inte ens det scriptet kommer nån vart, händer inte ett skit. måste ha nåt elände som sätter stopp hos mig. det borde ju vara hur enkelt som helst att få kontakt med mina data eftersom det bevisligen fungerar via odbc och *mysql front*.

 

tacksam för alla som bryr sig!

 

/benkebus

 

Link to comment
Share on other sites

Jaha, det var ju trist att höra. Jag har rotat lite och någonstans för något år sedan så var jag inblandad i en installation där man skull eköra mysql, php, asp och iis på samma burk och då krånglade just php-mysql kopplingen. Jag har ett svagt minne av att vi då upptyäckte en konflikt någonstans men kommer inte ihåg mer än så.

 

Kan det vara ett alternativ att slänga ut det stora buggpaketet iis och arbeta med apache istället? Vill du göra det riktigt, riktigt enkelt för dig så slänger du din php, mysql och iis och tankar istället hem phptriad från <http://sourceforge.net/projects/phptriad> så får du en fungerande installation av både apache, mysql och php för windows och det är hur enkelt som helst att trycka in den. Värt ett test så slipepr du allt krångel.

 

Link to comment
Share on other sites

Hej fltman,

 

Du har så rätt i dina tankar, jag har nu slängt ut IIS och installerat iofs Foxserv istället för Triaden.

 

Tog ner Foxserv 3.0 istället för nyare betan, och tog bort den versionen av mysql som fanns med och installerade senaste mysql i std path för den installationen och allt rockar!!

 

TACK FÖR HJÄLPEN

 

 

 

/benkebus

 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.



×
×
  • Create New...