Clipper On Line • Ver Tópico - PHP: tela inicial com senha conferida em MySQL
Página 1 de 3

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 08 Fev 2016 00:38
por cjp
Pessoal, há algum tempo, neste post (viewtopic.php?f=28&t=13321&start=45), o Toledo me ajudou fazendo o seguinte arquivo para proteger uma página com senha:

<?php
session_start();
$usuario = ( isset($_POST['usuario']) ) ? $_POST['usuario'] : $_GET['usuario'];
$senha = ( isset($_POST['senha']) ) ? $_POST['senha'] : $_GET['senha'];
$url = 'http://'.$_SERVER['SERVER_NAME'].$_SERVER['PHP_SELF'];
$erro = 0;
$mensagem = '';
$log = "xxx";
$pas = "xxx";
$encerra = ( isset($_POST['logout']) ) ? $_POST['logout'] : $_GET['logout'];
if (!isset($_SESSION['s_login'])) {
   if (($usuario == $log) && ($senha == $pas)) {
      $_SESSION['s_login'] = $usuario;
   } else {
      if ((!$usuario) || (!$senha)) {
         $erro = 1;
      } else {
         $erro = 2;
      }
   }
} else {
   if ($encerra==1) {
      session_unset();
      session_destroy();
      $erro = 3;
   }
}
if ($erro!=0) { 
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html; charset=ISO-8859-1"
http-equiv="content-type">
  <title>Login para a área restrita</title>
<style>
  #Centralizar {
   position: absolute;
   width: auto;
   height: auto;
   left: 30%;
   top:30%;
   margin-left: -250px;
   margin-top: -68px;
  }
</style>
</head>
<body>
<div id="Centralizar">

<table style="text-align: left; width: 800px; height: 236px;" border="1"
cellpadding="2" cellspacing="2">
  <tbody>
    <tr>
      <td style="width: 55%; text-align: center;"><img
style="width: 228px; height: 228px;" alt="" src="login.png"></td>
      <td style="width: 75%;">
      <div style="text-align: center;">
      <?php
         if ($erro==2) {
      ?>
       Senha ou usu&aacute;rio inv&aacute;lido!!!
      <?php
         } elseif ($erro==3) {
      ?>
       Logout realizado com sucesso!!!
      <?php
         }
      ?>
      </div>
      <form method="post" action="<?php echo $url; ?>">&nbsp; Usu&aacute;rio:
&nbsp;<input size="60" name="usuario" id="usuario"><br>
        <br>
&nbsp; &nbsp; Senha: &nbsp;<input size="50" name="senha" id="senha"
type="password"><br>
        <br>
        <div style="text-align: center;"><input name="Submit"
value="Entrar" type="submit"><input type="button" value="Voltar" onClick="location.href='../';">
        </div>
      </form>
      </td>
    </tr>
  </tbody>
</table>
</div>
<br>
</body>
</html>
<?php
}
?>


Estou precisando fazer uma nova aplicação, com a mesma ideia, mas com duas modificações:

1) tirar a exigência de usuário; basta a senha;

2) conferir a senha em uma tabela de uma base de dados MySQL: neste que postei acima, a senha é predefinida. Mas no que quero fazer agora eu quero que ele verifique se a senha digitada consta na tabela MySQL; se constar, ele autoriza a utilização do PHP, passando os dados do usuário constantes da tabela MySQL; se não constar, ele dá a informação de "senha errada".

Alguém poderia me ajudar a fazer isso?

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 13 Fev 2016 08:07
por Toledo
Amigo, fiz algumas alterações neste seu código:

