Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá pessoal, estou com 2 pequenos problemas...
o seguinte:
tenho esse código:
f(isset($_SESSION['Username']) && isset($_SESSION['Password']))
{
$Sesion = "SELECT * FROM users WHERE username = '". $_SESSION['Username'] ."' AND password = '". md5($_SESSION['Password']) ."'";
$resultado = mysqli_query($mysqli,$Sesion);
if(mysqli_num_rows($resultado) > 0)
{
$myrow = mysqli_fetch_assoc($resultado);
define("Loged", TRUE);
}
}
else
{
define("Loged", FALSE);
}
após isso tenho esse código aqui:
$sq_ban = "SELECT * FROM bans WHERE value = '". $myrow['username'] ."' OR value = '". $myrow['ip_last'] ."'";
mas o php está me retornando:
Undefined variable: myrow
e tenho mais um probleminha
tenho a função:
function onlines(){
$sql = "SELECT * FROM users WHERE online = '1'";
$onlines = mysqli_query($mysqli,$sql);
$rowcount=mysqli_num_rows($onlines);
printf("%d Usuários conectados\n",$rowcount);
}
mas a função não está recebendo a conexão -> "$mysqli"
alguém poderia me explicar aonde está o erro por gentileza nesses 2 casos?
att.
Obrigado desde já!
No caso abaixo, você está tentando acessar uma variavel que simplesmente não existe no escopo daquela função.
Pois a função naquele momento tem escopo 'local', se você quer acessar uma variável de fora tem algumas opções.
Usar o global
Passar como parâmetro Leitura de apoio:http://php.net/manual/pt_BR/language.variables.scope.php
Sobre o Undefined, meu palpite seria alguma das opções abaixo:
1 - a consulta $Sesion não está retornando nada, ou nesse contexto seu de 'logo' abaixo se perde.
2- Case sensitive no banco?
De qualquer modo.
Execute um antes do "$sq_ban = "SELEC...."
var_dump($myrow);
E veja oq tem dentro :D
Abraço bons estudos
@dicaExtra:
Melhore a segurança do seu código utilizando uma 'sanitização' com o bind-param do Mysqli:
http://php.net/manual/pt_BR/mysqli-stmt.bind-param.php
Pois nunca é uma boa ideia passar direito parâmetros assim: