Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Skellton

Tópico: WebSite conexão com PostgreSQL ERRO

Recommended Posts

então galera eu do editando e terminando uma website para meu servidor de pb porem esta dando erro não sei oque eu fis


quando eu coloco os dados para criar a conta ele , da uma falha na conexão com db do postgre

Vou deixar uns Prints e so codico do registro php


5656.JPG?1413923174

23123.JPG?1413923238

5645654646.JPG?1413923284

5645654646.JPG?1413923331


Criação da conta :


Capturar.JPG?1413923391

23423.JPG?1413923436


Codico de php do register :


Config.properties :




app42.paas.db.username = postgres
app42.paas.db.port = 5432
app42.paas.db.password = guilherme1
app42.paas.db.ip = 127.0.0.1
app42.paas.db.name = postgres


DBManager.php :


<?php


class DBManager {


public $client;

public $selected;


public function __construct() {

$lines = file("Config.properties");

foreach ($lines as $line) {

list($k, $v) = explode('=', $line);

if (rtrim(ltrim($k)) == rtrim(ltrim("app42.paas.db.username"))) {

$user = rtrim(ltrim($v));

}if (rtrim(ltrim($k)) == rtrim(ltrim("app42.paas.db.port"))) {

$port = rtrim(ltrim($v));

}if (rtrim(ltrim($k)) == rtrim(ltrim("app42.paas.db.password"))) {

$password = rtrim(ltrim($v));

}if (rtrim(ltrim($k)) == rtrim(ltrim("app42.paas.db.ip"))) {

$ip = rtrim(ltrim($v));

}if (rtrim(ltrim($k)) == rtrim(ltrim("app42.paas.db.name"))) {

$dbName = rtrim(ltrim($v));

}

}

$this->client = pg_connect("host=$ip port=$port dbname=$dbName user=$user password=$password")

or die('Could not connect: ' . pg_last_error());


}



function saveDoc($username, $email, $password) {


/* try{

pg_query("CREATE TABLE accounts(login VARCHAR(255), email VARCHAR(355), password VARCHAR(355), money VARCHAR(355))");

}catch(Exception $e){

print_r("Table Already Created");

}

*/

$query = "insert into accounts(login,email,password,money) values('$username','$email','$password','100000')";

$result = pg_query($query) or die ("<meta http-equiv='refresh' content='=0;URL=?s=notfound' />");

pg_close($this->client);

}


function getAllDocs() {


$query = "select * from accounts";

$result = pg_query($query) or die('Query failed: ' . pg_last_error());

return $result;


}

function getPlayer() {


$query = "select * from players";

$result = pg_query($query) or die('Query failed: ' . pg_last_error());

return $result;


}


}


?>



register.php:


 <div class="App42PaaS_body_wrapper">
<div class="App42PaaS_body">
<div class="App42PaaS_body_inner">
<div class="contactPage_title">Registro</div>

<div class="form_wrapper">
<form method="post" action="save.php">
<fieldset>
<legend>Criar Conta</legend>
<div class="contactForm_tr">
<div class="contactForm_td1">Nome</div>
<div class="contactForm_tdMiddle">: </div>
<div class="contactForm_td2">
<input name="username" type="text" class="Personal-input" id="contactPerson" value=""></div>
<div class="contactForm_td2" style="color: red; padding-left: 90px; display: none;" id="contactPersonErr">Please Input Field Name</div>
</div>
<div class="contactForm_tr">
<div class="contactForm_td1">Email</div>
<div class="contactForm_tdMiddle">: </div>
<div class="contactForm_td2"><input name="email" type="text" id="email" class="Personal-input" maxlength="30">
</div>
<div class="contactForm_td2" style="color: red; padding-left: 90px; display: none;" id="emailErr">Please Input Field Email</div>
</div>
<div class="contactForm_tr">
<div class="contactForm_td1">senha</div>
<div class="contactForm_tdMiddle">: </div>
<div class="contactForm_td2"><input name="password" type="password" id="password" class="Personal-input" maxlength="30">
</div>
<div class="contactForm_td2" style="color: red; padding-left: 90px; display: none;" id="passErr">Please Input Field Password</div>
</div>
</fieldset>
<center>
<div class="form-button" style="margin-left:100px; margin-right:10px;"><input id="SubmitButton" class="submit_btn" type="image" border="0" name="submit" alt="Register" src="images/submit_btn.png"></input></div>
<!-- <div class="form-button"><input id="Submit" class="clear_btn" type="image" border="0" name="clear" alt="clear" src="images/clear_btn.png"></div> -->
</center>
</form>
</div>



save.php:


<?php 

error_reporting(0);

$username = $_POST["username"];

$email = $_POST["email"];

$password = md5($_POST['password']);



require_once "DBManager.php";

$client = new DBManager();

$client->saveDoc($username, $email, $password);


header("Location: ?s=Success");


?>



Success.php:


<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Project Wars</title>
<style>
body {
background : url(images/Success.png) no-repeat #000000 50% -50%;}
}
</style>
</head>
<body>
<meta http-equiv="refresh" content="2;url=?s=home" />
</body>
</html>


Compartilhar este post


Link para o post
Compartilhar em outros sites

@

rockrgo

 

não , ele vai para pagina

save.php

 

e fica tudo branco , era para ir para pagina

Success.php

 

se vocé puder manda seu contato para me ajudar agradeço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

@rockrgo

 

eu coloquei o

 

error_reporting(0);

não apareçe erro.
se vocé quiser posso mandar website e a db , db é leve

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

@rockrgo

 

eu coloquei o

 

error_reporting(0);

não apareçe erro.
se vocé quiser posso mandar website e a db , db é leve

 

 

Não é para colocar e sim para tirar o erro_reporting(0) ou substitua por error_reporting(E_ALL);. Pois com o error_reporting setado como 0 você está ocultando as mensagens

Compartilhar este post


Link para o post
Compartilhar em outros sites

olha.. verifique se está corretamente instalada a extensão ao Postgres;

para isso vc pode usar 1 pg só p/ conexão, acho + simples

por exemplo essa DBManager.php, mesmo.

outra forma é ver a pasta de extensões..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Conforme o Fernando C disse, precisa ter instalada a extensão.

 

Você está utilizando qual servidor?

 

Se for um Wamp é só abrir o menu do wamp > PHP > PHP extensions e clicar em php_pgsql e depois você restarta os serviços.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você pode ter o PostgreSQL instalado, mas precisa ter certeza de que possui a extensão pgsql habilitada/

 

Crie um arquivo só pra testar a conexão:

 

// crie as variaveis com os dados de conexao aqui
pg_connect("host=$ip port=$port dbname=$dbName user=$user password=$password") or exit( pg_last_error() );

 

 

PS: sugiro que use PDO, que é uma camada do PHP para abstrair bancos de dados. É mais recente e, caso mude de SGBD no futuro, o PDO dará conta disso, sem precisar mexer no código.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.