Jump to content

Erro ao ligar a base de dados MySQL


Recommended Posts

Posted

Boas.

Estou a tentar usar codigo PHP para ligar a uma base de dados que criei no MySQL mas tou a ter este erro:

Parse error: parse error in C:\wamp\www\virtools2010.php on line 4

E este é o codigo:

<?php
mysql_connect.php

DEFINE ('DB_HOST', 'localhost');
DEFINE ('DB_NAME', 'virtools');

$dbc = @mysql_connect(DB_HOST, DB_NAME) OR die ('Could not connect to MySQL: ' . mysql_error());

@mysql_select_db (DB_NAME) OR die ('Could not select the database: ' . mysql_error());
?>

Sou um novato a usar PHP/MySQL, pelo que tirei este codigo de um livro de PHP e MySQL que aqui tenho.

Ora se a linha 4 contem o nome da base de dados,o problema está ai. O nome "virtools" refere-se ao schema que usei no MySQL QueryBrowser. Já tentei alterar para "new table" que é o nome da tabela do schema virtools mas o erro continua na mesma.

Alguem pode ajudar?

Posted

Ora se a linha 4 contem o nome da base de dados,o problema está ai. O nome "virtools" refere-se ao schema que usei no MySQL QueryBrowser. Já tentei alterar para "new table" que é o nome da tabela do schema virtools mas o erro continua na mesma.

A linha 4 não é essa, é a de cima. O "<?php" conta como linha 1.

Ele está-se a queixar da linha 4, porque a linha 2 (visto que a 3 é uma linha em branco) não lhe faz sentido. Se queres executar esse ficheiro (mysql_connect.php), tens que fazer um include ou um require (e deve ser um require).

"Para desenhar um website, não tenho que saber distinguir server-side de client-side" - um membro do fórum que se auto-intitula webdesigner. Temo pelo futuro da web.

Posted

Sim já tentei o require mas deu outro erro:

Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'Sistema'@'localhost' (using password: NO) in C:\wamp\www\virtools2010.php on line 2

Could not connect to MySQL: Access denied for user 'new table'@'localhost' (using password: NO)

Já me estive a aconselhar com o meu professor e se não tenho nenhuma ficheiro mysql_connect.php não vale a pena inserir no codigo.

Só queria mesmo mostrar a tabela que fiz no MySQL no browser para testar se está tudo ok porque vou ter que mostrar a base de dados noutro programa. (O virtools)

Posted

Lê o erro devagarinho.

Tens aí um problema de autenticação: o utilizador, a password (que não estás a usar), a base de dados ou o host estão errados.

"Para desenhar um website, não tenho que saber distinguir server-side de client-side" - um membro do fórum que se auto-intitula webdesigner. Temo pelo futuro da web.

Posted

experimenta:

<?php
$link = mysql_connect('127.0.0.1', 'user', 'pass');
if (!$link) {
die('Não foi possível conectar: ' . mysql_error());
}
echo 'Conexão bem sucedida';
mysql_close($link);
?> 

o 127.0.0.1 e o endereço local da maquina, se nao funcionar experimenta localhost

Posted

Já fiz outro codigo:

<?php
define("SEP", "###");

if(!isset($_GET['id'])) {
echo "Falta o ID";
return;
}
$bd = new PDO("mysql:host=localhost;dbname=virtools", "root", "");
$id = addslashes($_GET['id']);
$query = "SELECT * FROM virtools2010 WHERE id=$id";
$result = $bd->query($query);
$linha = $result->fetch(PDO::FETCH_ASSOC);
if($linha) {
echo $linha['cadeira'];
echo SEP;
echo $linha['semestre'];
echo SEP;
echo $linha['ano'];
}
?>

E já resulta.

Agora, se alguem percebesse de mostrar bases de dados em Virtools era uma maravilha.

Obrigado pela ajuda.

Posted

Ok,já percebi como ligar a bd ao Virtools mas agora pergunto,como faço para escolher um bloco de nomes que tem o mesmo numero na bd mas com id`s diferentes?

Explicando melhor: Eu tenho uma base de dados composta pelos campos id, cadeira, semestre e ano. A chave da tabela é o id mas eu quero só mostrar as cadeiras do 1º semestre ou do 2º semestre conforme o utilizador escolher, pelo que no MySQL na tabela atribui ao semestre um datatype INT(10) e atribui os numeros 1 e 2 conforme as cadeiras pertencem ao 1º ou 2º semestre.

O que tenho que mudar no codigo para chamar o semestre em vez do id?

Posted

Fabio, primeiro aprende as bases...

Pois,eu tenho andado a pesquisar o que preciso porque tenho que entregar o trabalho prá semana. O meu curso nem dá muito enfase ás BD e ao PHP, é só que tou a fazer este trabalho por ser um exame de recurso.

Serve mais para construir building blocks no Virtools.

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.