Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Zmienna sie nie wyswietla
Forum PHP.pl > Forum > PHP
Blaster
[php:1:9d16f90eb5]<?php
include ("errors.php") ;
$con=mysql_connect("localhost", "blastereq1", "");
mysql_select_db("blastereq1_uk_db", $con);
$sprawdz="SELECT * FROM gracze WHERE login ='$login'";
$sprawdza=mysql_query($sprawdz);
$r = mysql_fetch_array($sprawdza);
$loginaa=$r["login"];
$hasloaa=$r["Haslo"];
if ($login==$loginaa) { haslo($haslo, $hasloaa) ;}
else { bladlogin() ;}

function haslo($haslo, $hasloaa){
if ($haslo==$hasloaa) { echo "$loginaa" ;} // $login tez nie dziala
else { bladhaslo() ;} }
?>[/php:1:9d16f90eb5]
Nie widac zadnego bledu, a { echo $loginaa ;} zachowuje sie tak jakby tego nie bylo. Co robic smile.gif ?
kszychu
Co robi druga linia?
-----------------------
usunięto drugą linię, pytanie nieaktualne.
scanner
Znowu register_globals ?
Blaster
Nie nie chodzi o register globals smile.gif
kszychu
A skąd pobierasz $login? może z nim jest coś nie tak?
BzikOS
Sprawdź wielkośc liter w nazwie tabeli. Haslo != haslo.
A co do wyświetlania $loginaa, to prawidłowo że się nie wyswietla, poniewaz zmienna ta nie jest widoczna wewnatrz funkcji haslo(). Aby była widoczna musisz ją zglobalizować.
Blaster
Kod
<form name="form2" method="POST" action="index.php?func=log">

<input type="text" size="12" name="login">

<input type="password" size="12" name="haslo">

<input type=submit value=Zaloguj>

Jakby to powiedziec, ale po wykonaniu submit
[php:1:fc82ca2f48]<?php
$loginaa=$r["login"];
$hasloaa=$r["Haslo"];
if ($login==$loginaa) { haslo($haslo, $hasloaa) ;}
else { bladlogin() ;}

function haslo($haslo, $hasloaa){
if ($haslo==$hasloaa) { echo "$loginaa" ;} // $login tez nie dziala
else { bladhaslo() ;} }
?>[/php:1:fc82ca2f48]
Wszystko wpisane w { echo "$loginaa" ;} wykonuje się, a $loginaa=$r["login"]; ani $login nie :| . ( Wykonuje sie oczywiscie dopiero po wpisaniu odpowiedniego hasla i loginu z tabeli )
cichy
zamien
$r['login'] na $_POST['login']

I analogicznie hasło...
PS. nie wiem skad Ci przyszło do głowy żeby stosować tablice $r :|

Pozdro
Blaster
[php:1:a8a2245a19]<?php
$sprawdz="SELECT * FROM gracze WHERE login ='$login'";
$sprawdza=mysql_query($sprawdz);
$r = mysql_fetch_array($sprawdza);
?>[/php:1:a8a2245a19]
poza tym $_POST['login'] tez nie dziala, bo probowalem juz smile.gif

EDIT :
@ BzikOS
Thx zapomnialem zglobalizowac smile.gif (Ślepota OR głupota nie zna granic 8O )
prawidlowy kod wyglada tak :
[php:1:a8a2245a19]<?php
if ($login==$loginaa) { haslo($haslo, $hasloaa, $loginaa) ;}
else { bladlogin() ;}

function haslo($haslo, $hasloaa, $loginaa){
if ($haslo==$hasloaa) { echo " $loginaa " ;}
else { bladhaslo() ;} }
?>[/php:1:a8a2245a19]
BzikOS
Chodziło mi raczej o globalizację zmiennej wewnątrz funkcji, a nie o przekazywanie jej jako argument. Czyli:

[php:1:fab68081d3]<?php
function haslo($haslo, $hasloaa)
{
global $loginaa;
....
}
?>[/php:1:fab68081d3]
Blaster
W sumie to oba rozwiazania dzialaja, wiec i tak jest ok <piwo> smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.