Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Notice: Undefined index: login in C:\Program Files (x86)\EasyPHP-DevServer-13.1VC9\data\localweb\phpteste1\login.php
on line 18
Notice: Undefined index: senhain C:\Program Files (x86)\EasyPHP-DevServer-13.1VC9\data\localweb\phpteste1\login.php
on line 19
form:
<form name="login" method="post" action="login.php">
<table id="login_table">
<tr>
<td>Email:</td>
<td><input type="text" name="login" id="id_login" class="txt" maxlength="25" /></td>
</tr>
<tr>
<td>Senha:</td>
<td><input type="password" name="senha" id="id_senha" class="txt" maxlength="20" /></td>
</tr>
<tr>
<td colspan="2"><input type="submit" value="Entrar" class="btn" id="btnEntrar" name="btnEntrar">
<a href="pagina-do-cliente-cad.php"><input type="button" value="Cadastre-se" class="btn" id="btnCad" name="btnCad"></a></td>
</tr>
</table>
</form>
login.php:
<?php
class Sql{
public $host, $user, $pass, $query;
public function __construct(){
mysql_connect($this -> host = 'localhost', $this -> user = 'root', $this -> pass = '1234' );
mysql_select_db('cadastro');
}
public function query($qr){
$this -> query = mysql_query($qr);
return $this -> query;
}
public function retornar(){
return $this -> query;
}
}
$sql = new sql;
$login = $_POST['login'];
$pwd = $_POST['senha'];
$selecionar = $sql -> query("SELECT * FROM USUARIO WHERE LOGIN = '$login' AND SENHA = '$pwd'");
$c = mysql_num_rows($selecionar);
if($c){
echo "<meta http-equiv='refresh' content='0, url='pagina-do-cliente-interface.php'>";
echo 'logado'; echo "<script>alert('Email ou senha incorretos.'); history.back();</script>";
echo 'deslogado';
}
?>>
Sempre use isset(), como explicado neste link
E preste atenção aos nomes dos campos. O "name" é "senha" e você parece estar usando "senhain" no php
Não sei se fiz certo, mas agora simplesmente aparece "Email ou senha incorretos" .
<?php
class Sql{
public $host, $user, $pass, $query;
public function __construct(){
mysql_connect($this -> host = 'localhost', $this -> user = 'root', $this -> pass = '1234' );
mysql_select_db('cadastro');
}
public function query($qr){
$this -> query = mysql_query($qr);
return $this -> query;
}
public function retornar(){
return $this -> query;
}
}
$sql = new sql;
if ( isset( $_GET['login'] ) ){
$login = $_GET['login'];
} $login = 'valor padrão';
}
if ( isset( $_GET['senha'] ) ){
$pwd = $_GET['senha'];
} $pwd = 'valor padrão';
}
//$login = $_POST['login'];
//$pwd = $_POST['senha'];
$selecionar = $sql -> query("SELECT * FROM USUARIO WHERE LOGIN = '$login' AND SENHA = '$pwd'");
$c = mysql_num_rows($selecionar);
if($c){
echo "<meta http-equiv='refresh' content='0, url='pagina-do-cliente-interface.php'>";
echo 'logado'; echo "<script>alert('Email ou senha incorretos.'); history.back();</script>";
echo 'deslogado';
}
?>Você está enviando as variáveis através de POST,e está recebendo através de GET.
<?php
class Sql{
public $host, $user, $pass, $query;
public function __construct(){
mysql_connect($this -> host = 'localhost', $this -> user = 'root', $this -> pass = '1234' );
mysql_select_db('cadastro');
}
public function query($qr){
$this -> query = mysql_query($qr);
return $this -> query;
}
public function retornar(){
return $this -> query;
}
}
$sql = new sql;
if ( isset( $_POST['login'] ) ){
$login = $_POST['login'];
} $login = 'valor padrão';
}
if ( isset( $_POST['senha'] ) ){
$pwd = $_POST['senha'];
} $pwd = 'valor padrão';
}
//$login = $_POST['login'];
//$pwd = $_POST['senha'];
$selecionar = $sql -> query("SELECT * FROM USUARIO WHERE LOGIN = '$login' AND SENHA = '$pwd'");
$c = mysql_num_rows($selecionar);
if($c){
echo "<meta http-equiv='refresh' content='0, url='pagina-do-cliente-interface.php'>";
echo 'logado'; echo "<script>alert('Email ou senha incorretos.'); history.back();</script>";
echo 'deslogado';
}
?>Lembrando que funções mysql_* estão obsoletas desde o PHP 5.5 e já foram removidas no PHP 7. Prefira usar MySQLi ou PDO. Veja mais aqui: http://rberaldo.com.br/mysql-obsoleto-php/
Já que está construindo uma classe Sql, use PDO ou MySQLi orientado a objeto, para seguir o mesmo padrão
>
Você está enviando as variáveis através de POST,e está recebendo através de GET.
<?php
class Sql{
public $host, $user, $pass, $query;
public function __construct(){
mysql_connect($this -> host = 'localhost', $this -> user = 'root', $this -> pass = '1234' );
mysql_select_db('cadastro');
}
public function query($qr){
$this -> query = mysql_query($qr);
return $this -> query;
}
public function retornar(){
return $this -> query;
}
}
$sql = new sql;
if ( isset( $_POST['login'] ) ){
$login = $_POST['login'];
} $login = 'valor padrão';
}
if ( isset( $_POST['senha'] ) ){
$pwd = $_POST['senha'];
} $pwd = 'valor padrão';
}
//$login = $_POST['login'];
//$pwd = $_POST['senha'];
$selecionar = $sql -> query("SELECT * FROM USUARIO WHERE LOGIN = '$login' AND SENHA = '$pwd'");
$c = mysql_num_rows($selecionar);
if($c){
echo "<meta http-equiv='refresh' content='0, url='pagina-do-cliente-interface.php'>";
echo 'logado'; echo "<script>alert('Email ou senha incorretos.'); history.back();</script>";
echo 'deslogado';
}
?>
>
Você está enviando as variáveis através de POST,e está recebendo através de GET.
<?php
class Sql{
public $host, $user, $pass, $query;
public function __construct(){
mysql_connect($this -> host = 'localhost', $this -> user = 'root', $this -> pass = '1234' );
mysql_select_db('cadastro');
}
public function query($qr){
$this -> query = mysql_query($qr);
return $this -> query;
}
public function retornar(){
return $this -> query;
}
}
$sql = new sql;
if ( isset( $_POST['login'] ) ){
$login = $_POST['login'];
} $login = 'valor padrão';
}
if ( isset( $_POST['senha'] ) ){
$pwd = $_POST['senha'];
} $pwd = 'valor padrão';
}
//$login = $_POST['login'];
//$pwd = $_POST['senha'];
$selecionar = $sql -> query("SELECT * FROM USUARIO WHERE LOGIN = '$login' AND SENHA = '$pwd'");
$c = mysql_num_rows($selecionar);
if($c){
echo "<meta http-equiv='refresh' content='0, url='pagina-do-cliente-interface.php'>";
echo 'logado'; echo "<script>alert('Email ou senha incorretos.'); history.back();</script>";
echo 'deslogado';
}
?>
Cara sou bem novo no php, podia me explicar?
>
Lembrando que funções mysql_* estão obsoletas desde o PHP 5.5 e já foram removidas no PHP 7. Prefira usar MySQLi ou PDO. Veja mais aqui: http://rberaldo.com.br/mysql-obsoleto-php/
Já que está construindo uma classe Sql, use PDO ou MySQLi orientado a objeto, para seguir o mesmo padrão
Cara sou praticamente em php, poderia me passar um link me explicando um pouco sobre o PDO e o MySQLi?
Sempre use isset(), como explicado neste link
E preste atenção aos nomes dos campos. O "name" é "senha" e você parece estar usando "senhain" no php