<?php
$banco = "xxx";
$usuariohost = "xxx";
$senhahost = "xxx";
$hostname = "mysql.xxx.com.br";
$conn = mysql_connect($hostname,$usuariohost,$senhahost);
$sel=mysql_select_db($banco,$conn);
session_start();
$senha = ( isset($_POST['senha']) ) ? $_POST['senha'] : $_GET['senha'];
$url = 'http://'.$_SERVER['SERVER_NAME'].$_SERVER['PHP_SELF'];
$erro = 0;
$mensagem = '';
$encerra = ( isset($_POST['logout']) ) ? $_POST['logout'] : $_GET['logout'];
if (!isset($_SESSION['s_login'])) {

   $SQL = "SELECT *
           FROM senhas
           WHERE pword = '". $senha . "'";
   $result_id = @mysql_query($SQL) or die("Erro no banco de dados!");
   $total = @mysql_num_rows($result_id);

   if($total)
   {
      $_SESSION['s_login'] = $senha;
   } else {
      if ((!$senha)) {
         $erro = 1;
      } else {
         $erro = 2;
      }
   }
} else {
   if ($encerra==1) {
      session_unset();
      session_destroy();
      $erro = 3;
   }
}
if ($erro!=0) { 
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html; charset=ISO-8859-1"
http-equiv="content-type">
  <title>Login para a área restrita</title>
</head>
<body>
        <br>
        <br>
        <br>

<table style="text-align: left; width: 600px; height: 136px;" border="1"
cellpadding="2" cellspacing="2">
  <tbody>
    <tr>
      <td style="width: 25%; text-align: center;"><img
style="width: 128px; height: 128px;" alt="" src="login.png"></td>
      <td style="width: 75%;">
      <div style="text-align: center;">
      <?php
         if ($erro==2) {
      ?>
       Senha inv&aacute;lida!!!
      <?php
         } elseif ($erro==3) {
      ?>
       Logout realizado com sucesso!!!
      <?php
         }
      ?>
      </div>
      <form method="post" action="<?php echo $url; ?>">&nbsp; Senha:
&nbsp;<input size="20" name="senha" id="senha" type="password"><br>
        <br>
        <div style="text-align: left;"><input name="Submit"
value="Entrar" type="submit">
        <div style="text-align: right;"><input name="Submit"
value="Voltar" type="submit">
        </div>
      </form>
      </td>
    </tr>
  </tbody>
</table>
<br>
</body>
</html>
<?php
}
?>

Nas linhas 2 a 5 você tem que informar os dados do seu MySQL.
Na linha 17 você tem que informar o nome do arquivo de dados onde estão gravadas as senhas.
Na linha 18 altere "pword" pelo nome do campo onde a senha está gravada no arquivo de dados.

ATENÇÃO: eu não testei este código, mas acho que vai funcionar.

Abraços,

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 13 Fev 2016 21:36
por cjp
Funcionou perfeitamente, Toledo. Muito obrigado. Você é o cara!!!

Só tem um detalhe em que ainda preciso da tua ajuda: preciso passar para a aplicação principal os dados constantes da tabela USUARIO, ou pelo menos um deles (USUARIO).

Tentei fazer assim:

 $row=mysql_fetch_array($result_id);
echo $row["usuario"];


Mas não funcionou.

Como posso fazer isso?

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 14 Fev 2016 08:51
por Toledo
Amigo, faça o seguinte:

