Jump to content
Neusa Novaes

Banco de Dados

Recommended Posts

Olá @Neusa Novaes.

 

Esse erro de falha de conexão só pode ser algum dado da conexão que está incorreto.

 

Pelo que vi na documentação da Locaweb, seu host não deveria ser localhost. Veja: https://wiki.locaweb.com.br/pt-br/Informações_de_acesso_ao_banco_MySQL

 

Citar

A cada nova instalação de um Banco de Dados, o host será criado sempre seguindo o padrão "XX.mysql.dbaas.com.br" (onde "XX" será substituído pelo nome do banco de dados), o mesmo não poderá ser alterado.

 

Você precisa saber exatamente esse endereço para colocar no lugar de "localhost". Isso você pode pedir auxílio para o suporte deles, pois é algo simples de se verificar, tendo o devido acesso.

 

Também pode ser óbvio, mas não custa dizer: quando o @BrunoBit pediu que você retirasse a senha, era só para postar aqui no fórum. No seu arquivo a senha precisa estar definida corretamente.

  • Obrigado! 1

Share this post


Link to post
Share on other sites

@Matheus Tavares , @EdCesar , @Alaerte Gabriel , @Omar~ , @ESerra 

Rapaziada, vocês fazem ideia de como resolver esse problema?

MySQL said: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

O código da Neusa ta funcionando normal, testei aqui, mas está dando esse problema de mysql.sock.

@Neusa Novaes Eu infelizmente não tenho o conhecimento necessário ainda pra te ajudar com relação à esse problema, mas essa rapaziada aí que marquei manjam.

  • Gostei 1

Share this post


Link to post
Share on other sites

@Matheus Tavares ela tava usando esse:

$servidor="afsistem.mysql.dbaas.com.br";

Pelo o que vi no link que você mandou esse seria o padrão correto, só que mesmo assim ainda tava dando o erro:

MySQL said: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

 

Share this post


Link to post
Share on other sites
1 minuto atrás, BrunoBit disse:

Pelo o que vi no link que você mandou esse seria o padrão correto, só que mesmo assim ainda tava dando o erro:

Talvez esteja correto sim, mas ela precisa confirmar no painel da Locaweb. No link que eu postei há uma explicação detalhada de como confirmar essa informação.

Muito provavelmente o problema está em algum(ns) desse(s) dado(s):

$servidor="localhost";
$bancod="afsistem";
$usuario="afsistem";
$senha="";

 

@Neusa Novaes, você precisa preencher esses dados e ver se consegue acessar o banco por aqui: https://phpmyadmin.locaweb.com.br/

Se der certo, é pq os dados estão corretos e o bug está em outra parte do código. Do contrário, algum dado está errado.

Share this post


Link to post
Share on other sites

Eu coloquei no conect o servidor como a Locaweb falou isto é afsistem.mysql.dbaas.com.br, porem a pagina ficou em branco teria que encontrar a poesia que foi indicada;

 

Veja a pagina

http://www.amorepaixao.com.br/afrecom/consulta.php?codigo=18031a662b4308ab1b20280458c3

 

A pagina que indiquei foi:

http://www.amorepaixao.com.br/amarsempensar1.htm

 

Um abraço

Neusa Novaes

 

Share this post


Link to post
Share on other sites

Erro de socket na conexão, o que pode ocasionar pelo servidor ou mais provável que seja de código.

Não gosto de mysqli, e pouco conheço pra falar a verdade nunca usei desde a muito tempo na época do mysql já havia migrado e me apaixonado por PDO, mas em fim.

A sintaxe completa de conexão mysqli é:

$mysqli = new mysqli($host, $username, $passwd, $dbname, $port, $socket);

 

Então primeiramente tentamos tentar a conexão com o servidor, então crie um arquivo php qualquer.

Coloque isso nele:

<?php
$conn = [
    'host' => 'endereço do banco de dados', 
    'user' => 'login de usuário do banco que pode pelo menos fazer leitura', 
    'pass' => 'login de usuário usado acima', 
    'data' => 'nome do banco de dados para conectar', 
];

$mysqli = new mysqli($conn['host'], $conn['user'], $conn['pass'], $conn['data']);
if ($mysqli->connect_error) {
    die('Error de conexão (' . $mysqli->connect_errno . ')' . $mysqli->connect_error);
} else {
        echo "Conexão foi bem bem sucedida";
}

Então hospede o arquivo e acesse-o para ver o resultado da conexão.

