Kaux Posted June 20, 2006 at 12:05 PM Report #33898 Posted June 20, 2006 at 12:05 PM Olá a todos, estou a tentar instalar um cms num servidor mas não consigo fazer a ligação entre o php com o MySQL.. o SO do servido é o CENTOS Apache 2.0.25 PHP 5 MySQL 4.0.11 tenho uma função de teste com o seguinte codigo: <?php$link = mysql_connect('localhost', 'user', 'pass'); if (!$link) { die('Não foi possível conectar: ' . mysql_error()); } echo 'Conexão bem sucedida'; mysql_close($link); ?> (o user e a pass foram trocadas para o exemplo) e obtenho esta resposta do servidor: Warning: mysql_connect(): Access denied for user 'user'@'localhost' (using password: YES) in (caminho do servidor)/teste.php on line 2Não foi possível conectar: Access denied for user 'user'@'localhost' (using password: YES) consigo aceder ao servidor de MySQL com o mysql client sem qualquer problema, criar tabelas na base de dados.. alguem me consegue ajudar? ps: não sei se deveria ter posto isto aqui ou em bases de dados.. se acharem que está mal colocado façam o favor de trocar. Abraço! 😉
kingless Posted June 20, 2006 at 12:16 PM Report #33901 Posted June 20, 2006 at 12:16 PM Acho que o problema é do servidor, tenta trocar o host.
Kaux Posted June 20, 2006 at 02:57 PM Author Report #33922 Posted June 20, 2006 at 02:57 PM trocar o host como assim? troco o host na pagina de teste?
M6 Posted June 20, 2006 at 04:53 PM Report #33945 Posted June 20, 2006 at 04:53 PM trocar o host como assim? troco o host na pagina de teste? Trocas o host aqui: mysql_connect('AQUI', 'user', 'pass'); Em vez do AQUI coloca ai o IP da máquina que está a correr o MySQL. Antes disso... garante que o MySQL está a correr e que lhe acedes usando o user e a password que estás a usar na ligação do PHP. 10 REM Generation 48K! 20 INPUT "URL:", A$ 30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50 40 PRINT "404 Not Found" 50 PRINT "./M6 @ Portugal a Programar."
Kaux Posted June 20, 2006 at 05:58 PM Author Report #33957 Posted June 20, 2006 at 05:58 PM pois.. já tentei isso mas continua-me a dar o mesmo erro.. 😛
M6 Posted June 20, 2006 at 06:22 PM Report #33963 Posted June 20, 2006 at 06:22 PM pois.. já tentei isso mas continua-me a dar o mesmo erro.. 😛 Mas já tentaste o quê? Trocar para o IP ou aceder à BD usando a consola? Antes de mais tens de garantir que o MySQL está efectivamente "up and running". Tu ligas-te ao MySQL usando os parâmetros que passas no PHP, ou seja, ligas-te ao MySQL através da consola à BD usando o IP, user e password? 10 REM Generation 48K! 20 INPUT "URL:", A$ 30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50 40 PRINT "404 Not Found" 50 PRINT "./M6 @ Portugal a Programar."
Kaux Posted June 20, 2006 at 06:43 PM Author Report #33965 Posted June 20, 2006 at 06:43 PM Tu ligas-te ao MySQL usando os parâmetros que passas no PHP, ou seja, ligas-te ao MySQL através da consola à BD usando o IP, user e password? exacto
M6 Posted June 21, 2006 at 02:23 PM Report #34107 Posted June 21, 2006 at 02:23 PM Uso este código para efectuar a ligação às BDs MySQL em PHP. /** Copyright M6 2005. */ <? if(!mysql_connect($DB['connection'],$DB['user'],$DB['password'])) { print '<hr noshade size="1" width="35%"><center class="erro">Erro! Por favor verifique os dados de entrada no sistema.</center>'; die("<!-- Falha: ligação à base de dados " . mysql_error() . " -->"); } else { if(!mysql_select_db($DB['database'])) { print '<hr noshade size="1" width="35%"><center class="erro">Erro! Por favor verifique os dados de entrada no sistema.</center>'; die("<!-- Falha: escolha da base de dados " . mysql_error() . " -->"); } } ?> Se os parâmetros $DB['connection'], $DB['user'], $DB['password'] e $DB['database'] estão correctos consegues aceder à BD sem problemas. 10 REM Generation 48K! 20 INPUT "URL:", A$ 30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50 40 PRINT "404 Not Found" 50 PRINT "./M6 @ Portugal a Programar."
kingless Posted June 21, 2006 at 07:51 PM Report #34155 Posted June 21, 2006 at 07:51 PM Tu estás só a complicar ele, mas vale dar um exemplo simples do que um dificil. O problema deve ser do servidor ou do host da mysql.
Kaux Posted June 21, 2006 at 08:40 PM Author Report #34167 Posted June 21, 2006 at 08:40 PM vou tentar saber mais informaçoes junto do administrador de rede.. muito obrigado por todas as ajudas dadas 😛
pedrotuga Posted June 22, 2006 at 04:55 AM Report #34194 Posted June 22, 2006 at 04:55 AM é assim... não é nenhum problema de código. O erro que te dá é access deneid. Ou seja esse user/pass não têm acesso ao servidor de mysql. Atenção que dependendo da forma comas as coisas estão instaladas, normalmente as contas de linux não têm associadas uma conta de mysql. Quero dizer: deves ter que definir um user e uma passa para o servidor de mysql. Isto normalmente é feito no painel de controlo da companhia de hosting da qual és cliente. Ou então via consola se tiveres acesso à shell.
Kaux Posted June 22, 2006 at 03:20 PM Author Report #34249 Posted June 22, 2006 at 03:20 PM hum.. eu tenho uma conta para acesso ao servidor por SSH que é a mesma conta (ou melhor mesmo user e pass) que consigo aceder com o mysqlclient atravez do meu pc.. será que dentro do mesmo servidor não consigo ter acesso por causa das permissões? ou seja ter duas contas com o mesmo user e pass mas nao associadas? Edit: Assunto resolvido! 😉 era um problema de configuração de acesso do user por localhost. Muito Obrigado a todos! 😛
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now