Procure por:
           if($total)
           {
              $_SESSION['s_login'] = $senha;
           } else {

e troque por:
           if($total)
           {
              $dados = @mysql_fetch_array($result_id);
              $_SESSION['s_login'] = $senha;
              $_SESSION["nome_usuario"] = $dados["usuario"];
           } else {

Depois deste código, quando você quiser mostrar o nome do usuário, faça o seguinte:
echo "Usuario: " . $_SESSION["nome_usuario"];


ATENÇÃO: se $_SESSION["nome_usuario"] for ser apresentado em outro arquivo PHP, diferente do PHP inicial, você tem que iniciar a sessão no início do arquivo:
<?php
session_start();
?>

Abraços,

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 16 Fev 2016 16:24
por cjp
Aqui não funcionou. Está mostrando o campo em branco. Testei até com outros campos também, mas sempre mostra em branco.

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 16 Fev 2016 16:34
por Toledo
Amigo, dê um exemplo do que você está fazendo.

Se for arquivos PHP diferentes, mostre o código dos dois arquivos.

Abraços,

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 16 Fev 2016 17:04
por cjp
O arquivo senha3.php está assim:

<?php
include("conexao.php");

conecta();

//$banco = "xxx";
//$usuariohost = "xxx";
//$senhahost = "xxx";
//$hostname = "mysql.xxx.com.br";
//$conn = mysql_connect($hostname,$usuariohost,$senhahost);
//$sel=mysql_select_db($banco,$conn);
session_start();
$senha = ( isset($_POST['senha']) ) ? $_POST['senha'] : $_GET['senha'];
$url = 'http://'.$_SERVER['SERVER_NAME'].$_SERVER['PHP_SELF'];
$erro = 0;
$mensagem = '';
$encerra = ( isset($_POST['logout']) ) ? $_POST['logout'] : $_GET['logout'];
if (!isset($_SESSION['s_login'])) {

$SQL = "SELECT *
     FROM usuario
     WHERE senha = '". $senha . "'";
$result_id = @mysql_query($SQL) or die("Erro no banco de dados!");
$total = @mysql_num_rows($result_id);
$row=mysql_fetch_array($result_id);
echo $row["usuario"];
if($total)
     {
       $dados = @mysql_fetch_array($result_id);
       $_SESSION['s_login'] = $senha;
       $_SESSION["nome_usuario"] = $dados["usuario"];
echo "<br>";      
echo "Usuario: " . $_SESSION["nome_usuario"];
echo "<br>";      
echo "Pastaftp: " . $dados["pastaftp"];
echo "<br>";      

     } else {
  if ((!$senha)) {
    $erro = 1;
   } else {
    $erro = 2;
   }
}
} else {
if ($encerra==1) {
   session_unset();
   session_destroy();
   $erro = 3;
}
}
if ($erro!=0) {
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="content-type">
<title>Login para a área restrita</title>
</head>
<body>
   

   

   

<table style="text-align: left; width: 600px; height: 136px;" border="1"
cellpadding="2" cellspacing="2">
<tbody>
  <tr>
   <td style="width: 25%; text-align: center;"><img
style="width: 128px; height: 128px;" alt="" src="login.png"></td>
   <td style="width: 75%;">
   <div style="text-align: center;">
   <?php
    if ($erro==2) {
   ?>
   Senha inv&aacute;lida; tente de novo!
   <?php
    } elseif ($erro==3) {
   ?>
   Logout realizado com sucesso!!!
   <?php
    }
   ?>
   </div>
   <form method="post" action="<?php echo $url; ?>"> Senha:
<input size="20" name="senha" id="senha" type="password">

   

    <div style="text-align: left;"><input name="Submit"
value="Entrar" type="submit">
    <div style="text-align: right;"><input name="Submit"
value="Voltar" type="submit">
    </div>
   </form>
   </td>
  </tr>
</tbody>
</table>

</body>
</html>
<?php
}
?>


O conexao.php, chamado por ele, está assim:

<?php
function conecta()
{
$banco = "xxx";
$usuario = "xxx";
$senha = "xxx";
$hostname = "xxx";

// No original constam os dados corretos da conexão

$conn = mysql_connect($hostname,$usuario,$senha);
if (!$conn)
      {echo "Não foi possível conectar ao banco MySQL principal nem secundário.
      "; exit;}

$sel=mysql_select_db($banco,$conn);
if (!sel)
   {
    echo "Não foi possível abrir o banco de dados";
    echo 'MySQL Error: ' . mysql_error();
    exit;
   }
}   

?>


O arquivo principal (processos.php), que ainda não fiz, por enquanto está só assim:

<?php
session_start();
require 'senha3.php';
if (!isset($_SESSION['s_login'])) {
return;
}
echo "Entrou";
echo "Usuario: " . $_SESSION["nome_usuario"];

?>

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 01 Mar 2016 21:00
por Toledo
Amigo, segue um exemplo em anexo.

Abraços,

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 02 Mar 2016 00:28
por cjp
Obrigado, meu amigo.

Mas ainda não funcionou. Não está dando nenhuma mensagem de erro, mas também não entra; só volta à tela do pedido de senha.

Outra coisa: vc tinha retirado o campo usuário da tela inicial da senha, como eu havia pedido, mas neste último, ela voltou.

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 02 Mar 2016 00:37
por Toledo
Amigo, testa neste endereço:

http://www.pctoledo.com.br/temp/inacio/senha3.php

Digite apenas a senha: cjp e depois clique no botão entrar.

cjp escreveu:vc tinha retirado o campo usuário da tela inicial da senha

É só retirar o campo novamente, como já tinha feito.

Abraços,

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 02 Mar 2016 16:50
por cjp
Realmente no teu site funcionou. Notei que estavam faltando nos arquivos que vc me mandou as linhas require('senha3.php') no processos.php e conecta() no senha3.php. Recoloquei, mas mesmo assim não funciona.

Por favor, teste em www.inaciocarvalho.com.br/php/processos.php. Qualquer que seja a senha digitada, ele sempre volta à tela inicial de pedido de usuário e senha, sem dar qualquer informação sobre senha errada.

Quanto ao usuário, não fui eu que tirei, foi vc, a meu pedido. Mas eu não sei exatamente como fazer para retirar.

Se for preciso, posso te passar em private os dados da minha conexão, inclusive a senha do FTP, para vc testar diretamente.

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 02 Mar 2016 18:47
por Toledo
cjp escreveu:Notei que estavam faltando nos arquivos que vc me mandou as linhas require('senha3.php') no processos.php e conecta() no senha3.php. Recoloquei, mas mesmo assim não funciona.

Amigo, da maneira como você fez não ia dar certo, então eu fiz várias alterações no seu código, que é o correto, então não altere os arquivos que postei.

cjp escreveu:Quanto ao usuário, não fui eu que tirei, foi vc, a meu pedido. Mas eu não sei exatamente como fazer para retirar.

Nestes casos o melhor a fazer é tentar entender o código que passei, se você procurar, nestes últimos arquivos PHP que postei, a palavra Usuário: vai encontrar o código que coloca o campo usuário no formulário, ai é só comparar com o código que você tinha antes, o que estiver a mais é só retirar.

Por exemplo... no código anterior estava assim:
      <form method="post" action="<?php echo $url; ?>">
        <br>
&nbsp; &nbsp; Senha: &nbsp;<input size="20" name="senha" id="senha"
type="password"><br>
        <br>
        <div style="text-align: left;"><input name="Submit"
value="Entrar" type="submit">
        <div style="text-align: right;"><input name="Submit"
value="Voltar" type="submit">
        </div>
      </form>

E neste último código que lhe enviei está assim:
      <form method="post" action="<?php echo $url; ?>">&nbsp; Usu&aacute;rio:
&nbsp;<input size="40" name="usuario" id="usuario"><br>
        <br>
&nbsp; &nbsp; Senha: &nbsp;<input size="20" name="senha" id="senha"
type="password"><br>
        <br>
        <div style="text-align: left;"><input name="Submit"
value="Entrar" type="submit">
        <div style="text-align: right;"><input name="Submit"
value="Voltar" type="submit">
        </div>
      </form>

Agora é só ver o que tem a mais... isto é voltar como estava antes.

cjp escreveu:Qualquer que seja a senha digitada, ele sempre volta à tela inicial de pedido de usuário e senha

Como lhe disse, a maneira correta é os arquivos PHP que lhe enviei por último... mudando apenas o arquivo Senha3.php´conforme segue:

Procure por:
 if ($encerra==1) {
  session_unset();
  session_destroy();
  $erro = 3;
}

Troque por:
 if ($encerra==1) {
  session_unset();
  session_destroy();
  $erro = 3;
} else {
  header("Location: processos.php");
  exit;
}

ATENÇÃO: o arquivo principal para entrar é o Senha3.php

Só por precaução, altere também o processos.php:
<?php
session_start();
if (!isset($_SESSION['s_login'])) {
header("Location: senha3.php");
exit;
}
echo "Entrou ";
echo "Usuario: " . $_SESSION['nome_usuario'];

?>

Abraços,

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 03 Mar 2016 00:39
por cjp
Quanto à retirada do pedido de usuário, está ok. Já entendi, fiz e deu certo. Tive receio de mexer no teu código com medo de estragá-lo. Mas agora já tá resolvido.

Quanto ao resto, não sei se te entendi bem. Mas restaurei os 3 arquivos que vc havia me mandado no arquivo compactado acima e alterei apenas a parte referida acima (pedido de usuário), o que vc mandou alterar e os dados da conexão. Mas continua da mesma forma, não está funcionando, volta . Veja lá se eu fiz algo errado, por favor.

Alterei o nome do arquivo conexao.php para conexao2.php, e alterei também a chamada a ele no senha3.php, porque eu uso esse arquivo conexao.php em todos os outros meus phps, e a alteração que vc fez impediu o uso de todos os demais.

Por fim, apenas para eu entender: vc disse que é pra chamar pelo senha3.php. Mas, pelo que eu tinha entendido do arquivo que vc tinha feito antes (protege.php), que eu postei no início, eu chamava (e ainda chamo) o arquivo principal, sendo que este é que chama o protege.php. Não é assim?

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 03 Mar 2016 08:48
por Toledo
Amigo, cada servidor de hospedagem tem a sua configuração própria, podendo ser diferente de outros servidores. Então vamos voltar um pouco para trás, pois já passamos por esta situação:
http://www.pctoledo.com.br/forum/viewtopic.php?f=28&t=13321&start=45#p84198

cjp escreveu: pelo que eu tinha entendido do arquivo que vc tinha feito antes (protege.php), que eu postei no início, eu chamava (e ainda chamo) o arquivo principal, sendo que este é que chama o protege.php. Não é assim?

Os PHP que montei agora não me preocupei com os outros PHP que você já tem ai, foi apenas para exemplificar esta nova dúvida sua e simplesmente alterando os códigos e arquivos que você mesmo postou. Mas não se preocupe com isto, com a última alteração que pedi para você fazer no arquivo processos.php não importa se você chamar primeiro o arquivo senha3.php ou processos.php. O correto é chamar senha3.php, mas se você chamar processos.php e ainda não informou a senha, o senha3.php é chamado automaticamente.

Abraços,

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 04 Mar 2016 01:36
por cjp
De fato, agora está entrando, com a senha correta. Mas ainda não está passando o usuário da tabela.

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 04 Mar 2016 08:35
por Toledo
cjp escreveu:Mas ainda não está passando o usuário da tabela

Bom, no meu site está funcionando certinho, como você pode ver no link que passei em uma das minhas mensagens, então não sei dizer o que acontece no seu site.

Abraços,

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 09 Mar 2016 00:56
por cjp
Será que isso seria realmente problema no site, Toledo?

Para tirarmos a prova, vc poderia colocar no teu site o mesmo arquivo exatamente que está no meu?

Tentei testar no próprio arquivo senha3.php da seguinte forma:

   if($total) {
    $dados = @mysql_fetch_array($result_id);
    $usuario = $dados["usuario"];
echo $usuario;   


Note que apenas acresci a última linha (echo $usuario;) para ver se aí constava os dados da tabela. Mas creio que ele chama diretamente processos.php, não aparece essa linha.

Eu creio que o arquivo senha3.php esteja correto, pois, se digito senha errada, ele informa. E se digito senha que existe na tabela, ele passa ao arquivo processos.php.

Creio que o problema esteja apenas na transferência do dado para o processos.php. É realmente desta forma que se faz isso:

    $_SESSION['nome_usuario'] = $usuario;


E no processos.php é só assim mesmo:

echo "Usuario: " . $_SESSION['nome_usuario'];

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 09 Mar 2016 09:12
por Toledo
cjp escreveu:Para tirarmos a prova, vc poderia colocar no teu site o mesmo arquivo exatamente que está no meu?

Bom, se você usou os últimos arquivos PHP que anexei neste tópico, então são os mesmos que estão no meu site, apenas retirei o campo de usuário e as alterações que fizemos nas mensagens anteriores, com exceção do comandos $HTTP_POST_VARS e $HTTP_GET_VARS que no seu site tem que ser $_POST e $_GET.

cjp escreveu:Note que apenas acresci a última linha (echo $usuario;) para ver se aí constava os dados da tabela. Mas creio que ele chama diretamente processos.php, não aparece essa linha.

Amigo, todo código PHP é executado dentro do SERVIDOR, depois de todo código lido é gerado o HTML que é enviado para o seu navegador. Então como depois do (echo $usuario;) é chamado o arquivo processos.php, isto acaba "apagando" o que o (echo $usuario;) apresentou.

Tente colocar o comando exit; uma linha depois de (echo $usuario;), assim o arquivo processos.php não será chamado e você poderá ver o que é apresentado.
$usuario = $dados["usuario"];

Atenção: no comando acima está pegando o conteúdo do campo "usuario" no banco de dados, então na sua tabela de senhas tem que ter este campo com este nome.

Abraços,

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 09 Mar 2016 11:06
por cjp
Consegui fazer o teste. E o usuário já está em branco no senha3.php. A tabela da base tem o campo usuario.

Então, será razoável crer que o problema está neste trecho:

   $result_id = @mysql_query($SQL) or die("Erro no banco de dados!");
   $total = @mysql_num_rows($result_id);
   if($total) {
    $dados = @mysql_fetch_array($result_id);
    $usuario = $dados["usuario"];


Conferir $result_id, está retornando Resource id#4 (não sei o que é isso).

Conferi $total, está retornando 1 (creio que esteja certo, pois tem um campo da tabela com a senha digitada).

Conferi $dados, retorna Array.

Não consigo imaginar onde poderia estar o erro.

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 09 Mar 2016 11:18
por Toledo
Amigo, tente retirar o @ que está nos comandos mysql_query(), mysql_num_rows() e mysql_fetch_array().

Obs.: é bom anotar estas alterações que são próprias do seu servidor, para evitar ocorrer o mesmo problema em exemplos de códigos futuros.

Abraços,

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 09 Mar 2016 11:47
por cjp
Tirei, mas ainda não resolveu.

Vou anotar sim.

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 09 Mar 2016 11:53
por Toledo
Amigo, compactar os arquivos PHP que você está testando ai e anexar aqui neste tópico... para que eu possa fazer um teste no meu servidor.

Abraços,

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 09 Mar 2016 12:01
por cjp
Aí vai.

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 09 Mar 2016 12:44
por Toledo
Amigo, faz um teste:

http://www.pctoledo.com.br/temp/inacio/senha3.php
senhas: cjp - Inacio / xxx - Toledo ou aaa - Roberto Carlos

No arquivo senha3.php retirei as linhas de echo que você colocou para ver o conteúdo dos comandos, e no link abaixo retirei o echo $usuario; e chama então o arquivo processos.php:

http://www.pctoledo.com.br/temp/inacio/senha3x.php

Atenção: para testar as senhas acima, entre uma senha e outra você tem que fazer logoff da sessão, então antes de digitar a senha entre no link:

http://www.pctoledo.com.br/temp/inacio/senha3.php?logout=1

Abraços,

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 09 Mar 2016 12:54
por cjp
Perfeito, no teu site funcionou perfeitamente.

Vc fez mais alguma alteração no arquivo?

O que eu preciso fazer para funcionar no meu?

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 09 Mar 2016 13:22
por Toledo
cjp escreveu:Vc fez mais alguma alteração no arquivo?

Só alterei os dados do arquivo conexao.php e retirei os echo que você colocou no arquivo senha3.php.

cjp escreveu:O que eu preciso fazer para funcionar no meu?

Não sei dizer... o melhor a fazer é entrar em contato com o suporte técnico do seu servidor, pois estes testes provou que o problema não está no código PHP.

Abraços,

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 10 Mar 2016 01:21
por cjp
Toledo,

O pessoal do suporte do meu provedor informa que não há problema algum no provedor e eles não se responsabilizam pelos códigos dos clientes.

Estranho o fato de que todos os demais códigos em PHP que tenho no mesmo provedor funcionam perfeitamente. Só este não está funcionando.

Testei o mesmo código com outro provedor, que na verdade é o meu banco de dados localhost colocado na internet com dynu. Neste, da mesma forma, todos os demais códigos funcionam, menos este.

Será que existe algum outro jeito de resolver isso?

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 10 Mar 2016 10:38
por Toledo
cjp escreveu:O pessoal do suporte do meu provedor informa que não há problema algum no provedor e eles não se responsabilizam pelos códigos dos clientes.

Algum problema tem sim.... veja este outro teste em um servidor de PHP gratuito:

http://inaciocjp.890m.com/inacio/senha3.php

http://inaciocjp.890m.com/inacio/senha3x.php

http://inaciocjp.890m.com/inacio/senha3.php?logout=1

As senhas para teste são as mesmas: cjp, xxx e aaa

cjp escreveu:Será que existe algum outro jeito de resolver isso?

Trocar de servidor.

Abraços,

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 10 Mar 2016 10:59
por Toledo

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 17 Mar 2016 00:39
por cjp
Você poderia me passar os dados desses servidores PHP gratuitos que vc usou para eu fazer um teste?

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 17 Mar 2016 08:25
por Toledo
Enviei por MP.

Abraços,

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 25 Mar 2016 19:02
por cjp
Estou lidando com o provedor para resolver esta questão.

Agora eles querem saber qual a versão do PHP eu preciso usar na pasta onde está esse php. Estranho o fato de que nessa mesma pasta tem vários outros PHPs que funcionam sem problema.

Qual versão devo falar?

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 25 Mar 2016 20:08
por Toledo
Amigo, o código abaixo vai mostrar qual a versão do PHP:
<?php
phpinfo();
?>

Segue abaixo os links para ver a versão do PHP no meu servidor e dos outros servidores que fiz teste:

http://www.pctoledo.com.br/temp/versao.php

http://inaciocjp.890m.com/inacio/versao.php

http://inaciocjp.gratisphphost.info/inacio/versao.php

Abraços,

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 25 Mar 2016 20:20
por cjp
Coloquei o phpinfo() em um php meu e retornou a versão 5.5.23. Significa que esta é a versão do php do meu provedor?

No teu site está 5.2.17, né?

Nos outros está 5.4.41 e 5.5.32.

Ainda não sei qual versão informar pra eles.

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 25 Mar 2016 20:28
por Toledo
cjp escreveu:Significa que esta é a versão do php do meu provedor?

Sim, exatamente isto, mas acho que não é a versão do PHP que está no seu servidor que eles querem, pois como administradores do servidor, eles já devem saber a versão.

Acho que eles querem a versão do PHP dos outros servidores que você fez teste, então o melhor a fazer é enviar os links que passei na minha mensagem anterior, assim além da versão do PHP eles poderão ver outros detalhes da configuração do PHP em cada servidor.

Abraços,

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 09 Abr 2016 01:35
por cjp
Não dá pra acreditar, mas eles resolveram. Veja:

Isso ocorre porque o nome da tabela está em maiúsculo no mysql e você tenha escrito em minúsculo no php:

$usuario = $dados["USUARIO"];

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 21 Abr 2016 13:01
por rochinha
Amiguinhos,

Isso ocorre porque o nome da tabela está em maiúsculo no mysql e você tenha escrito em minúsculo no php:

Simples assim.

Isto é algo inerente ao S.O. da hospedagem, Linux, não tendo relação com o PHP e etc e nos causando este transtorno.

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 23 Abr 2018 15:32
por gilbertosilverio
Ola Amigos,

Sempre baixei na ABCFARMA os arquivos em DBF para atualizar nossos PMC aqui na farmacia, ocorre agora que a ABCFARMA somente disponibiliza via web server, alguem poderia me ensinar como fazer esta importação via PHP.

O codigo de exemplo deles e esse:

<?php
                        $url = 'https://webserviceabcfarma.org.br/webservice/';
                        $ch = curl_init($url);
                        curl_setopt($ch, CURLOPT_POST, 1);
                        curl_setopt($ch, CURLOPT_POSTFIELDS,
                            http_build_query(
                                array(
                                    'cnpj_cpf' => 'cnpj/cpf do associado',
                                    'cnpj_sh' => 'cnpj da software house',
                                    'senha' => 'senha do associado no portal'
                                    'pagina' => 'numero da pagina [default=1]'
                                )
                            )
                        );
                        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

                        $response = curl_exec($ch);
                        curl_close($ch);
                        ?>



Procurei aqui no forum, achei muita coisa, mais como sou orfão de pai e mãe nesta de web server, não sei nem por onde começar.

E possível importar estes dados direto do HB34? Se sim alguém poderia me ajudar.

Agradeço.

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 24 Abr 2018 02:51
por rochinha
Amiguinhos,

gilbertosilverio
Você mudou o foco. Para a sua dúvida por ser relacionada a uma característica diferente dentro do mesmo âmbito necessitaria a abertura de outro tópico.

Siga para Baixar tabela ABCFarma via webservice disponibilizado

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 24 Abr 2018 05:53
por gilbertosilverio
Bom dia Rochinha,

Me desculpe por te posta aqui, e que esta pesquisando uma maneira de como fazer, quando vi ja tinha subido a pergunta neste tópico, pretendida criar um novo tópico com fiz.

Por favor, se possível, remova.

Muito obrigado pela ajuda.

PHP: tela inicial com senha conferida em MySQL

MensagemEnviado: 25 Abr 2018 00:59
por rochinha
Amiguinhos,

gilbertosilverio
Não se preocupe, nem fique chateado. É só para mantermos o foco. Com o novo tópico que abri dá pra continuar o seu atendimento.