Se a conexão foi bem sucedida. O problema está no código de 1 ou mais arquivos da aplicação que está a mexer. Ao qual notei que é somente escrito no procedural.

  • -1 1

Share this post


Link to post
Share on other sites

Omar eu coloquei no conecta o numero 1 e fiz um outro php com o nome conecta e coloquei os dados que voce escreveu e a mensagem foi Conex�o foi bem bem sucedida

 

Acho que conectou e agora?

Share this post


Link to post
Share on other sites
9 minutos atrás, Neusa Novaes disse:

Entendi Omar mas em qual php posso colocar esses dados? No conecta?

Pode ser, desde que quando for fazer alguma query requisite esse arquivo no caso conecta.php.

Só remova o return else que diz que a conexão foi sucedida.

20 minutos atrás, Neusa Novaes disse:

Omar eu coloquei no conecta o numero 1 e fiz um outro php com o nome conecta e coloquei os dados que voce escreveu e a mensagem foi Conex�o foi bem bem sucedida

 

Acho que conectou e agora?

Sim é sinal que não há problemas com o servidor e sim com o códigos de seus arquivos.

 

Então vou lhe mostrar uma forma de fazer leitura dos dados no banco (desde que esteja usando a conexão que mostrei pois necessita da classe nativa mysqli):

<?php
$query = "SELECT * FROM afrecom WHERE codigo='{$codigo}'";
$result = $mysqli->query($query);
if ($result->num_rows > 0) {
    while ($row = $result->fetch_assoc()) {
        echo "<p>{$row['codigo']}</p>";
    }
} else {
    echo ("Nada encontrado no banco com query executada");
} 

De acordo com o que mostrou esse código vai fazer uma busca completa na tabela afrecom e vai selecionar o resultado da coluna codigo que seja referente ao resultado da variável $codigo.

Note que só coloquei $row['codigo'] que é o nome da coluna codigo os demais resultados referentes a essa tabela você deve passar aí.

Share this post


Link to post
Share on other sites

Bem eu fiz conforme voce falou e apareceu a pagina não localizada

 

http://www.amorepaixao.com.br/afrecom/consulta.php?codigo=144e1d5f9dee5482e09e7ba117af

 

Veja se esta certo o que fiz (tirei as senhas)

 

<?php
$conn = [
    'host' => 'afsistem.mysql.dbaas.com.br', 
    'user' => 'afsistem', 
    'pass' => '', 
    'data' => 'afsistem', 
];

$adminmail="neusa@amorepaixao.com.br";
$nome_site = "Amor e Paixão";
$url_site = "http://www.amorepaixao.com.br";
$carac_url='29';
$arq_som="imagine.mid";
$contorno="stripportadanueva.jpg"; // IMAGEM DE CONTORNO
$fundopag="backgrnd.jpg"; // IMAGEM DE FUNDO DA PAGINA
$mysqli = new mysqli($conn['host'], $conn['user'], $conn['pass'], $conn['data']);
$servmail="mail.amorepaixao.com.br";
$emmliv="neusa@amorepaixao.com.br";
$senliv="";
$emmrec="neusa@amorepaixao.com.br";
$senrec="";
<?php
$query = "SELECT * FROM afrecom WHERE codigo='{$codigo}'";
$result = $mysqli->query($query);
if ($result->num_rows > 0) {
    while ($row = $result->fetch_assoc()) {
        echo "<p>{$row['codigo']}</p>";
    }
} else {
    echo ("Nada encontrado no banco com query executada");

Share this post


Link to post
Share on other sites

Só um palpite, mas deve está apresentado HTML erro 500.

Erro grave de sintaxe de arquivo.

Citar

$senrec="";
<?php // TAG php sendo reaberta dentro o código?
$query = "SELECT * FROM afrecom WHERE codigo='{$codigo}'";

 

Share this post


Link to post
Share on other sites

@Neusa Você copiou o código do Omar e abriu 2 tags php sem fechar a primeira.

Corrigi o código, realize um novo teste pra gente ver:

<?php
$conn = [
    'host' => 'afsistem.mysql.dbaas.com.br', 
    'user' => 'afsistem', 
    'pass' => '', 
    'data' => 'afsistem', 
];

$adminmail="neusa@amorepaixao.com.br";
$nome_site = "Amor e Paixão";
$url_site = "http://www.amorepaixao.com.br";
$carac_url='29';
$arq_som="imagine.mid";
$contorno="stripportadanueva.jpg"; // IMAGEM DE CONTORNO
$fundopag="backgrnd.jpg"; // IMAGEM DE FUNDO DA PAGINA
$mysqli = new mysqli($conn['host'], $conn['user'], $conn['pass'], $conn['data']);
$servmail="mail.amorepaixao.com.br";
$emmliv="neusa@amorepaixao.com.br";
$senliv="";
$emmrec="neusa@amorepaixao.com.br";
$senrec="";


$query = "SELECT * FROM afrecom WHERE codigo='{$codigo}'";
$result = $mysqli->query($query);
if ($result->num_rows > 0) {
    while ($row = $result->fetch_assoc()) {
        echo "<p>{$row['codigo']}</p>";
    }
} else {
    echo ("Nada encontrado no banco com query executada");
} 

?>

 

Share this post


Link to post
Share on other sites

Isso não é um erro, ele deu echo em $row["codigo"], é sinal de que a query funcionou normalmente e não disparou mais aquele erro de mysql.sock.

Share this post


Link to post
Share on other sites
1 minuto atrás, Neusa Novaes disse:

Mas se voce entrar no phpmyadmin.locaweb esse codigo esta lá, não sei o que acontece.

É por isso mesmo que deu certo, o código conseguiu buscar o dado que ta no seu banco, se o dado buscado não estivesse lá iria disparar o outro echo, que no caso seria:

echo ("Nada encontrado no banco com query executada");

 

Share this post


Link to post
Share on other sites

Realiza um novo teste e copie com calma:

conecta.php

ps: coloque sua senha

<?php
$conn = [
    'host' => 'afsistem.mysql.dbaas.com.br', 
    'user' => 'afsistem', 
    'pass' => '', 
    'data' => 'afsistem', 
];

$adminmail="neusa@amorepaixao.com.br";
$nome_site = "Amor e Paixão";
$url_site = "http://www.amorepaixao.com.br";
$carac_url='29';
$arq_som="imagine.mid";
$contorno="stripportadanueva.jpg"; // IMAGEM DE CONTORNO
$fundopag="backgrnd.jpg"; // IMAGEM DE FUNDO DA PAGINA
$mysqli = new mysqli($conn['host'], $conn['user'], $conn['pass'], $conn['data']);
$servmail="mail.amorepaixao.com.br";
$emmliv="neusa@amorepaixao.com.br";
$senliv="";
$emmrec="neusa@amorepaixao.com.br";
$senrec="";
?>

consulta.php

<?php
/************************************************************************
ARQUIVO .........:AFRECOM 2.0 - Indicador de Mensagens/Sites
BY ..............: Neusa C.Novaes
SITE ............: Amor e Paixao http://www.amorepaixao.com.br
DATA ............: 13/01/2018
Copyright (c) 2004 Neusa C.Novaes.  All rights reserved.
************************************************************************/
date_default_timezone_set('America/Sao_Paulo');
error_reporting(E_ALL ^ E_NOTICE);
$codigo = substr(($_GET['codigo']), 1, 33);
$nramg = substr(($_GET['codigo']), 0, 1);
$ano = date('Y');
$mes = date('n');
$dia = date('d');
$dsemm = date('w');
$hora=getdate();
$dsem[0] = "Domingo";
$dsem[1] = "Segunda-feira";
$dsem[2] = "Ter&ccedil;a-feira";
$dsem[3] = "Quarta-feira";
$dsem[4] = "Quinta-feira";
$dsem[5] = "Sexta-feira";
$dsem[6] = "S&aacute;bado";
$nmes[1] = "janeiro";
$nmes[2] = "fevereiro";
$nmes[3] = "mar&ccedil;o";
$nmes[4] = "abril";
$nmes[5] = "maio";
$nmes[6] = "junho";
$nmes[7] = "julho";
$nmes[8] = "agosto";
$nmes[9] = "setembro";
$nmes[10] = "outubro";
$nmes[11] = "novembro";
$nmes[12] = "dezembro";
$horatual=($hora['hours'].':'.$hora['minutes']);
$data = $dsem[$dsemm].', '.$dia.' de '.$nmes[$mes].' de '.$ano.' - Hora: '.$horatual;
$urlmsg = $_POST;
$datac = date("d/m/Y");
$datah = date("H:i:s");
require_once($_SERVER["DOCUMENT_ROOT"] . "/afrecom/conecta.php");
$query = $mysqli->query("SELECT * FROM afrecom WHERE codigo='$codigo'");
$dadoss = $query->fetch_assoc();   
$mensagem=$dadoss['urlmens'];
$idd=$dadoss['id'];
$nnome=$dadoss['nomerem'];
$nemail=$dadoss['emailrem'];
$amg="nomeamg".$nramg;
$emg="emailamg".$nramg;
$vmmg="visualamg".$nramg;
$visual=$dadoss[$vmmg];
$namigo=$dadoss[$amg];
$eamigo=$dadoss[$emg];
if($visual <> "S"){
$msg1='
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head> <!--estava faltando fechar o head--></head>
<BGSOUND src="'.$url_site.'/afrecom/'.$arq_som.'" loop=infinite>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html;charset=iso-8859-1">
<link href="'.$url_site.'/afrecom/style.css" rel="stylesheet" type="text/css">
<body background="'.$url_site.'/afrecom/'.$fundopag.'" leftmargin="0" topmargin="0" rightmargin="0" bottommargin="0">

<div align="center">
  <table border="7" bordercolor="#808000" bordercolorlight="#FFFF99">
  <tr>
  <td align="center">
    <table border="10" bordercolor="#808000">
    <tr>
    <td>
      <img border="0" src="'.$url_site.'/afrecom/banner1.gif" width="468" height="60">
    </td>  
    </tr> 
    </table> 
  </td> 
  </tr>
</table>
</div>

<p>&nbsp;</p>

<div align="center">
  <table border="15" cellpadding="6" width="90%" bordercolordark="#808000" bordercolorlight="#FFFF99">
  <tr>
  <td width="100%" align="left" class="tabela">
  <i><font color="#ffffff" size="1">Mensagem automática, por favor não responda.<br>'.$data.'</font></i>
  <HR width="100%" color=#ffffff SIZE=1 align="left">
  <br>
  <font color="#ffffff" size="1">Olá &nbsp;'.$nnome.'! </font><br><br>
  A&nbsp;mensagem&nbsp;que&nbsp;você&nbsp;enviou&nbsp;para:&nbsp;
  <br><b>'.$namigo.'</b>&nbsp;&nbsp;e-mail:&nbsp;&nbsp;<b>'.$eamigo.'</b>
  <br>foi&nbsp;visualizada&nbsp;em&nbsp;nossos&nbsp;servidores&nbsp; nesta(e)&nbsp;&nbsp;
  <br><b>'.$data.'</b><br><br>
  <!-- faltava td-->
  </td>
  <!-- faltava tr-->
  </tr>
  </table>
<!--estava faltando esta div-->
</div> 

</body> 
</html> ';

echo $msg1;
}
?>

 

Share this post


Link to post
Share on other sites

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

  • Similar Content

    • By Bassoli
      Olá, preciso de ajuda para meu sistema, preciso pegar o e-mail do usuário logado na conta, mais fiz um sistema que ele mostra todos email da mysql cadastrados, podem me ajudar?
       
      Meu sistema: 
      http://prntscr.com/qsm0tn (Puxar database)
      http://prntscr.com/qsm08u (Mostrar na label) 
      http://prntscr.com/qsm0n2 (Monstrando os emails no sistema)
    • By marcossantana10
      Eu to fazendo uma aplicação que precisa trabalhar com valores e não to encontrando a solução ideal:
       
      preciso que o preço de um produto seja armazenado, precisamente, informando milhares, centenas, dezenas, todas as informações. exemplo:

      R$ 1.500,50 (mil e quinhentos reais e cinquenta centavos)
      eu já usei uma função (str_replace) pra substituir a virgula por pontos, porém o que vem depois da vírgula não está sendo considerado
      está salvando 1.500 apenas. Já tentei todo tipo de campo no banco (float, double, decimal, int).
       
      Como eu poderia solucionar isso?
    • By EstilloWeb
      Está ocorrendo um erro em meu comando MySQL na ordenação dos resultados. O código é o seguinte:
      $sql_imos4 = "Select DISTINCT imovel FROM propostas ORDER BY id DESC"; $exe_imos4 = mysqli_query($conexao, $sql_imos4); O objetivo é listar uma única vez um imóvel com proposta, mesmo que haja dois ou mais registros, sempre ordenado mais recente. O que está ocorrendo quando o imóvel tem mais de uma proposta cadastrada, a ordenação está sendo feita pelo ID da proposta mais antiga.
      Exemplo:
      imóvel ref. 4528 tem duas propostas, sendo que a mais recente tem o ID 235 porém aparece na listagem abaixo do imóvel ref. 4325, que tem uma só proposta e ID 230.
      O resultado deveria estar invertido neste caso.
      Onde pode estar o erro? Agradeço a ajuda.
    • By tii3030
      Olá, gostaria de saber qual a melhor maneira de selecionar e verificar a senha hash(senha) em um banco de dados e comparar com a senha inserida pelo usuário em um formulário de login. É mais adequado armazenar no BD o salt ? No exemplo abaixo eu criei o hash da senha antes de selecionar no banco:
      <?php include('conf.php'); $email = 'lala@123.com'; $senha = 'lala.123'; $custo = '08'; $salt = 'Cf1f11ePArKlBJomM0F6aJ'; $hash = crypt($senha, '$2a$' . $custo . '$' . $salt . '$'); $query_select = "SELECT email, password FROM usuarios WHERE email = '$email' AND password = '$hash'"; $select = mysqli_query($conexao,$query_select); if (mysqli_num_rows($select) == 1) { echo "Login Permitido"; } else { echo "Login ou senha invalidos"; } ?> Já neste exemplo eu selecionei o hash no banco para depois comparar com a senha inserida no formulário utilizando o password_verify():
      <?php #----------------- INCLUDING FILE --> "conf.php" include('conf.php'); if (isset($_POST['submit'])) { $email = mysqli_real_escape_string($conexao, $_POST['email']); $password = mysqli_real_escape_string($conexao, $_POST['password']); $query_select_email = "SELECT email FROM usuarios WHERE email = '$email'"; $select_email = mysqli_query($conexao,$query_select_email); $query_select_password = "SELECT password FROM usuarios"; $select_password = mysqli_query($conexao,$query_select_password); while($array = mysqli_fetch_array($select_password)) { $logarray = $array['password']; if (password_verify($password, $logarray) && mysqli_num_rows($select_email) == 1) { echo "Login permitido"; } } } ?> Aceito qualquer dica relacionado a segurança e para melhorar o código, desde já agradeço.
    • By Jefferson andre
      Bom dia, alguem me ajude a fazer funcionar este pequeno script usando ajax. Preciso pegar a resposta do console e colocar na tela na id buscar2
      Resposta do console:
      {"valor_hr_viagem":"10","valor_por_km":"8","valor_apos_18":"7","valor_sabado":"6","valor_domingo":"5","id":"834"} teste_ajax.html
      <html lang="en"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> </head> <body> <button class="btn btn-default" id="buscar3" type="button">Buscar2</button> <div id="dados2">Aqui será inserindo o resultado da consulta...</div> <div id="valor_fixo_cliente">teste</div> <!-- SCRIPT NECESSARIO PARA O AJAX FUNCIONAR // <script src="jquery.2.1.3.min.js"></script> !--> <script src="jquery.2.1.3.min.js"></script> <script> function buscar3($id_cliente) { //O método $.ajax(); é o responsável pela requisição $.ajax ({ //Configurações type: "POST",//Método que está sendo utilizado. dataType: "json",//É o tipo de dado que a página vai retornar. url: "busca3.php",//Indica a página que está sendo solicitada. //função que vai ser executada assim que a requisição for enviada beforeSend: function (mensagem_retorno) { $("#dados2").html("Carregando..."); $("#valor_fixo_cliente").html("Carregando..."); }, data: {id_cliente: "834"},//Dados para consulta //função que será executada quando a solicitação for finalizada. success: function (mensagem_retorno) { console.log (mensagem_retorno); $("#dados2").html(mensagem_retorno.conteudo); } }); } $('#buscar3').click(function () { buscar3($("#id_cliente").val()) }); </script> </body> </html>
      buscar3.php
      <?php require('conexao_dbo.php'); include('error_report.php'); $id_procurar = $_POST['id_cliente']; $sql = "SELECT * FROM clientes WHERE id='$id_procurar'"; $sql = $arquivo->query($sql); if($sql->rowCount()>0) { $linha = $sql->fetch(); $conteudo = json_encode( array ("valor_hr_viagem" => $linha['valor_hr_viagem'], "valor_por_km" => $linha['valor_por_km'], "valor_apos_18" => $linha['valor_apos_18'], "valor_sabado" => $linha['valor_sabado'], "valor_domingo" => $linha['valor_domingo'], "id" =>$linha['id'] ) ); echo $conteudo; } ?> estrutura da tabela clientes em anexo
       

×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.